我在我的设备上安装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,只需添加-t命令行选项。

示例命令:

adb install -t .\app-debug.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 Studio构建你的发行版.apk,如下所示

构建—>构建Apk(s)(用于未签名的构建) 生成签名APK(用于签名构建)

这些选项使用android:testOnly="false"选项构建APK,允许您通过命令显式地将APK安装到设备中。

adb安装你的apk

经过一整天的搜索和浏览,唯一的工作就是添加

android.injected.testOnly=false

去gradle。属性文件

我不知道它是否对任何人有用,但我得到了这个错误消息,当我不小心试图在稳定的Android Studio版本(2.3,而不是2.4预览5版本我之前下载和安装)中构建和安装测试gradle插件('gradle:2.4.0-alpha5')版本的项目时。

当我意识到自己的错误时,我启动了预览版Android Studio,它构建并安装了我的项目,没有任何问题。

这对我来说很管用:

adb install -t myapk.apk