2017-03-17 7 views

答えて

1

C++は、特にCPUアーキテクチャ向けにコンパイルされたコンパイル言語です。アプリケーションを実行するJVMがバイナリを特別に実行できるようにする方法はありません。これは、セキュリティ上の大きなリスクとなるため、アプリケーション内から外部コードを実行することになるからです。

AndroidとiOSでさえ、ダウンロードしたコードを実行できません。私が言ったように、不正なハッカーに向かって巨大な扉を開け、悪用を実行するだろうから。 LuaとJavaScriptの場合、インタプリタに自己完結型であり、セキュリティ上のリークを防ぐことができるため、これは異なります。

+3

OPは* NOT *これを行うべきであると私は同意しますが、あなたの答えは実際には真ではありません。 Javaはネイティブコードをロードし、JNIを介してアクセスすることができます。 Androidにもこのインターフェースがあります。 – ephemient

+0

@ephemientはい正しいですが、ネイティブコードをAPKの内部に置かなければならず、単にダウンロードして実行することはできません。 –

+3

できます。完全なパスを使用して内部ストレージと 'System.loadLibrary()'に書き出します。 – ephemient

関連する問題