After doing some more testing I have found that using a shared user ID
is not needed to access the other package's databases.

If you call Context.createPackageContext(<other_package_name>,
Context.CONTEXT_IGNORE_SECURITY) then you can access the other
package's databases even if there is no shared user ID, as long as you
signed both packages with the same key.

Even if you use a shared user ID the database is still saved per
package, and not really placed in a shared area.  So the only
advantage of the shared user ID seems to be whether you need to use
CONTEXT_IGNORE_SECURITY or CONTEXT_INCLUDE_CODE as the parameter when
getting the context for the other package.  It does appear that you
must copy the database from the free package to the paid package to
make sure that later when the free version gets deleted you will still
have the database data in the new copy you made for the paid version
package.

I have not yet implemented this, as I have not completed my paid
version and have been leaving copying the database as one of the last
tasks.

Does anyone have any input on the best way to copy SQLite databases?
Is there a simple SQL statement that will work to copy the database in
its entirety from the one package to the other package?


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

Reply via email to