Android Service get a null pointer exception when installed as system app -
i have launcher app service runs user app normally, after pused /system/app/ system app, can not installed, here strange logcat:
f/fileobserver( 367): unhandled exception in fileobserver com.android.server.pm.packagemanagerservice$appdirobserver@41130430 f/fileobserver( 367): java.lang.nullpointerexception: name == null f/fileobserver( 367): @ java.io.file.<init>(file.java:150) f/fileobserver( 367): @ java.io.file.<init>(file.java:124) f/fileobserver( 367): @ com.android.server.pm.packagemanagerservice.getdatapathforpackage(packagemanagerservice.java:3579) f/fileobserver( 367): @ com.android.server.pm.packagemanagerservice.scanpackageli(packagemanagerservice.java:3940) f/fileobserver( 367): @ com.android.server.pm.packagemanagerservice.scanpackageli(packagemanagerservice.java:3382) f/fileobserver( 367): @ com.android.server.pm.packagemanagerservice.access$1700(packagemanagerservice.java:172) f/fileobserver( 367): @ com.android.server.pm.packagemanagerservice$appdirobserver.onevent(packagemanagerservice.java:5541) f/fileobserver( 367): @ android.os.fileobserver$observerthread.onevent(fileobserver.java:125) f/fileobserver( 367): @ android.os.fileobserver$observerthread.observe(native method) f/fileobserver( 367): @ android.os.fileobserver$observerthread.run(fileobserver.java:88) d/dalvikvm( 367): gc_for_alloc freed 1488k, 25% free 11974k/15816k, paused 56ms, total 57ms
a string null pointer! happened?
here related android source code packagemanagerservice (android4.2):
private file getdatapathforpackage(string packagename, int userid) { /* * until support multiple users, return directory * have. packagemanagertests need * revised when changed back.. */ if (userid == 0) { return new file(mappdatadir, packagename); } else { return new file(muserappdatadir.getabsolutepath() + file.separator + userid + file.separator + packagename); } }
but still don't know reason.
udpate:
it reason of <original-package>
tag in manifest, remove , problem gone.
mostly package name coming null. if see documentation of file notice exact exception thrown when name
part null
.
public file (file dir, string name) constructs new file using specified directory , name.
parameters dir directory file stored. name file's name.
throws nullpointerexception if name null.
Comments
Post a Comment