I'm working on the upgrade process for an Android app and am having a
hard time ensuring a graceful shutdown of the old version. Can someone
explain how the old version of the app is killed and if there is
anything we can do to hook into the process?

In more detail:

We notice that a new version of our app is available and launch a new
activity with Intent.ACTION_VIEW pointing to the new apk file (or to
the marketplace, once our app is there). However, the user has 2
chances to abort the install (once at the warning about reinstalling
the app, and the second when warned about the permissions our app
needs). My understanding is that I can't use startActivityForResult()
with ACTION_VIEW, so I can't find out if the Action is aborted or not.
So we can't tell if/when the install has been started.

We'd like to ensure that our app shuts down cleanly since we use a lot
of native code and threads. We could kill our app proactively, as soon
as we launch the ACTION_VIEW activity, but then we're left in a bad
state if the user aborts. We could wait for the installer to remove
our files, prior to installing the new version, but that's a hack. Is
there any clean way to do this? Our main window is never seeing an
onDestroy(), btw.

Thanks,
Dave Golombek
www.flexilis.com

--~--~---------~--~----~------------~-------~--~----~
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