« Previous | Next » 

Revision 71db322b

ID71db322b6d7a800d563b77578ce4cdc3a5eb2361
Parent d573bac5
Child 82b188a2

Added by Peter Serwylo over 3 years ago

Don't implement 'update' for installed apps, use replace (Fixes #14)

There were some weird edge cases that couldn't quite be pinned down,
whereby installing an app would result in a unique key violation being
hit. One example was when somebody was installing an apk from a file
manager. It seems that this doesn't trigger a PACKAGE_CHANGED, but
rather a PACKAGE_INSTALLED. The end result is that it attempts to insert
a record that already exists in the installed apps table. Because we
have a unique key constraing on the appId, it breaks.

This commit changes the way that we insert installed app details.
Instead of inserting some times, and updating other times, we always
insert. If we hit a unique key violation, the row is deleted, and then
the new values are reinserted.

Files

  • added
  • modified
  • copied
  • renamed
  • deleted

View differences