150 Commits

Author SHA1 Message Date
Ciaran Gultnieks
a6a33c9424 Version 0.22 2011-05-20 23:17:19 +01:00
Ciaran Gultnieks
f97ecd33a6 Changed wording on header to be more appropriate 2011-05-04 17:24:51 +01:00
Ciaran Gultnieks
45a38cc653 Default to auto updating repo daily, and notifying of app updates 2011-04-15 10:53:13 +01:00
Henrik Tunedal
63c573b28b Add landscape layout for AppDetails 2011-03-30 01:39:36 +02:00
Henrik Tunedal
9c3da557fa Fix bug in DownloadHandler
If an error occurred or the user cancelled the download, the message
(toast) would be redisplayed on every rotation from there on.

This change fixes the bug (by removing the reference to the download
thread when it's finished) and encapsulates all interaction with the
download thread in DownloadHandler.
2011-03-29 02:01:19 +02:00
Henrik Tunedal
1ae3e604bd Use unfiltered application list for updates 2011-03-28 18:25:23 +02:00
Henrik Tunedal
c76da4e35f Display SHA-1 fingerprints for repositories
The fingerprint is divided into four groups for readability but
otherwise identical to what keytool displays.
2011-03-28 03:54:29 +02:00
Henrik Tunedal
33fa2debf9 Consolidate hex conversion functions 2011-03-28 03:49:48 +02:00
Henrik Tunedal
37732255b2 Log available device features 2011-03-26 17:29:29 +01:00
Henrik Tunedal
767f1a6866 Stop progress updates when in background 2011-03-22 23:27:46 +01:00
Henrik Tunedal
7c43b91502 Reset signature ID after uninstall 2011-03-22 23:27:46 +01:00
Henrik Tunedal
89dd64a210 Remove APK count from AppDetails
Rationale:
1) The string is competing for space with the license field.
2) It would need separate singular/plural versions to be correct.
3) It's unnecessary when the list of APKs is shown directly below.
2011-03-22 23:27:33 +01:00
Henrik Tunedal
030075925a Make rotation quicker
Traceview revealed that the call to DB.getApps() was by far the
slowest part of recreating the activity, followed by getPackageInfo().
By transferring the list contents and some other fields from the old
activity object, the time needed to create the new one can be
substantially reduced.
2011-03-22 21:42:52 +01:00
Henrik Tunedal
84f150ed6a Handle rotation in AppDetails activity
This moves the download thread from an anonymous inner class to the
class Downloader, which isn't tied to the activity.

The state of the progress dialog is updated by polling the download
thread at regular intervals - message passing seemed to need a bunch
of synchronized methods and shared variables anyway (to ensure that
all messages reached the right activity) so it was much simpler to
just take it out. But maybe my approach is completely backward.
2011-03-22 21:42:52 +01:00
Henrik Tunedal
fabea142da Tolerate multiple signatures on index 2011-03-18 18:51:21 +01:00
Henrik Tunedal
6950085b56 Support SHA-256 in addition to MD5
The client will now check the SHA-256 hash of an APK if it's provided
in the index but otherwise falls back to the MD5 hash.
2011-03-18 18:46:24 +01:00
Ciaran Gultnieks
e225731db4 Translation updates 2011-03-10 15:21:48 +00:00
Henrik Tunedal
deec894061 Fix my supposedly improved listview item layout 2011-03-10 01:12:43 +01:00
Henrik Tunedal
ce3e4bd34f Merge branch 'compatcheck' 2011-03-09 00:22:31 +01:00
Henrik Tunedal
3502896e65 Check compatibility when determining current version 2011-03-08 20:06:43 +01:00
Henrik Tunedal
cea9278ef2 Optionally filter apps that require root 2011-03-08 20:06:43 +01:00
Henrik Tunedal
4caa43d0d6 Fix default value of "cacheDownloaded"
Change the default value of the "cacheDownloaded" preference used in
the actual code to match the default value that is specified in XML
and shown to the user.
2011-03-08 17:46:42 +01:00
Henrik Tunedal
7ae24e2917 Remove useless confirmation dialog
The dialog shown when clicking an APK provides the same information
and options as the system dialog that follows it.
2011-03-08 14:37:04 +01:00
Henrik Tunedal
62ad5e2ed1 Add cancel button to download dialog 2011-03-08 14:37:04 +01:00
Henrik Tunedal
87ca5ce189 Oops, fix compiler warning 2011-03-08 00:06:34 +01:00
Henrik Tunedal
aedcdaf238 Use IEEE 1541 standard units 2011-03-07 19:35:11 +01:00
Henrik Tunedal
773b78a363 Improve listview item layout 2011-03-07 18:37:43 +01:00
Henrik Tunedal
06253a94cf Small optimization in EclairChecker 2011-03-06 20:50:40 +01:00
Henrik Tunedal
1d025c1e7d Keep lists as unsplit strings
There is no point in splitting the strings ahead of time since 1) not
all strings need to be split and 2) we currently deserialize them just
as often as we iterate over them.
2011-03-06 02:23:44 +01:00
Henrik Tunedal
0513bb2de7 Filter incompatible applications 2011-03-05 19:59:01 +01:00
Henrik Tunedal
111a57fc47 Disable incompatible APKs 2011-03-04 19:44:01 +01:00
Henrik Tunedal
08816e4bc8 Make use of sdkver, permissions and features 2011-03-04 13:17:13 +01:00
Henrik Tunedal
17d6916e95 Get rid of unnecessary implicit permissions
Targeting an application at Cupcake triggers compatibility behaviours:
1) The permissions WRITE_EXTERNAL_STORAGE and READ_PHONE_STATE are
   automatically requested.
