Эффективный способ запустить без головы JavaScript в Android - PullRequest
0 голосов
/ 06 апреля 2020

Я хочу написать кроссплатформенный код бизнес-логики c в JS и запустить его в Интернете, Android и iOS. В Интернете я просто использую браузер JavaScript и iOS, , так как этот компонент не имеет интерфейса пользователя , использую JavsScriptCore (эта структура позволяет выполнять JavaScript без интерфейса пользователя и DOM).

Однако, похоже, что Android не имеет эквивалента JavaScriptCore. Я видел такие решения, как LiquidCore , которые приносят полный NodeJS env к Android, но я ищу решение, которое не добавит больше ~ 1-2 МБ к APK (и Мне не нужна сила NodeJS).

  • Есть ли в Android API-интерфейс бегуна более низкого уровня, который я пропустил? Теоретически должна быть возможность напрямую использовать V8, но она не раскрывается.

  • Имеет ли смысл использовать для этой цели скрытый (но всегда живой) WebView? Насколько тяжелы память и процессор, когда не используется какой-либо пользовательский интерфейс?

  • Должен ли я go с Rhino вместо этого? Rhino - зрелый, но относительно легкий JS интерпретатор, реализованный в Java (время выполнения составляет около 1 МБ).

Под «эффективным» здесь я подразумеваю решение, которое легко объем памяти, процессор и приложение.

...