Re: .so file in apk in the /system/app doesn't extract to the /data/data/xxx/lib directory

410 views
Skip to first unread message

David Turner

unread,
Oct 26, 2010, 2:56:35 PM10/26/10
to android-porting
Note: this goes into android-porting, not android-ndk.

This works like this:
  • Applications that are bundled with the system _should_ place their system libraries under /system/lib

  • When an update is installed, the PackageManager will place its shared libraries under /data/data/<package-name>/lib and these will be used by the updated application. The old system library is _not_ replaced, simply ignored.

  • If you uninstall the update, the original bundled application will still be here, including its system libraries.

  • During the very first boot sequence (e.g. after a -wipe-data when starting the emulator, or a factory reset on a device), the system will scan for bundled applications under /system/app/<packagename>.apk, and will install them one by one.

    As a special exception, the PackageManager will _not_ extract shared libraries from these packages to /data/data/<package-name>/lib (this avoids duplication of the system libraries in both /system/lib and <data>/lib)

On Tue, Oct 26, 2010 at 2:44 AM, Hendy <hend...@gmail.com> wrote:
hi all, especially to fadden

This is a additional question to this post:
http://groups.google.com/group/android-ndk/browse_thread/thread/bfceac612dceae8c/7f2b8b48a87c2a52.

Sorry for this new post. Because I replied to that post but the system
didn't show my reply.

My question is that it seems to be a designed behavior of Android.
Then how will the system APPs with .so be upgraded? If a APP wants to
upgrade itself, normally will supply a new apk file and install it
with the package installer, the upgraded so file will be placed in
the /data/data/com.xxx.xxx/lib directory. The old so in the /system/
lib directory will not be upgraded. But the so files in the system
directory have high priority to be linked. Then the old so will never
be replaced. How to solve this problem?


Thanks.

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


Reply all
Reply to author
Forward
0 new messages