diff options
author | Thialfihar <thialfihar@gmail.com> | 2010-06-18 15:14:41 +0000 |
---|---|---|
committer | Thialfihar <thialfihar@gmail.com> | 2010-06-18 15:14:41 +0000 |
commit | bda9745d8baece9fa4892f37676abd7c6e9985f6 (patch) | |
tree | 7a341db1cc46b87f56b1cfd6d345035dc77dafff | |
parent | dcce05f3df8d1df4810cbeeeb7895dd5c1c7ea69 (diff) | |
download | open-keychain-bda9745d8baece9fa4892f37676abd7c6e9985f6.tar.gz open-keychain-bda9745d8baece9fa4892f37676abd7c6e9985f6.tar.bz2 open-keychain-bda9745d8baece9fa4892f37676abd7c6e9985f6.zip |
much better version reading by directly looking for the APG package, rather than looping through all installed packages
-rw-r--r-- | src/org/thialfihar/android/apg/Apg.java | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/src/org/thialfihar/android/apg/Apg.java b/src/org/thialfihar/android/apg/Apg.java index 8ccc3a2c0..6fd8794ff 100644 --- a/src/org/thialfihar/android/apg/Apg.java +++ b/src/org/thialfihar/android/apg/Apg.java @@ -37,7 +37,6 @@ import java.util.Date; import java.util.GregorianCalendar;
import java.util.HashMap;
import java.util.Iterator;
-import java.util.List;
import java.util.Map;
import java.util.Vector;
import java.util.regex.Pattern;
@@ -90,6 +89,7 @@ import org.thialfihar.android.apg.utils.IterableIterator; import android.app.Activity;
import android.content.Context;
import android.content.pm.PackageInfo;
+import android.content.pm.PackageManager.NameNotFoundException;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.net.Uri;
@@ -1836,19 +1836,14 @@ public class Apg { if (VERSION != null) {
return VERSION;
}
- List<PackageInfo> packs = context.getPackageManager().getInstalledPackages(0);
- for (int i = 0; i < packs.size(); ++i) {
- PackageInfo p = packs.get(i);
- if (!p.packageName.equals(mApgPackageName)) {
- continue;
- }
-
- VERSION = p.versionName;
+ try {
+ PackageInfo pi = context.getPackageManager().getPackageInfo(mApgPackageName, 0);
+ VERSION = pi.versionName;
return VERSION;
+ } catch (NameNotFoundException e) {
+ // unpossible!
+ return "0.0.0";
}
-
- // unpossible!
- return "0.0.0";
}
public static String getFullVersion(Context context) {
|