Android即时应用程序 - 无法“运行未经验证的软件,运行任意本机代码”。仅限Instant Apps运行时

时间:2017-08-04 06:03:51

标签: android android-instant-apps

Android Instant Apps文档在受限制的功能部分中说明它不能:

  

Run unverified software, run arbitrary native code, or load code dynamically other than the code provided by the Instant Apps runtime 即可。

我不完全理解上述声明,但听起来我可能不接受任何第三方软件或 SDK/NDK 中提供的图书馆以外的任何本地库。

有人可以帮忙详细说明吗?

3 个答案:

答案 0 :(得分:6)

本声明:

  

Prepare your app > Restricted features

     

运行未验证的软件,运行任意本机代码或加载代码   动态不是Instant Apps运行时提供的代码。

指的是侧载的APK,库或代码,而不是打包在原始apk中。

未经验证的软件

  • 换句话说,只允许签名的apk及其内容。

任意本机代码

  • 一切都必须从你的apk运行或由框架提供。

动态加载代码

  • 例如使用DexClassLoader来检索尚未与apk一起打包的内容。

答案 1 :(得分:4)

您可以使用第三方库。例如,您可以做的是在运行时从服务器下载二进制文件并运行它。

答案 2 :(得分:0)

Google官方代表的一个非正式回答是,使用Instant Apps,与普通应用程序不同,没有技术方法可以运行下载的代码或动态加载类。对于普通应用,限制是用Play Store Developer Policy编写的,并且仅在Play商店通过标准安全监控程序强制执行。