aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorThialfihar <thialfihar@gmail.com>2010-06-18 15:14:41 +0000
committerThialfihar <thialfihar@gmail.com>2010-06-18 15:14:41 +0000
commitbda9745d8baece9fa4892f37676abd7c6e9985f6 (patch)
tree7a341db1cc46b87f56b1cfd6d345035dc77dafff /src
parentdcce05f3df8d1df4810cbeeeb7895dd5c1c7ea69 (diff)
downloadopen-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
Diffstat (limited to 'src')
-rw-r--r--src/org/thialfihar/android/apg/Apg.java19
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) {