Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Android在C++;_C++_Java_Android_Assembly_Bytecode_Inline Assembly - Fatal编程技术网

C++ Android在C++;

C++ Android在C++;,c++,java,android,assembly,bytecode,inline-assembly,C++,Java,Android,Assembly,Bytecode,Inline Assembly,我很好奇是否有可能在Android上用Java运行字节码,就像在Android中使用内联汇编一样。在C++中,我可以运行程序集并将结果应用到程序中。 我不想在运行时注入字节码,而是在实际编译apk之前 // example of MSVC-syntax inline-asm syntax; not actually doing anything useful. __asm { mov bl, 2 sub bl, 0 div bl ad

我很好奇是否有可能在Android上用Java运行字节码,就像在Android中使用内联汇编一样。在C++中,我可以运行程序集并将结果应用到程序中。 我不想在运行时注入字节码,而是在实际编译apk之前

// example of MSVC-syntax inline-asm syntax; not actually doing anything useful.
__asm { 
       mov bl, 2
       sub bl, 0
       div  bl 
       add   ax, 0
 }

没有办法在Java中嵌入内联程序集。Java,指定了语言,该规范不包括内联汇编。然而,Java代码最终被编译成dex文件


Android平台只看到dex文件,不关心它们是如何生成的。您可以使用smali等工具手动编写dex字节码。此外,此类自定义类可以与从Java或其他语言编译的类自由交互。但是请注意,Java语言比字节码更严格,非Java字节码不能保证支持Java语言中保证的不变量。

@Elliot Jasmin已经过时,问题是关于Android的。