смарт часов. То есть нужно сделать моб приложение которое рендерит картинку и отправляет ее на часы (а события с часов прокидывать в приложение). Хочется сделать так чтобы разные такие приложения для часов от разных разработчиков можно было легко скачивать в главном родительском приложении и запускать.
То есть родительское приложение берет на себя все взаимодействие с часами принимает события (тачи, датчики) и отправляет картинку (отрисованную дочерними приложениями). А дочерние приложения только отрисовывают картинку для часов. Конечно надо чтобы это все работало в фоновом режиме работы родительского приложения.
Можно ли как то использовать RN для такой цели? То есть собирать приложение так чтобы его можно было встраивать в родительское чисто для рендера картинки для часов.
Или может есть другие идеи что можно использовать, чтобы писать такие приложения на высокоуровневых языках (типа js) и встраивать в Android/Ios ?
это дичь. Нету смысла в тонком клиенте, потому что китай делает очень дешевые девайсы даже на андроиде. Ну и ни ios ни андроид не даст что-то рендерить в бекграунде.
Андроид все таки дорого и батарею жрет. Хочется писать приложения просто, на js например. Что значит не даст рендерить. Я же не 3д прошу. Создал битмап в памяти и рисуй в фоне кто тебе мешает?)
Я что не дорого? Поделки на esp32?
> Хочется писать приложения просто, на js например так это же не web. как вы думаете, каким образом устроено приложение на RN?
я догадываюсь что компилируется в нативный код, + под капотом js крутится чтобы логику компонентов обрабатывать. меня вот это обнадежило: https://docs.expo.dev/tutorial/screenshot/ если бы можно было скрыто отрисовывать какую то вьюху то уже неплохо
ну, в фоновом режиме возможности весьма ограничены или вы хотите скрины между 2мя устройствами перманентно кидать? это ж прям больно будет по просадкам батареи и прочему
да, скрины кидать, для передачи по БТ будет задействовано множество оптимизаций, например отправляется только дифф между кадрами + сжатие.
почти угадали. компилируется только то, что написано нативно. для js используется отдельная библиотека (jscore/hermes, в зависимости от настроек) все низкоуровневые операции (в т.ч. фоновые задачи и работа с bluetooth) так или иначе, даже если они вызываются из js, выполняются через нативный api ios / android (NativeModules в терминологии RN) со всеми ограничениями, описанными в документации соответствующих платформ. вам для вашей задачи точно нужна прослойка, потребляющая дополнительные ресурсы в т.ч. на обеспечение своей работы?
экран часов может ренедерится либо на моб телефоне либо на сервере, в том числе на серевере разработчика приложения (как навыки в алисе, если видели)
в любом случае, моя мысль в том, что, если вашу задачу можно реализовать нативно - дальше можно пробросить ручки для управления в js, придумать как оптимизировать, организовать переиспользуемую логику и т.д. если нативно это сделать нельзя - RN вам ничем не поможет, только время потратите
основное приложение не на RN. я думаю можно ли использовать RN для дочерних приложений, коотрые используюбтся только для отрисовки
можно, если все технически сложные места получится реализовать нативно, без использования RN к вопросу о “дочерних” (не очень правда понимаю как именно вы это видите, но всё же) - RN может быть и частью нативного приложения, посмотрите в документации. но кажется вам именно RN для них и не нужен, достаточно jscore/hermes и какой-то разделяемой логики для отрисовки, а основную работу по взаимодействию с устройствами реализовать нативно в основном приложении
да нужно чтото типа wasm
тогда стоит еще поискать информацию про использование jscore / v8 / hermes как самостоятельных инструментов под android/ios (что и в каком статусе сейчас находится) и поддержку wasm этими движками
Обсуждают сегодня