#javascript#cloud#cloud_os#cloud_storage#desktop#desktop_environment#dropbox#good_first_issue#gui#javascript#nas#open_source#operating_system#os#osjs#puter#remote_desktop#storage#web_desktop#web_os#webtop
Puter is a privacy-first personal cloud that lets you store files, apps, and games securely. You can access everything from anywhere at any time, making it very convenient. It's like a personal computer in the cloud, and you can use it on any device—Windows, Mac, Linux, or even your smartphone. Puter also helps you organize your work and entertainment by allowing multiple virtual desktops. This means you can keep different tasks separate but easily accessible, which helps you work more efficiently. Plus, it's open-source, so you can customize it to fit your needs.
https://github.com/HeyPuter/puter
🚀 Вышел стабильный JavaScript движок от Google для Android
Новая стабильная библиотека Jetpack JavaScript Engine позволит разработчикам выполнять JS код в изолированной и ограниченной среде.
class MainActivity : ComponentActivity() {
// Теперь nullable, без lateinit
private var jsSandbox: JavaScriptSandbox? = null
private var jsIsolate: JavaScriptIsolate? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
if (!JavaScriptSandbox.isSupported()) {
Log.e("JS", "JavaScriptSandbox не поддерживается")
return
}
lifecycleScope.launch {
// Создаём и сохраняем в nullable-поле
jsSandbox = JavaScriptSandbox
.createConnectedInstanceAsync(applicationContext)
.await()
jsIsolate = jsSandbox?.createIsolate()
// При выполнении гарантируем, что jsIsolate != null
val result: String = jsIsolate
?.evaluateJavaScriptAsync(JS_SCRIPT_SCRING)
?.await()
?: "Ошибка: isolate не инициализирован"
Log.d("JS", "Результат выполнения: $result")
}
}
override fun onDestroy() {
super.onDestroy()
// Закрываем только если не null
jsIsolate?.close()
jsSandbox?.close()
}
}
#jetpack#js