我在我的设备上安装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工作室加载应用程序。当你这样做时,android会创建一个适合调试但不适合安装的应用程序。如果您尝试使用以下方法安装:
Adb install -r yourapk
你会收到一条信息,上面写着:
失败(INSTALL_FAILED_TEST_ONLY)
当这种情况发生时,您将需要通过首先清理构建来重新构建apk,然后选择build -> build apk。请看下图:
这个APK可以通过adb install命令或任何其他方法安装
希望这能有所帮助
大卫
其他回答
解决这个问题最简单的方法是在运行配置中添加'-t'选项(用于pm install),而不需要恢复到旧的gradle版本。
testOnly='false'没有任何影响。该错误是由alpha版本的gradle插件导致的,该插件使调试APK“仅用于测试目的”。-t选项允许安装这样的APK。在运行配置中设置它会像往常一样自动安装APK。
如文档中所述:
Android Studio在单击Run时自动添加此属性
所以,为了能够安装你的apk与adb安装<路径到apk文件>你需要组装从终端:./gradlew assembleDebug和adb安装。或者只运行./gradlew installDebug在设备上同时构建和安装。
在我的情况下,这个错误是在不稳定的gradle版本。只需使用稳定版本的gradle(不是alpha,甚至不是beta)。它为我修好了
虽然我相信Saurabh的答案对大多数人都适用,但我确实想确定为了安装apk我必须采取的额外步骤。
我尝试向设备推送,结果如下:
? adb push AppClient.TestOnly.App3.apk \tmp\
failed to copy 'AppClient.TestOnly.App3.apk' to '\tmp\': Read-only file system
在四处查看更改文件系统RW权限后,我最终执行了以下命令:
? adb shell
255|shell@android:/ $ su
shell@android:/ # mount -o remount,rw /
mount -o remount,rw /
当我再次尝试推的时候,我得到了这个:
? adb push AppClient.TestOnly.App3.apk /tmp
failed to copy 'AppClient.TestOnly.App3.apk' to '/tmp': Permission denied
我可以推送到sdcard:
? adb push AppClient.TestOnly.App3.apk /sdcard/
3178 KB/s (99747 bytes in 0.030s)
这时我可以执行Saurabh的命令:
shell@android:/ # pm install -t /sdcard/AppClient.TestOnly.App3.apk
pm install -t /sdcard/AppClient.TestOnly.App3.apk
pkg: /sdcard/AppClient.TestOnly.App3.apk
Success
我尝试了外部项目,有多个apk。
来自工作室的命令,看起来像
adb install-multiple -r ....
解决方案-
选择控制台 带-t的Aste命令