文章转自:为什么我把 Run 出来的 Apk 发给老板,却装不上!
一、testOnly 属性
Run 出来的 APK,会在 AndroidManifest.xml 文件中,增加 android:testOnly 属性,正是因为这个属性,阻止了我们使用正常方式安装 APK。
当你使用 adb install 安装 android:testOnly=“true” 的包时,输出的错误信息,明确的标记了无法安装一个 TEST_ONLY 的包。
Failed to install app-debug.apk: Failure [INSTALL_FAILED_TEST_ONLY: installPackageLI]
简单小结一下:
1、我们无法通过正常安装方式,安装一个带有 android:testOnly=“true” 的 Apk。
2、这个属性,是在 AS 3.0 中加入的。
二、是不是真的无法安装?
如果我们非要安装一个带有 testOnly 的 Apk,其实也是有办法的,否则 AS 又是如何将 Run 起来的包,安装到设备上的呢?
解决方法也很简单,只需要在 adb install 上,增加 -t 即可。
adb install -t debug.apk
或者运行前,在 gradle.properties 文件中,增加 android.injected.testOnly=false 即可。
android.injected.testOnly=false
然后这个 android:testOnly 属性就会消失。