2) Support for different screen sizes and densities is disabled.

We don't want the extra permissions, but we do need the old resolution
compatibility mode to avoid UI breakage (for now), so I'm increasing
the target version and explicitly disabling the new screen support.
2011-03-03 14:46:20 +01:00
Henrik Tunedal
4ed1c3d622 Market-related improvements
Only show the market button for apps we know are available there.
Use a new URL that automagically opens in the market application if
it's installed but also works in the browser.
2011-02-27 23:14:05 +01:00
Henrik Tunedal
1b99e0e063 Remove superfluous transactions
SQLiteOpenHelper already wraps onCreate and onUpgrade in a transaction.
2011-02-26 16:54:05 +01:00
Henrik Tunedal
d65a31e2c5 Externalize repo address and key 2011-02-26 16:36:00 +01:00
Henrik Tunedal
9dc5b39f97 Compare strings by value 2011-02-26 14:33:29 +01:00
Ciaran Gultnieks
49fa56aa66 Version 0.21 2011-02-24 21:48:32 +00:00
Ciaran Gultnieks
efcc7c6d8c Show whether an apk is from source or a binary on the apk list 2011-02-21 22:12:00 +00:00
Ciaran Gultnieks
79ab3fe030 Added donate button to AppDetails menu 2011-02-21 21:33:18 +00:00
Ciaran Gultnieks
7c602d892a Merge commit '3c526f3' 2011-02-16 21:57:28 +00:00
Ciaran Gultnieks
a364364d99 Revert "The same, but clearer and less code?"
This reverts commit f5d8419d69b279112d5b7fa42a30c606a54e764c. Tunedal came
up with a better idea.
2011-02-16 21:52:47 +00:00
Henrik Tunedal
3c526f34ea Prettier error handling in RepoXMLHandler 2011-02-16 22:34:41 +01:00
Ciaran Gultnieks
f5d8419d69 The same, but clearer and less code? 2011-02-16 21:04:02 +00:00
Henrik Tunedal
95bca18bd3 More transactions everywhere 2011-02-14 03:47:36 +01:00
Henrik Tunedal
55eb63b077 Disable database sync preference unless in expert mode 2011-02-14 02:23:23 +01:00
Henrik Tunedal
657ae58418 Wrap database update in an explicit transaction
All changes to the database in SQLite must be done within a
transaction, so if there isn't one in progress one will be started
implicitly, i.e. each change will be done in a separate transaction.

Since committing a transaction is a fairly expensive operation - on
some filesystems ridiculously expensive - it should be done as
sparingly as possible.

In tests on my Galaxy S, this change makes the update between 2500%
and 4500% faster (for slightly over 100 applications).
2011-02-14 01:32:13 +01:00
Henrik Tunedal
0d1be2d967 Log duration of updates 2011-02-14 00:34:56 +01:00
Henrik Tunedal
176c9173ae Add preference for SQLite "synchronous" flag
By default SQLite runs with synchronous=FULL, which is the safest mode
and uses fsync() a lot, but this interacts very badly with Samsung's
infamous RFS filesystem. With this preference the user can decide
whether to sacrifice some safety for reasonable performance.
2011-02-13 20:37:35 +01:00
Henrik Tunedal
24aa230f14 Make the repository checkboxes work.
The checkboxes on the repository management screen did
nothing. Calling Cursor.getCount() on the returned cursor magically
fixed it - perhaps there's some sort of lazy evaluation? - but the
less magical execSQL method seems like a better way.
2011-02-11 00:56:30 +01:00