我在我的设备上安装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 3.6.2及以上版本
构建>>构建/捆绑apk >>构建apk
它工作得很好。
其他回答
看起来你需要修改你的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
虽然我相信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
我也有同样的问题,没有答案。 最后,我发现在我的安全文件夹(或安全文件夹取决于手机品牌)中仍然有一个安装,它没有在Android卸载普通安装时被删除。删除它,这个问题就解决了。 希望这能帮助到其他人!
Android 3.6.2及以上版本
构建>>构建/捆绑apk >>构建apk
它工作得很好。
以我为例,使用Android Studio 4.0解决了这个问题;
添加到gradle。属性的文件;
android.injected.testOnly=false