我有一个AndroidStudio项目,最初可以通过adb部署到我的手机。
但在我将手机更新为Android N后,我再也无法使用adb进行部署了。
$ adb install app-release.apk
Failed to install app-release.apk:
Exception occurred while dumping:
java.lang.NullPointerException: rhs == null
at java.lang.String.compareTo(Native Method)
at java.lang.String.compareTo(String.java:1082)
at java.util.Collections.indexedBinarySearch(Collections.java:299)
at java.util.Collections.binarySearch(Collections.java:286)
at com.android.server.pm.Settings.isInApp2sdBlacklist(Settings.java:5622)
at com.android.server.pm.PackageManagerService.isInApp2sdBlacklist(PackageManagerService.java:21454)
at android.app.ApplicationPackageManager.isInApp2sdBlacklist(ApplicationPackageManager.java:2534)
at com.android.internal.content.PackageHelper.resolveInstallVolume(PackageHelper.java:416)
at com.android.server.pm.PackageInstallerService.createSessionInternal(PackageInstallerService.java:647)
at com.android.server.pm.PackageInstallerService.createSession(PackageInstallerService.java:566)
at com.android.server.pm.PackageManagerShellCommand.doCreateSession(PackageManagerShellCommand.java:1141)
at com.android.server.pm.PackageManagerS
可能是什么问题?
我用谷歌搜索了错误消息并且没有任何线索。另外,如何阅读此错误消息?似乎错误在Android库或java库中。 (是因为我将java更新为更高版本吗?)
答案 0 :(得分:0)
您可以尝试以下程序,然后您可能会弄清楚自己的问题是什么。
.apk
文件。 (使用你的AndroidStudio或其他任何东西。)cd the\folder\containing\apk
adb push name_of_the.apk path\on\the\mobile\phone\storage\
.apk
文件图标手动安装.apk
。虽然adb install
在我的设备上失败(正如问题陈述所描述的那样),adb push
(上面的步骤3)有效。
在我完成上面的第4步之后,出现了一个意想不到的屏幕。
它说,'系统正在扫描恶意软件。'
这就是我的问题的答案。在我将手机升级到Android N版本后,系统已添加了自动软件扫描,即使您使用的是开发者模式并使用adb,也会触发该扫描。
并且错误消息没有显示任何线索。错误消息只是说java.lang.NullPointerException: rhs == null
,它与之无关。
在AndroidStudio中停用instant run
。
Settings
>Build, Execution, Deployment
>Instant Run
adb root
,adb disable-verity
,adb reboot
,adb root
,adb remount
https://android.stackexchange.com/questions/162902/adb-push-not-working-on-system-read-only