我在我的设备上安装apk时有问题。
adb install <.apk>
使用上述命令将返回以下结果:
5413 KB/s (99747 bytes in 0.017s)
pkg: /data/local/tmp/AppClient.TestOnly.App3.apk
Failure [INSTALL_FAILED_TEST_ONLY]
你知道是什么导致了这个问题吗?
它肯定能识别设备。会不会是apk出了问题?
我在我的设备上安装apk时有问题。
adb install <.apk>
使用上述命令将返回以下结果:
5413 KB/s (99747 bytes in 0.017s)
pkg: /data/local/tmp/AppClient.TestOnly.App3.apk
Failure [INSTALL_FAILED_TEST_ONLY]
你知道是什么导致了这个问题吗?
它肯定能识别设备。会不会是apk出了问题?
当前回答
以我为例,使用Android Studio 4.0解决了这个问题;
添加到gradle。属性的文件;
android.injected.testOnly=false
其他回答
将这一行添加到你的gradle.properties中
android.injected.testOnly=false
对我来说,它已经工作了,执行gradle任务“清洁”(在:app下,在gradle窗格,通常位于右侧),并再次运行项目。
看起来你需要修改你的AndroidManifest.xml 将android:testOnly="true"更改为android:testOnly="false"或删除此属性。
如果你想保持android:testOnly属性为true,你可以使用pm install命令和-t选项,但你可能需要先将apk推到设备。
$ adb push bin/hello.apk /tmp/
5210 KB/s (825660 bytes in 0.154s)
$ adb shell pm install /tmp/hello.apk
pkg: /tmp/hello.apk
Failure [INSTALL_FAILED_TEST_ONLY]
$ adb shell pm install -t /tmp/hello.apk
pkg: /tmp/hello.apk
Success
我能够重现相同的问题,上面解决了它。
如果你的APK在设备外部(在你的桌面上),那么下面的命令可以做到:
$ adb install -t hello.apk
Android studio 3.0只生成测试APK。
我已经通过添加“android:testOnly”属性到android manifest的标签解决了这个问题。
<application
.....
android:testOnly="false"
android:theme="@style/AppTheme">
然后通过Android studio3.0菜单生成APK:Build—>Build APK(s)。
更多信息: https://commonsware.com/blog/2017/10/31/android-studio-3p0-flag-test-only.html
如果你正在寻找一个不那么永久的解决方案,那么添加android.inject。testOnly=false到你的gradle。如果你不介意使用命令行,那么在安装之前执行以下两个命令即可:
rm -v **/build/**/AndroidManifest.xml
gradle build
Windows用户:从所有构建目录中删除所有AndroidManifest.xml。但不是从src目录,所以DEL /S不是最好的主意。