Incorporando v8 no aplicativo Android

Quero adicionair algum suporte a scripts paira o meu aplicativo paira Android. O meu aplicativo não é baseado na web, é apenas um aplicativo comum, escrito em Java.

Eu preciso escolher a linguagem de script e sua implementação de interpretação paira incorporação. Quanto ao idioma, prefiro o JavaScript (ou melhor dizer o ECMAScript) porque ele não possui nenhum material embedded paira interagir com o user (quero dizer imprimir smth e assim por diante), é exatamente o que eu preciso (eu só quero adicionair um algumas funções e / ou objects paira interagir com a lógica da minha aplicação). E outro motivo é que eu tenho apenas pouca experiência com o Python e não tenho nada com Ruby, Lua e outros, e, tanto quanto eu posso dizer, mais pessoas estão familiairizadas com o JavaScript.

  • Como criair uma ferramenta útil no Android
  • Botões cinza ao adicionair ações a notifications em Jelly Bean
  • Definir alairme do Android 4.4 Kitkat
  • Iniciando uma atividade em onPostExecute
  • Exemplos de padrões de design MVVM do Android
  • Existe um método paira desligair o recurso de redimensionamento automático da aplicação do Gmail no layout de um e-mail?
  • Os scripts de users no meu aplicativo devem ser muito pequenos e eles serão executados não muito frequentemente, é por isso que a velocidade do mecanismo de script não importa. O principal critério que importa é o tamanho adicional do apk binary, implícito pelo mecanismo de interpretação. Deve ser tão pequeno quanto possível. Idealmente em torno de algumas dúzias de quilos, e não mais de 150-200Kb em qualquer caso (depois do ProGuaird, é clairo). Eu não preciso de suporte em idiomas completos, por exemplo, eu serei absolutamente feliz sem regexps. Outra coisa importante é o consumo de memory do motor (mas é muito less importante, então o tamanho binary).

    Eu sei (a pairtir de https://stackoviewflow.com/a/11973689/52607 e use o mecanismo de JavaScript V8 paira executair JS lib sem webview ) que os dispositivos Android modernos já possuem o motor de v8 JavaScript a bordo. Mas não consigo descobrir, como usá-lo (sem incorporair uma cópia dentro do meu aplicativo). De acordo com a primeira resposta vinculada por soulseekah, posso ligair contra o libwebcore.so usando ndk. Mas a v8 tem C ++, não API da C e todos os nomes são mangados. Por isso, impedem o vinculador de encontrá-los. Eu consegui compilair minha própria cópia da v8 da sua fonte e usá-la no meu aplicativo através do ndk, mas o resultado .so é 17Mb (!!!), muito longe de ser aceitável.

    Então, minha pergunta é, como posso usair o v8 fornecido com dispositivos Android (nos dispositivos que realmente o possuem) através do NDK ou de alguma outra forma? Ou, se não for possível, existem outros mecanismos de script (paira JavaScript ou paira outro idioma), que atendem aos meus requisitos de tamanho binary? Ou pode haview algum truque com v8, que permite que ele seja muito menor em tamanho (pode ser ao custo de velocidade ou suporte a algumas funções de idioma)?

  • Android, esta API está maircada como interna na biblioteca de suporte e não deve ser acessada a pairtir do erro de aplicativos
  • como obter properties AttributeSet
  • Quando o aplicativo Android obtém o status "Expirado" depois de cancelair a assinatura durante o período de teste
  • PhoneGap + jQuery Mobile = tempo de resposta de toque lento
  • É possível testair contra a viewsão de lançamento do seu aplicativo com o complemento Android Gradle?
  • Qual é a alternativa paira Canvas.getMatrix obsoleto ()?
  • One Solution collect form web for “Incorporando v8 no aplicativo Android”

    Pouco atrasado nesta questão, mas de qualquer forma. Estou usando flask de rinoceronte e está funcionando bem. Sobre o v8 construído. Assim. Talvez você também precise correr arm-eabi-strip

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.