Go To ( http://adf.ly/20PrE )-)-) [android-developers] User cannot install an update

1 view
Skip to first unread message

John Gaby

unread,
Dec 5, 2011, 1:09:15 AM12/5/11
to Android Developers
I have a user who is trying to install an update and it is failing.
He has sent me the logcat and it seems to be failing because of some
kind of incompatibility with the shared UserID. However, I am able to
install the same update over the same old version without this
problem. Here is the relevant logcat section. Does anyone have an
idea as to what might be going wrong.

12-04 22:48:02.803 I/ActivityManager(1784): Starting activity: Intent
{ act=android.intent.action.VIEW dat=file:///mnt/sdcard/
oubliette20B5.apk typ=application/vnd.android.package-archive
cmp=com.android.packageinstaller/.PackageInstallerActivity }
12-04 22:48:03.173 I/ActivityManager(1784): Displayed activity
com.android.packageinstaller/.PackageInstallerActivity: 354 ms (total
354 ms)
12-04 22:48:03.923 I/ActivityManager(1784): Starting activity: Intent
{ dat=file:///mnt/sdcard/oubliette20B5.apk
cmp=com.android.packageinstaller/.InstallAppProgress (has extras) }
12-04 22:48:04.203 D/PackageParser(1784): Scanning package: /data/app/
vmdl24026.tmp
12-04 22:48:04.273 I/ActivityManager(1784): Displayed activity
com.android.packageinstaller/.InstallAppProgress: 315 ms (total 315
ms)
12-04 22:48:04.403 D/PackageManager(1784): Scanning package
com.gabysoft.oubliette
12-04 22:48:04.403 D/PackageManager(1784): Shared UserID
com.gabysoft.oubliette (uid=10083): packages=[PackageSetting{46644bf0
com.gabysoft.oubbeta/10083}, PackageSetting{4660ffd0
com.gabysoft.oubliettelite/10083}]
12-04 22:48:04.413 I/PackageManager(1784): /data/app/
com.gabysoft.oubliette-1.apk changed; unpacking
12-04 22:48:04.413 D/PackageManager(1784): Caching shared lib lib/
armeabi/liboubliette-jni.so
12-04 22:48:04.413 E/PackageManager(1784): Package
com.gabysoft.oubliette has mismatched uid: 10113 on disk, 10083 in
settings
12-04 22:48:04.423 W/PackageManager(1784): Failed to cache package
shared libs
12-04 22:48:04.423 W/PackageManager(1784): java.io.IOException:
Permission denied
12-04 22:48:04.423 W/PackageManager(1784): at
java.io.File.createNewFileImpl(Native Method)
12-04 22:48:04.423 W/PackageManager(1784): at
java.io.File.createNewFile(File.java:1160)
12-04 22:48:04.423 W/PackageManager(1784): at
java.io.File.createTempFile(File.java:1224)
12-04 22:48:04.423 W/PackageManager(1784): at
com.android.server.PackageManagerService.cacheNativeBinaryLI(PackageManagerService.java:
3767)
12-04 22:48:04.423 W/PackageManager(1784): at
com.android.server.PackageManagerService.cachePackageSharedLibsForAbiLI(PackageManagerService.java:
3647)
12-04 22:48:04.423 W/PackageManager(1784): at
com.android.server.PackageManagerService.cachePackageSharedLibsLI(PackageManagerService.java:
3718)
12-04 22:48:04.423 W/PackageManager(1784): at
com.android.server.PackageManagerService.scanPackageLI(PackageManagerService.java:
3233)
12-04 22:48:04.423 W/PackageManager(1784): at
com.android.server.PackageManagerService.installNewPackageLI(PackageManagerService.java:
5602)
12-04 22:48:04.423 W/PackageManager(1784): at
com.android.server.PackageManagerService.installPackageLI(PackageManagerService.java:
5949)
12-04 22:48:04.423 W/PackageManager(1784): at
com.android.server.PackageManagerService.access
$2100(PackageManagerService.java:137)
12-04 22:48:04.423 W/PackageManager(1784): at
com.android.server.PackageManagerService
$5.run(PackageManagerService.java:4752)
12-04 22:48:04.423 W/PackageManager(1784): at
android.os.Handler.handleCallback(Handler.java:587)
12-04 22:48:04.423 W/PackageManager(1784): at
android.os.Handler.dispatchMessage(Handler.java:92)
12-04 22:48:04.423 W/PackageManager(1784): at
android.os.Looper.loop(Looper.java:123)
12-04 22:48:04.423 W/PackageManager(1784): at
android.os.HandlerThread.run(HandlerThread.java:60)
12-04 22:48:04.423 W/PackageManager(1784): Package couldn't be
installed in /data/app/com.gabysoft.oubliette-1.apk

--
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-d...@googlegroups.com
To unsubscribe from this group, send email to
android-develop...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

--
Go to Master Mind Home Base Income Website :-

http://adf.ly/20PrE

http://adf.ly/20PrE

Unsubscribe All Group Post :- http://j.gs/624707/unsubscribe

http://q.gs/624707/unsubscribe

Subscribe All Group Post :- http://j.gs/624707/subscribe

http://q.gs/624707/subscribe

Join Now Today (Paid Income) :-

http://adf.ly/20PrE

http://adf.ly/20PrE

http://adf.ly/20PrE

http://adf.ly/?id=624707

http://adf.ly/20PrE

http://adf.ly/20PrE

http://adf.ly/20PrE

http://adf.ly/20PrE

http://adf.ly/20PrE

http://adf.ly/20PrE

http://adf.ly/20PrE

http://adf.ly/20PrE

http://adf.ly/20PrE

http://adf.ly/20PrE

http://adf.ly/20PrE

http://adf.ly/20PrE

John Gaby

unread,
Dec 5, 2011, 1:12:23 AM12/5/11
to Android Developers
There is one more relevant point. I have had the user completely
uninstall the app and re-install the new version and the above log is
what he is seeing

John Coryat

unread,
Dec 5, 2011, 1:15:49 AM12/5/11
to android-d...@googlegroups.com
How many times have I read that same complaint from a user. I'm guessing hundreds.

it's unrelated to your app. I send this to the user and it has always solved the problem:

The launcher, installer and Android Market installer are part of your device manufacturer or carrier's specific Android OS version. As such, Android devices are subject to a wide variety of unusual behavior. Issues with the Android Market and launcher are controlled by your carrier, manufacturer of the device and Google. Luckily, there are a couple of things you can do that usually solve the problem:

Please do the following:

Turn off your device.
Take out the battery.
Put the battery back in.
Restart your device.

That should fix it. If not, try this:

Uninstall our app.
Reinstall our app.

If this doesn't work, please try the Android Market Support:

http://www.google.com/support/androidmarket/

The thing about taking the battery out may be extreme but (no joking here!) a lot of users don't know how to turn their phone off completely. Telling them to take the battery out is the surest way to make sure they're actually turning it off. It has nothing to do with the battery.

-John Coryat

mot12

unread,
Dec 5, 2011, 4:00:45 AM12/5/11
to Android Developers
There may be a permission problem so the userID given to the app does
not match the userID of the app data directory. If your user has root,
tell him/her to delete the directory /data/data/com.yournamespace...
Then reinstall the app.

Unfortuantely, only root can do this. Uninstalling the app should
delete the app directory but doesn't sometimes if there's a permission
problem.

-- Martin
mobitobi

John Coryat

unread,
Dec 5, 2011, 10:49:07 AM12/5/11
to android-d...@googlegroups.com

There may be a permission problem so the userID given to the app does
not match the userID of the app data directory. If your user has root,
tell him/her to delete the directory /data/data/com.yournamespace...
Then reinstall the app.

Unfortuantely, only root can do this. Uninstalling the app should
delete the app directory but doesn't sometimes if there's a permission
problem.


I have never seen anything like this in nearly 3,000,000 installs of our app. If it does happen, probably doing my suggested procedure will solve it.

-John Coryat


mot12

unread,
Dec 5, 2011, 11:44:13 AM12/5/11
to Android Developers
Lucky you. This happened because of a firmware bug in Samsung devices
2.2.1. See here:

http://code.google.com/p/android/issues/detail?id=14359

or

https://groups.google.com/forum/#!topic/android-developers/Sm7WCWZYcKU/discussion

In the first post, the author describes how he ended up with an app
having a different user ID than the app data directory.

@John Coryat : If you read the original post in this thread and his
follow up, you will see that John already tried uninstalling to no
avail.


-- Martin
mobitobi

John Gaby

unread,
Dec 5, 2011, 12:52:17 PM12/5/11
to Android Developers
Thanks for the suggestions. I had the user try taking out the battery
but it didn't help (I HAD previously had him reboot his phone which
didn't work either). I am beginning to think that there is something
screwed up with the permissions as you suggest. I have actually had a
similar problem on my HTC Hero phone running 2.1 (he is running 2.2).
It gets into a state where I can no longer install my app and it
clearly appears to be a permissions problem (I can't remember the
exact message, but it fails to install something complaining that the
folder doesn't exist). I have had this happen a number of times and
it usually occurs when I have installed a debug signed apk, un-
installed and then tried to install a signed apk. However my user has
only ever had properly signed apks.

Ultimately the only way I was able to get it to work again on my HERO
was to reset the entire phone to the factory settings (which deletes
everything), which is not something that my user is wanting to do.

On Dec 5, 8:44 am, mot12 <martin.hu...@gmail.com> wrote:
> Lucky you. This happened because of a firmware bug in Samsung devices
> 2.2.1. See here:
>
> http://code.google.com/p/android/issues/detail?id=14359
>
> or
>

> https://groups.google.com/forum/#!topic/android-developers/Sm7WCWZYcK...

John Coryat

unread,
Dec 5, 2011, 1:32:04 PM12/5/11
to android-d...@googlegroups.com
You'll have to decide what level of support you want to offer. For me, once I've determined it isn't a problem with the app, the user has to look elsewhere for support. I can't help solve problems with the countless versions of Android/carrier/manufacturer OS's and devices. I'd rather spend my time staring off into empty space than do that.

If you want to be 100% support for any problem a user encounters, that's strictly up to you but if your app ever gets popular, then you'll be swamped. Better to send them to Android support and let them deal with it.

-John Coryat

@martin - I pasted the text I send to users, it wasn't modified to fit the poster's experience already. I have found this text to either solve all these problems or send the user to a place where they should seek help. That's why I posted it.

John Gaby

unread,
Dec 5, 2011, 2:31:41 PM12/5/11
to Android Developers
You are, of course, correct. I just wanted to understand what is
happening here so that I can determine whether it is my fault or not,
and whether I am going to have others that have this problem. The
reality is that for every person that takes the time to report a
problem there are probably dozens (or hundreds?) who don't bother.

John Coryat

unread,
Dec 5, 2011, 2:46:00 PM12/5/11
to android-d...@googlegroups.com
That's pretty simple. If they have problems with the installing, updating, launching, downloading, uninstalling or (my favorite) the icon has disappeared, it's not your problem, it's an Android issue. 99.9% of those problems can be simply solved by rebooting or by uninstalling and reinstalling.  The rest are going to be oddities that affect only a very few and unless you have the actual device in your hands, probably unsolvable.

-John Coryat

mot12

unread,
Dec 5, 2011, 3:39:31 PM12/5/11
to Android Developers
I would agree with John that this is not worth your time as a support
issue. But if your user has root access, I would try deleting the app
data folder. This has worked for the issue that I addressed.
Otherwise, factory reset :(.

John Gaby

unread,
Dec 5, 2011, 8:01:38 PM12/5/11
to Android Developers
Thanks for all your help, the user does not have root access and is
not willing to reset his phone. Rebooting the phone also does not
help (or so he tells me). So I guess that he is simply stuck with his
current version.

Thanks again.

John Coryat

unread,
Dec 5, 2011, 9:27:31 PM12/5/11
to android-d...@googlegroups.com
I would bet that your user has one of these problems:

1. Has rooted his device but won't admit it.
2. Doesn't know how to turn off his phone and hasn't removed the battery like you asked him to.
3. Hasn't done anything to try and solve the problem but tells you he did.
4. Doesn't have a problem related to your app at all and is just totally confused.

Some users are great. They know what they're doing and can do just about anything themselves. You'll never hear from those. Others are aware of their surroundings and can successfully follow instructions without skipping steps. Then there are those that think they know everything and assume that what you're telling them to do is silly.

It's far better to draw the line at solving problems within your app and refer any problems with Android itself to a higher power.

-John Coryat
Reply all
Reply to author
Forward
0 new messages