From 1abbedc4ab509f517ecd6fb8855fa388de057697 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Mart=C3=AD?= Date: Tue, 19 Apr 2016 11:49:00 +0100 Subject: [PATCH 1/7] Rename Apk.vercode to Apk.versionCode Updates #37. --- .../org/fdroid/fdroid/ApkProviderHelperTest.java | 8 ++++---- .../java/org/fdroid/fdroid/ApkProviderTest.java | 6 +++--- .../java/org/fdroid/fdroid/BaseApkProviderTest.java | 2 +- .../java/org/fdroid/fdroid/MultiRepoUpdaterTest.java | 2 +- .../java/org/fdroid/fdroid/mock/MockApk.java | 2 +- app/src/main/java/org/fdroid/fdroid/AppDetails.java | 10 +++++----- .../java/org/fdroid/fdroid/CompatibilityChecker.java | 4 ++-- .../main/java/org/fdroid/fdroid/RepoXMLHandler.java | 2 +- app/src/main/java/org/fdroid/fdroid/data/Apk.java | 12 ++++++------ .../java/org/fdroid/fdroid/data/ApkProvider.java | 8 ++++---- app/src/main/java/org/fdroid/fdroid/data/App.java | 4 ++-- .../java/org/fdroid/fdroid/data/RepoPersister.java | 4 ++-- .../java/org/fdroid/fdroid/data/TempApkProvider.java | 2 +- .../fdroid/fdroid/localrepo/LocalRepoManager.java | 6 +++--- 14 files changed, 36 insertions(+), 36 deletions(-) diff --git a/app/src/androidTest/java/org/fdroid/fdroid/ApkProviderHelperTest.java b/app/src/androidTest/java/org/fdroid/fdroid/ApkProviderHelperTest.java index 7e7b27d77..2ab571652 100644 --- a/app/src/androidTest/java/org/fdroid/fdroid/ApkProviderHelperTest.java +++ b/app/src/androidTest/java/org/fdroid/fdroid/ApkProviderHelperTest.java @@ -121,7 +121,7 @@ public class ApkProviderHelperTest extends BaseApkProviderTest { cursor.close(); assertEquals("com.example", apk.packageName); - assertEquals(10, apk.vercode); + assertEquals(10, apk.versionCode); assertNull(apk.features); assertNull(apk.added); @@ -147,7 +147,7 @@ public class ApkProviderHelperTest extends BaseApkProviderTest { updatedCursor.close(); assertEquals("com.example", updatedApk.packageName); - assertEquals(10, updatedApk.vercode); + assertEquals(10, updatedApk.versionCode); assertNotNull(updatedApk.features); assertNotNull(updatedApk.added); @@ -187,7 +187,7 @@ public class ApkProviderHelperTest extends BaseApkProviderTest { // The find() method populates ALL fields if you don't specify any, // so we expect to find each of the ones we inserted above... assertEquals("com.example", apk.packageName); - assertEquals(11, apk.vercode); + assertEquals(11, apk.versionCode); assertEquals("v1.1", apk.version); assertEquals("xxxxyyyy", apk.hash); assertEquals("a hash type", apk.hashType); @@ -207,7 +207,7 @@ public class ApkProviderHelperTest extends BaseApkProviderTest { // Didn't ask for these fields, so should be their default values... assertNull(apkLessFields.hashType); assertNull(apkLessFields.version); - assertEquals(0, apkLessFields.vercode); + assertEquals(0, apkLessFields.versionCode); Apk notFound = ApkProvider.Helper.find(getMockContext(), "com.doesnt.exist", 1000); assertNull(notFound); diff --git a/app/src/androidTest/java/org/fdroid/fdroid/ApkProviderTest.java b/app/src/androidTest/java/org/fdroid/fdroid/ApkProviderTest.java index 922b69639..a8f2bd51b 100644 --- a/app/src/androidTest/java/org/fdroid/fdroid/ApkProviderTest.java +++ b/app/src/androidTest/java/org/fdroid/fdroid/ApkProviderTest.java @@ -233,7 +233,7 @@ public class ApkProviderTest extends BaseApkProviderTest { Apk apk = new MockApk("org.fdroid.fdroid", 13); // Insert a new record... - Uri newUri = TestUtils.insertApk(this, apk.packageName, apk.vercode); + Uri newUri = TestUtils.insertApk(this, apk.packageName, apk.versionCode); assertEquals(ApkProvider.getContentUri(apk).toString(), newUri.toString()); cursor = queryAllApks(); assertNotNull(cursor); @@ -257,7 +257,7 @@ public class ApkProviderTest extends BaseApkProviderTest { Apk toCheck = new Apk(cursor); cursor.close(); assertEquals("org.fdroid.fdroid", toCheck.packageName); - assertEquals(13, toCheck.vercode); + assertEquals(13, toCheck.versionCode); } public void testCount() { @@ -330,7 +330,7 @@ public class ApkProviderTest extends BaseApkProviderTest { // But this should have saved correctly... assertEquals("Some features", apk.features.toString()); assertEquals("com.example.com", apk.packageName); - assertEquals(1, apk.vercode); + assertEquals(1, apk.versionCode); assertEquals(10, apk.repo); } diff --git a/app/src/androidTest/java/org/fdroid/fdroid/BaseApkProviderTest.java b/app/src/androidTest/java/org/fdroid/fdroid/BaseApkProviderTest.java index 0015584f1..acaf3e12d 100644 --- a/app/src/androidTest/java/org/fdroid/fdroid/BaseApkProviderTest.java +++ b/app/src/androidTest/java/org/fdroid/fdroid/BaseApkProviderTest.java @@ -40,7 +40,7 @@ abstract class BaseApkProviderTest extends FDroidProviderTest { protected void assertContains(List apks, Apk apk) { boolean found = false; for (Apk a : apks) { - if (a.vercode == apk.vercode && a.packageName.equals(apk.packageName)) { + if (a.versionCode == apk.versionCode && a.packageName.equals(apk.packageName)) { found = true; break; } diff --git a/app/src/androidTest/java/org/fdroid/fdroid/MultiRepoUpdaterTest.java b/app/src/androidTest/java/org/fdroid/fdroid/MultiRepoUpdaterTest.java index 04978533e..6f498d3f6 100644 --- a/app/src/androidTest/java/org/fdroid/fdroid/MultiRepoUpdaterTest.java +++ b/app/src/androidTest/java/org/fdroid/fdroid/MultiRepoUpdaterTest.java @@ -289,7 +289,7 @@ public class MultiRepoUpdaterTest extends InstrumentationTestCase { for (int versionCode : versionCodes) { boolean found = false; for (Apk apk : apksToCheck) { - if (apk.vercode == versionCode && apk.packageName.equals(appId)) { + if (apk.versionCode == versionCode && apk.packageName.equals(appId)) { found = true; break; } diff --git a/app/src/androidTest/java/org/fdroid/fdroid/mock/MockApk.java b/app/src/androidTest/java/org/fdroid/fdroid/mock/MockApk.java index 4790301ac..be7dff5a5 100644 --- a/app/src/androidTest/java/org/fdroid/fdroid/mock/MockApk.java +++ b/app/src/androidTest/java/org/fdroid/fdroid/mock/MockApk.java @@ -6,7 +6,7 @@ public class MockApk extends Apk { public MockApk(String id, int versionCode) { this.packageName = id; - this.vercode = versionCode; + this.versionCode = versionCode; } } diff --git a/app/src/main/java/org/fdroid/fdroid/AppDetails.java b/app/src/main/java/org/fdroid/fdroid/AppDetails.java index a9e57447b..fad18ed43 100644 --- a/app/src/main/java/org/fdroid/fdroid/AppDetails.java +++ b/app/src/main/java/org/fdroid/fdroid/AppDetails.java @@ -160,7 +160,7 @@ public class AppDetails extends AppCompatActivity { private String getInstalledStatus(final Apk apk) { // Definitely not installed. - if (apk.vercode != app.installedVersionCode) { + if (apk.versionCode != app.installedVersionCode) { return getString(R.string.app_not_installed); } // Definitely installed this version. @@ -211,7 +211,7 @@ public class AppDetails extends AppCompatActivity { holder.version.setText(getString(R.string.version) + " " + apk.version - + (apk.vercode == app.suggestedVercode ? " ☆" : "")); + + (apk.versionCode == app.suggestedVercode ? " ☆" : "")); holder.status.setText(getInstalledStatus(apk)); @@ -1246,7 +1246,7 @@ public class AppDetails extends AppCompatActivity { Apk curApk = null; for (int i = 0; i < appDetails.getApks().getCount(); i++) { final Apk apk = appDetails.getApks().getItem(i); - if (apk.vercode == app.suggestedVercode) { + if (apk.versionCode == app.suggestedVercode) { curApk = apk; break; } @@ -1619,9 +1619,9 @@ public class AppDetails extends AppCompatActivity { public void onListItemClick(ListView l, View v, int position, long id) { App app = appDetails.getApp(); final Apk apk = appDetails.getApks().getItem(position - l.getHeaderViewsCount()); - if (app.installedVersionCode == apk.vercode) { + if (app.installedVersionCode == apk.versionCode) { remove(); - } else if (app.installedVersionCode > apk.vercode) { + } else if (app.installedVersionCode > apk.versionCode) { AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); builder.setMessage(R.string.installDowngrade); builder.setPositiveButton(R.string.yes, diff --git a/app/src/main/java/org/fdroid/fdroid/CompatibilityChecker.java b/app/src/main/java/org/fdroid/fdroid/CompatibilityChecker.java index 6fa1c3fb6..306f38ced 100644 --- a/app/src/main/java/org/fdroid/fdroid/CompatibilityChecker.java +++ b/app/src/main/java/org/fdroid/fdroid/CompatibilityChecker.java @@ -102,7 +102,7 @@ public class CompatibilityChecker { } if (!features.contains(feat)) { Collections.addAll(incompatibleReasons, feat.split(",")); - Utils.debugLog(TAG, apk.packageName + " vercode " + apk.vercode + Utils.debugLog(TAG, apk.packageName + " vercode " + apk.versionCode + " is incompatible based on lack of " + feat); } } @@ -111,7 +111,7 @@ public class CompatibilityChecker { for (final String code : apk.nativecode) { incompatibleReasons.add(code); } - Utils.debugLog(TAG, apk.packageName + " vercode " + apk.vercode + Utils.debugLog(TAG, apk.packageName + " vercode " + apk.versionCode + " only supports " + Utils.CommaSeparatedList.str(apk.nativecode) + " while your architectures are " + cpuAbisDesc); } diff --git a/app/src/main/java/org/fdroid/fdroid/RepoXMLHandler.java b/app/src/main/java/org/fdroid/fdroid/RepoXMLHandler.java index ff24611ba..be9149443 100644 --- a/app/src/main/java/org/fdroid/fdroid/RepoXMLHandler.java +++ b/app/src/main/java/org/fdroid/fdroid/RepoXMLHandler.java @@ -99,7 +99,7 @@ public class RepoXMLHandler extends DefaultHandler { curapk.version = str; break; case "versioncode": - curapk.vercode = Utils.parseInt(str, -1); + curapk.versionCode = Utils.parseInt(str, -1); break; case "size": curapk.size = Utils.parseInt(str, 0); diff --git a/app/src/main/java/org/fdroid/fdroid/data/Apk.java b/app/src/main/java/org/fdroid/fdroid/data/Apk.java index 1e7dc633f..9972ac2e9 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/Apk.java +++ b/app/src/main/java/org/fdroid/fdroid/data/Apk.java @@ -16,7 +16,7 @@ public class Apk extends ValueObject implements Comparable { public String packageName; public String version; - public int vercode; + public int versionCode; public int size; // Size in bytes - 0 means we don't know! public long repo; // ID of the repo it comes from public String hash; @@ -109,7 +109,7 @@ public class Apk extends ValueObject implements Comparable { version = cursor.getString(i); break; case ApkProvider.DataColumns.VERSION_CODE: - vercode = cursor.getInt(i); + versionCode = cursor.getInt(i); break; case ApkProvider.DataColumns.REPO_VERSION: repoVersion = cursor.getInt(i); @@ -123,14 +123,14 @@ public class Apk extends ValueObject implements Comparable { @Override public String toString() { - return packageName + " (version " + vercode + ")"; + return packageName + " (version " + versionCode + ")"; } public ContentValues toContentValues() { ContentValues values = new ContentValues(); values.put(ApkProvider.DataColumns.PACKAGE_NAME, packageName); values.put(ApkProvider.DataColumns.VERSION, version); - values.put(ApkProvider.DataColumns.VERSION_CODE, vercode); + values.put(ApkProvider.DataColumns.VERSION_CODE, versionCode); values.put(ApkProvider.DataColumns.REPO_ID, repo); values.put(ApkProvider.DataColumns.HASH, hash); values.put(ApkProvider.DataColumns.HASH_TYPE, hashType); @@ -153,9 +153,9 @@ public class Apk extends ValueObject implements Comparable { @TargetApi(19) public int compareTo(Apk apk) { if (Build.VERSION.SDK_INT < 19) { - return Integer.valueOf(vercode).compareTo(apk.vercode); + return Integer.valueOf(versionCode).compareTo(apk.versionCode); } - return Integer.compare(vercode, apk.vercode); + return Integer.compare(versionCode, apk.versionCode); } } diff --git a/app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java b/app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java index 8a0d8c519..031a3ce3d 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java +++ b/app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java @@ -34,7 +34,7 @@ public class ApkProvider extends FDroidProvider { public static void update(Context context, Apk apk) { ContentResolver resolver = context.getContentResolver(); - Uri uri = getContentUri(apk.packageName, apk.vercode); + Uri uri = getContentUri(apk.packageName, apk.versionCode); resolver.update(uri, apk.toContentValues(), null, null); } @@ -279,7 +279,7 @@ public class ApkProvider extends FDroidProvider { } public static Uri getContentUri(Apk apk) { - return getContentUri(apk.packageName, apk.vercode); + return getContentUri(apk.packageName, apk.versionCode); } public static Uri getContentUri(String packageName, int versionCode) { @@ -328,8 +328,8 @@ public class ApkProvider extends FDroidProvider { if (i != 0) { builder.append(','); } - final Apk a = apks.get(i); - builder.append(a.packageName).append(':').append(a.vercode); + final Apk apk = apks.get(i); + builder.append(apk.packageName).append(':').append(apk.versionCode); } return builder.toString(); } diff --git a/app/src/main/java/org/fdroid/fdroid/data/App.java b/app/src/main/java/org/fdroid/fdroid/data/App.java index ea2c20f75..9065b2a58 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/App.java +++ b/app/src/main/java/org/fdroid/fdroid/data/App.java @@ -276,7 +276,7 @@ public class App extends ValueObject implements Comparable { final SanitizedFile apkFile = SanitizedFile.knownSanitized(appInfo.publicSourceDir); final Apk apk = new Apk(); apk.version = packageInfo.versionName; - apk.vercode = packageInfo.versionCode; + apk.versionCode = packageInfo.versionCode; apk.hashType = "sha256"; apk.hash = Utils.getBinaryHash(apkFile, apk.hashType); apk.added = this.added; @@ -285,7 +285,7 @@ public class App extends ValueObject implements Comparable { apk.packageName = this.packageName; apk.installedFile = apkFile; apk.permissions = Utils.CommaSeparatedList.make(packageInfo.requestedPermissions); - apk.apkName = apk.packageName + "_" + apk.vercode + ".apk"; + apk.apkName = apk.packageName + "_" + apk.versionCode + ".apk"; final FeatureInfo[] features = packageInfo.reqFeatures; if (features != null && features.length > 0) { diff --git a/app/src/main/java/org/fdroid/fdroid/data/RepoPersister.java b/app/src/main/java/org/fdroid/fdroid/data/RepoPersister.java index 5ec7e86e9..ca05dd631 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/RepoPersister.java +++ b/app/src/main/java/org/fdroid/fdroid/data/RepoPersister.java @@ -169,7 +169,7 @@ public class RepoPersister { for (Apk apk : packages) { boolean exists = false; for (Apk existing : existingApks) { - if (existing.packageName.equals(apk.packageName) && existing.vercode == apk.vercode) { + if (existing.packageName.equals(apk.packageName) && existing.versionCode == apk.versionCode) { exists = true; break; } @@ -256,7 +256,7 @@ public class RepoPersister { if (packages.containsKey(existingApk.packageName)) { for (Apk newApk : packages.get(existingApk.packageName)) { - if (newApk.vercode == existingApk.vercode) { + if (newApk.versionCode == existingApk.versionCode) { shouldStay = true; break; } diff --git a/app/src/main/java/org/fdroid/fdroid/data/TempApkProvider.java b/app/src/main/java/org/fdroid/fdroid/data/TempApkProvider.java index 26765fa75..831b231ba 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/TempApkProvider.java +++ b/app/src/main/java/org/fdroid/fdroid/data/TempApkProvider.java @@ -49,7 +49,7 @@ public class TempApkProvider extends ApkProvider { return getContentUri() .buildUpon() .appendPath(PATH_APK) - .appendPath(Integer.toString(apk.vercode)) + .appendPath(Integer.toString(apk.versionCode)) .appendPath(apk.packageName) .build(); } diff --git a/app/src/main/java/org/fdroid/fdroid/localrepo/LocalRepoManager.java b/app/src/main/java/org/fdroid/fdroid/localrepo/LocalRepoManager.java index 5ae72b52b..c98c33694 100644 --- a/app/src/main/java/org/fdroid/fdroid/localrepo/LocalRepoManager.java +++ b/app/src/main/java/org/fdroid/fdroid/localrepo/LocalRepoManager.java @@ -293,7 +293,7 @@ public final class LocalRepoManager { if (app.installedApk != null) { try { appInfo = pm.getApplicationInfo(app.packageName, PackageManager.GET_META_DATA); - copyIconToRepo(appInfo.loadIcon(pm), app.packageName, app.installedApk.vercode); + copyIconToRepo(appInfo.loadIcon(pm), app.packageName, app.installedApk.versionCode); } catch (PackageManager.NameNotFoundException e) { Log.e(TAG, "Error getting app icon", e); } @@ -439,7 +439,7 @@ public final class LocalRepoManager { tag("source", "source"); tag("tracker", "tracker"); tag("marketversion", app.installedApk.version); - tag("marketvercode", app.installedApk.vercode); + tag("marketvercode", app.installedApk.versionCode); tagPackage(app); @@ -450,7 +450,7 @@ public final class LocalRepoManager { serializer.startTag("", "package"); tag("version", app.installedApk.version); - tag("versioncode", app.installedApk.vercode); + tag("versioncode", app.installedApk.versionCode); tag("apkname", app.installedApk.apkName); tagHash(app); tag("sig", app.installedApk.sig.toLowerCase(Locale.US)); From 4d8e4101765ce5ba82c2e42dcf82caa7a1c7256b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Mart=C3=AD?= Date: Tue, 19 Apr 2016 12:00:17 +0100 Subject: [PATCH 2/7] Rename Apk.version to Apk.versionName Updates #37. --- .../java/org/fdroid/fdroid/ApkProviderHelperTest.java | 6 +++--- app/src/androidTest/java/org/fdroid/fdroid/TestUtils.java | 2 +- app/src/main/java/org/fdroid/fdroid/AppDetails.java | 4 ++-- app/src/main/java/org/fdroid/fdroid/RepoXMLHandler.java | 2 +- app/src/main/java/org/fdroid/fdroid/data/Apk.java | 8 ++++---- app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java | 6 +++--- app/src/main/java/org/fdroid/fdroid/data/App.java | 2 +- app/src/main/java/org/fdroid/fdroid/data/AppProvider.java | 2 +- .../org/fdroid/fdroid/localrepo/LocalRepoManager.java | 4 ++-- 9 files changed, 18 insertions(+), 18 deletions(-) diff --git a/app/src/androidTest/java/org/fdroid/fdroid/ApkProviderHelperTest.java b/app/src/androidTest/java/org/fdroid/fdroid/ApkProviderHelperTest.java index 2ab571652..846f7194f 100644 --- a/app/src/androidTest/java/org/fdroid/fdroid/ApkProviderHelperTest.java +++ b/app/src/androidTest/java/org/fdroid/fdroid/ApkProviderHelperTest.java @@ -170,7 +170,7 @@ public class ApkProviderHelperTest extends BaseApkProviderTest { } ContentValues values = new ContentValues(); - values.put(ApkProvider.DataColumns.VERSION, "v1.1"); + values.put(ApkProvider.DataColumns.VERSION_NAME, "v1.1"); values.put(ApkProvider.DataColumns.HASH, "xxxxyyyy"); values.put(ApkProvider.DataColumns.HASH_TYPE, "a hash type"); TestUtils.insertApk(this, "com.example", 11, values); @@ -188,7 +188,7 @@ public class ApkProviderHelperTest extends BaseApkProviderTest { // so we expect to find each of the ones we inserted above... assertEquals("com.example", apk.packageName); assertEquals(11, apk.versionCode); - assertEquals("v1.1", apk.version); + assertEquals("v1.1", apk.versionName); assertEquals("xxxxyyyy", apk.hash); assertEquals("a hash type", apk.hashType); @@ -206,7 +206,7 @@ public class ApkProviderHelperTest extends BaseApkProviderTest { // Didn't ask for these fields, so should be their default values... assertNull(apkLessFields.hashType); - assertNull(apkLessFields.version); + assertNull(apkLessFields.versionName); assertEquals(0, apkLessFields.versionCode); Apk notFound = ApkProvider.Helper.find(getMockContext(), "com.doesnt.exist", 1000); diff --git a/app/src/androidTest/java/org/fdroid/fdroid/TestUtils.java b/app/src/androidTest/java/org/fdroid/fdroid/TestUtils.java index f2b41032b..7b6fc2abf 100644 --- a/app/src/androidTest/java/org/fdroid/fdroid/TestUtils.java +++ b/app/src/androidTest/java/org/fdroid/fdroid/TestUtils.java @@ -132,7 +132,7 @@ public class TestUtils { // Required fields (NOT NULL in the database). values.put(ApkProvider.DataColumns.REPO_ID, 1); - values.put(ApkProvider.DataColumns.VERSION, "The good one"); + values.put(ApkProvider.DataColumns.VERSION_NAME, "The good one"); values.put(ApkProvider.DataColumns.HASH, "11111111aaaaaaaa"); values.put(ApkProvider.DataColumns.NAME, "Test Apk"); values.put(ApkProvider.DataColumns.SIZE, 10000); diff --git a/app/src/main/java/org/fdroid/fdroid/AppDetails.java b/app/src/main/java/org/fdroid/fdroid/AppDetails.java index fad18ed43..5b0ca256e 100644 --- a/app/src/main/java/org/fdroid/fdroid/AppDetails.java +++ b/app/src/main/java/org/fdroid/fdroid/AppDetails.java @@ -210,7 +210,7 @@ public class AppDetails extends AppCompatActivity { } holder.version.setText(getString(R.string.version) - + " " + apk.version + + " " + apk.versionName + (apk.versionCode == app.suggestedVercode ? " ☆" : "")); holder.status.setText(getInstalledStatus(apk)); @@ -1538,7 +1538,7 @@ public class AppDetails extends AppCompatActivity { } TextView currentVersion = (TextView) view.findViewById(R.id.current_version); if (!appDetails.getApks().isEmpty()) { - currentVersion.setText(appDetails.getApks().getItem(0).version + " (" + app.license + ")"); + currentVersion.setText(appDetails.getApks().getItem(0).versionName + " (" + app.license + ")"); } else { currentVersion.setVisibility(View.GONE); btMain.setVisibility(View.GONE); diff --git a/app/src/main/java/org/fdroid/fdroid/RepoXMLHandler.java b/app/src/main/java/org/fdroid/fdroid/RepoXMLHandler.java index be9149443..7a47c2ba8 100644 --- a/app/src/main/java/org/fdroid/fdroid/RepoXMLHandler.java +++ b/app/src/main/java/org/fdroid/fdroid/RepoXMLHandler.java @@ -96,7 +96,7 @@ public class RepoXMLHandler extends DefaultHandler { if (curapk != null) { switch (localName) { case "version": - curapk.version = str; + curapk.versionName = str; break; case "versioncode": curapk.versionCode = Utils.parseInt(str, -1); diff --git a/app/src/main/java/org/fdroid/fdroid/data/Apk.java b/app/src/main/java/org/fdroid/fdroid/data/Apk.java index 9972ac2e9..387312940 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/Apk.java +++ b/app/src/main/java/org/fdroid/fdroid/data/Apk.java @@ -15,7 +15,7 @@ public class Apk extends ValueObject implements Comparable { public static final int SDK_VERSION_MAX_VALUE = Byte.MAX_VALUE; public String packageName; - public String version; + public String versionName; public int versionCode; public int size; // Size in bytes - 0 means we don't know! public long repo; // ID of the repo it comes from @@ -105,8 +105,8 @@ public class Apk extends ValueObject implements Comparable { case ApkProvider.DataColumns.SOURCE_NAME: srcname = cursor.getString(i); break; - case ApkProvider.DataColumns.VERSION: - version = cursor.getString(i); + case ApkProvider.DataColumns.VERSION_NAME: + versionName = cursor.getString(i); break; case ApkProvider.DataColumns.VERSION_CODE: versionCode = cursor.getInt(i); @@ -129,7 +129,7 @@ public class Apk extends ValueObject implements Comparable { public ContentValues toContentValues() { ContentValues values = new ContentValues(); values.put(ApkProvider.DataColumns.PACKAGE_NAME, packageName); - values.put(ApkProvider.DataColumns.VERSION, version); + values.put(ApkProvider.DataColumns.VERSION_NAME, versionName); values.put(ApkProvider.DataColumns.VERSION_CODE, versionCode); values.put(ApkProvider.DataColumns.REPO_ID, repo); values.put(ApkProvider.DataColumns.HASH, hash); diff --git a/app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java b/app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java index 031a3ce3d..01e27b306 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java +++ b/app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java @@ -195,7 +195,7 @@ public class ApkProvider extends FDroidProvider { String _COUNT_DISTINCT_ID = "countDistinct"; String PACKAGE_NAME = "id"; - String VERSION = "version"; + String VERSION_NAME = "version"; String REPO_ID = "repo"; String HASH = "hash"; String VERSION_CODE = "vercode"; @@ -216,8 +216,8 @@ public class ApkProvider extends FDroidProvider { String REPO_ADDRESS = "repoAddress"; String[] ALL = { - _ID, PACKAGE_NAME, VERSION, REPO_ID, HASH, VERSION_CODE, NAME, SIZE, - SIGNATURE, SOURCE_NAME, MIN_SDK_VERSION, MAX_SDK_VERSION, + _ID, PACKAGE_NAME, VERSION_NAME, REPO_ID, HASH, VERSION_CODE, NAME, + SIZE, SIGNATURE, SOURCE_NAME, MIN_SDK_VERSION, MAX_SDK_VERSION, PERMISSIONS, FEATURES, NATIVE_CODE, HASH_TYPE, ADDED_DATE, IS_COMPATIBLE, REPO_VERSION, REPO_ADDRESS, INCOMPATIBLE_REASONS, }; diff --git a/app/src/main/java/org/fdroid/fdroid/data/App.java b/app/src/main/java/org/fdroid/fdroid/data/App.java index 9065b2a58..d03156f4f 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/App.java +++ b/app/src/main/java/org/fdroid/fdroid/data/App.java @@ -275,7 +275,7 @@ public class App extends ValueObject implements Comparable { final SanitizedFile apkFile = SanitizedFile.knownSanitized(appInfo.publicSourceDir); final Apk apk = new Apk(); - apk.version = packageInfo.versionName; + apk.versionName = packageInfo.versionName; apk.versionCode = packageInfo.versionCode; apk.hashType = "sha256"; apk.hash = Utils.getBinaryHash(apkFile, apk.hashType); diff --git a/app/src/main/java/org/fdroid/fdroid/data/AppProvider.java b/app/src/main/java/org/fdroid/fdroid/data/AppProvider.java index 9ba2da081..c9e30dde7 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/AppProvider.java +++ b/app/src/main/java/org/fdroid/fdroid/data/AppProvider.java @@ -379,7 +379,7 @@ public class AppProvider extends FDroidProvider { private void addSuggestedApkVersionField() { addSuggestedApkField( - ApkProvider.DataColumns.VERSION, + ApkProvider.DataColumns.VERSION_NAME, DataColumns.SuggestedApk.VERSION); } diff --git a/app/src/main/java/org/fdroid/fdroid/localrepo/LocalRepoManager.java b/app/src/main/java/org/fdroid/fdroid/localrepo/LocalRepoManager.java index c98c33694..3ab5a2f67 100644 --- a/app/src/main/java/org/fdroid/fdroid/localrepo/LocalRepoManager.java +++ b/app/src/main/java/org/fdroid/fdroid/localrepo/LocalRepoManager.java @@ -438,7 +438,7 @@ public final class LocalRepoManager { tag("web", "web"); tag("source", "source"); tag("tracker", "tracker"); - tag("marketversion", app.installedApk.version); + tag("marketversion", app.installedApk.versionName); tag("marketvercode", app.installedApk.versionCode); tagPackage(app); @@ -449,7 +449,7 @@ public final class LocalRepoManager { private void tagPackage(App app) throws IOException { serializer.startTag("", "package"); - tag("version", app.installedApk.version); + tag("version", app.installedApk.versionName); tag("versioncode", app.installedApk.versionCode); tag("apkname", app.installedApk.apkName); tagHash(app); From cde57efb9851fac731d82add9763883add0e57f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Mart=C3=AD?= Date: Tue, 19 Apr 2016 12:03:05 +0100 Subject: [PATCH 3/7] Rename App.suggestedVercode to App.suggestedVersionCode Updates #37. --- .../java/org/fdroid/fdroid/AppDetails.java | 24 +++++++++---------- .../java/org/fdroid/fdroid/UpdateService.java | 2 +- .../main/java/org/fdroid/fdroid/data/App.java | 15 ++++++------ .../fdroid/fdroid/views/AppListAdapter.java | 2 +- .../fdroid/views/swap/SwapAppsView.java | 2 +- .../views/swap/SwapWorkflowActivity.java | 2 +- 6 files changed, 24 insertions(+), 23 deletions(-) diff --git a/app/src/main/java/org/fdroid/fdroid/AppDetails.java b/app/src/main/java/org/fdroid/fdroid/AppDetails.java index 5b0ca256e..a295724d0 100644 --- a/app/src/main/java/org/fdroid/fdroid/AppDetails.java +++ b/app/src/main/java/org/fdroid/fdroid/AppDetails.java @@ -211,7 +211,7 @@ public class AppDetails extends AppCompatActivity { holder.version.setText(getString(R.string.version) + " " + apk.versionName - + (apk.versionCode == app.suggestedVercode ? " ☆" : "")); + + (apk.versionCode == app.suggestedVersionCode ? " ☆" : "")); holder.status.setText(getInstalledStatus(apk)); @@ -661,7 +661,7 @@ public class AppDetails extends AppCompatActivity { menu.add(Menu.NONE, IGNORETHIS, 2, R.string.menu_ignore_this) .setIcon(R.drawable.ic_do_not_disturb_white) .setCheckable(true) - .setChecked(app.ignoreThisUpdate >= app.suggestedVercode); + .setChecked(app.ignoreThisUpdate >= app.suggestedVersionCode); } // Ignore on devices without Bluetooth @@ -766,8 +766,8 @@ public class AppDetails extends AppCompatActivity { case INSTALL: // Note that this handles updating as well as installing. - if (app.suggestedVercode > 0) { - final Apk apkToInstall = ApkProvider.Helper.find(this, app.packageName, app.suggestedVercode); + if (app.suggestedVersionCode > 0) { + final Apk apkToInstall = ApkProvider.Helper.find(this, app.packageName, app.suggestedVersionCode); install(apkToInstall); } return true; @@ -782,10 +782,10 @@ public class AppDetails extends AppCompatActivity { return true; case IGNORETHIS: - if (app.ignoreThisUpdate >= app.suggestedVercode) { + if (app.ignoreThisUpdate >= app.suggestedVersionCode) { app.ignoreThisUpdate = 0; } else { - app.ignoreThisUpdate = app.suggestedVercode; + app.ignoreThisUpdate = app.suggestedVersionCode; } item.setChecked(app.ignoreThisUpdate > 0); return true; @@ -1246,7 +1246,7 @@ public class AppDetails extends AppCompatActivity { Apk curApk = null; for (int i = 0; i < appDetails.getApks().getCount(); i++) { final Apk apk = appDetails.getApks().getItem(i); - if (apk.versionCode == app.suggestedVercode) { + if (apk.versionCode == app.suggestedVersionCode) { curApk = apk; break; } @@ -1498,7 +1498,7 @@ public class AppDetails extends AppCompatActivity { if (appDetails.activeDownloadUrlString != null) { btMain.setText(R.string.downloading); btMain.setEnabled(false); - } else if (!app.isInstalled() && app.suggestedVercode > 0 && + } else if (!app.isInstalled() && app.suggestedVersionCode > 0 && appDetails.adapter.getCount() > 0) { // Check count > 0 due to incompatible apps resulting in an empty list. // If App isn't installed @@ -1550,8 +1550,8 @@ public class AppDetails extends AppCompatActivity { public void onClick(View v) { App app = appDetails.getApp(); AppDetails activity = (AppDetails) getActivity(); - if (updateWanted && app.suggestedVercode > 0) { - Apk apkToInstall = ApkProvider.Helper.find(activity, app.packageName, app.suggestedVercode); + if (updateWanted && app.suggestedVersionCode > 0) { + Apk apkToInstall = ApkProvider.Helper.find(activity, app.packageName, app.suggestedVersionCode); activity.install(apkToInstall); return; } @@ -1563,11 +1563,11 @@ public class AppDetails extends AppCompatActivity { } else { activity.removeApk(app.packageName); } - } else if (app.suggestedVercode > 0) { + } else if (app.suggestedVersionCode > 0) { // If not installed, install btMain.setEnabled(false); btMain.setText(R.string.system_install_installing); - final Apk apkToInstall = ApkProvider.Helper.find(activity, app.packageName, app.suggestedVercode); + final Apk apkToInstall = ApkProvider.Helper.find(activity, app.packageName, app.suggestedVersionCode); activity.install(apkToInstall); } } diff --git a/app/src/main/java/org/fdroid/fdroid/UpdateService.java b/app/src/main/java/org/fdroid/fdroid/UpdateService.java index f27dcb3aa..3c2605b7b 100644 --- a/app/src/main/java/org/fdroid/fdroid/UpdateService.java +++ b/app/src/main/java/org/fdroid/fdroid/UpdateService.java @@ -492,7 +492,7 @@ public class UpdateService extends IntentService implements ProgressListener { cursor.moveToFirst(); for (int i = 0; i < cursor.getCount(); i++) { App app = new App(cursor); - Apk apk = ApkProvider.Helper.find(this, app.packageName, app.suggestedVercode, new String[]{ + Apk apk = ApkProvider.Helper.find(this, app.packageName, app.suggestedVersionCode, new String[]{ ApkProvider.DataColumns.NAME, }); String urlString = Utils.getApkUrl(repoAddress, apk); diff --git a/app/src/main/java/org/fdroid/fdroid/data/App.java b/app/src/main/java/org/fdroid/fdroid/data/App.java index d03156f4f..cfee9607b 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/App.java +++ b/app/src/main/java/org/fdroid/fdroid/data/App.java @@ -65,11 +65,12 @@ public class App extends ValueObject implements Comparable { /** * Unlike other public fields, this is only accessible via a getter, to * emphasise that setting it wont do anything. In order to change this, - * you need to change suggestedVercode to an apk which is in the apk table. + * you need to change suggestedVersionCode to an apk which is in the + * apk table. */ private String suggestedVersion; - public int suggestedVercode; + public int suggestedVersionCode; public Date added; public Date lastUpdated; @@ -176,7 +177,7 @@ public class App extends ValueObject implements Comparable { suggestedVersion = cursor.getString(i); break; case AppProvider.DataColumns.SUGGESTED_VERSION_CODE: - suggestedVercode = cursor.getInt(i); + suggestedVersionCode = cursor.getInt(i); break; case AppProvider.DataColumns.UPSTREAM_VERSION_CODE: upstreamVercode = cursor.getInt(i); @@ -402,7 +403,7 @@ public class App extends ValueObject implements Comparable { values.put(AppProvider.DataColumns.FLATTR_ID, flattrID); values.put(AppProvider.DataColumns.ADDED, Utils.formatDate(added, "")); values.put(AppProvider.DataColumns.LAST_UPDATED, Utils.formatDate(lastUpdated, "")); - values.put(AppProvider.DataColumns.SUGGESTED_VERSION_CODE, suggestedVercode); + values.put(AppProvider.DataColumns.SUGGESTED_VERSION_CODE, suggestedVersionCode); values.put(AppProvider.DataColumns.UPSTREAM_VERSION, upstreamVersion); values.put(AppProvider.DataColumns.UPSTREAM_VERSION_CODE, upstreamVercode); values.put(AppProvider.DataColumns.CATEGORIES, Utils.CommaSeparatedList.str(categories)); @@ -424,8 +425,8 @@ public class App extends ValueObject implements Comparable { */ public boolean hasUpdates() { boolean updates = false; - if (suggestedVercode > 0) { - updates = installedVersionCode > 0 && installedVersionCode < suggestedVercode; + if (suggestedVersionCode > 0) { + updates = installedVersionCode > 0 && installedVersionCode < suggestedVersionCode; } return updates; } @@ -434,7 +435,7 @@ public class App extends ValueObject implements Comparable { // to be notified about them public boolean canAndWantToUpdate() { boolean canUpdate = hasUpdates(); - boolean wantsUpdate = !ignoreAllUpdates && ignoreThisUpdate < suggestedVercode; + boolean wantsUpdate = !ignoreAllUpdates && ignoreThisUpdate < suggestedVersionCode; return canUpdate && wantsUpdate && !isFiltered(); } diff --git a/app/src/main/java/org/fdroid/fdroid/views/AppListAdapter.java b/app/src/main/java/org/fdroid/fdroid/views/AppListAdapter.java index d21f3ae0d..c2c148b56 100644 --- a/app/src/main/java/org/fdroid/fdroid/views/AppListAdapter.java +++ b/app/src/main/java/org/fdroid/fdroid/views/AppListAdapter.java @@ -113,7 +113,7 @@ public abstract class AppListAdapter extends CursorAdapter { private String getVersionInfo(App app) { - if (app.suggestedVercode <= 0) { + if (app.suggestedVersionCode <= 0) { return null; } diff --git a/app/src/main/java/org/fdroid/fdroid/views/swap/SwapAppsView.java b/app/src/main/java/org/fdroid/fdroid/views/swap/SwapAppsView.java index ef4080b87..8c37d6833 100644 --- a/app/src/main/java/org/fdroid/fdroid/views/swap/SwapAppsView.java +++ b/app/src/main/java/org/fdroid/fdroid/views/swap/SwapAppsView.java @@ -336,7 +336,7 @@ public class SwapAppsView extends ListView implements */ private Apk getApkToInstall() { if (apkToInstall == null) { - apkToInstall = ApkProvider.Helper.find(getActivity(), app.packageName, app.suggestedVercode); + apkToInstall = ApkProvider.Helper.find(getActivity(), app.packageName, app.suggestedVersionCode); } return apkToInstall; } diff --git a/app/src/main/java/org/fdroid/fdroid/views/swap/SwapWorkflowActivity.java b/app/src/main/java/org/fdroid/fdroid/views/swap/SwapWorkflowActivity.java index 2586224be..5caf91554 100644 --- a/app/src/main/java/org/fdroid/fdroid/views/swap/SwapWorkflowActivity.java +++ b/app/src/main/java/org/fdroid/fdroid/views/swap/SwapWorkflowActivity.java @@ -782,7 +782,7 @@ public class SwapWorkflowActivity extends AppCompatActivity { } public void install(@NonNull final App app) { - final Apk apk = ApkProvider.Helper.find(this, app.packageName, app.suggestedVercode); + final Apk apk = ApkProvider.Helper.find(this, app.packageName, app.suggestedVersionCode); String urlString = Utils.getApkUrl(apk.repoAddress, apk); downloadCompleteReceiver = new BroadcastReceiver() { @Override From 550f04cc8b7f5f26e5a92d933b3a040008e6d002 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Mart=C3=AD?= Date: Tue, 19 Apr 2016 12:05:29 +0100 Subject: [PATCH 4/7] Rename App's upstream vars to VersionCode/Name Updates #37. --- .../java/org/fdroid/fdroid/RepoXMLHandler.java | 4 ++-- app/src/main/java/org/fdroid/fdroid/data/App.java | 14 +++++++------- .../java/org/fdroid/fdroid/data/AppProvider.java | 4 ++-- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/app/src/main/java/org/fdroid/fdroid/RepoXMLHandler.java b/app/src/main/java/org/fdroid/fdroid/RepoXMLHandler.java index 7a47c2ba8..474a42a9a 100644 --- a/app/src/main/java/org/fdroid/fdroid/RepoXMLHandler.java +++ b/app/src/main/java/org/fdroid/fdroid/RepoXMLHandler.java @@ -204,10 +204,10 @@ public class RepoXMLHandler extends DefaultHandler { curapp.lastUpdated = Utils.parseDate(str, null); break; case "marketversion": - curapp.upstreamVersion = str; + curapp.upstreamVersionName = str; break; case "marketvercode": - curapp.upstreamVercode = Utils.parseInt(str, -1); + curapp.upstreamVersionCode = Utils.parseInt(str, -1); break; case "categories": curapp.categories = Utils.CommaSeparatedList.make(str); diff --git a/app/src/main/java/org/fdroid/fdroid/data/App.java b/app/src/main/java/org/fdroid/fdroid/data/App.java index cfee9607b..7490c3ea3 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/App.java +++ b/app/src/main/java/org/fdroid/fdroid/data/App.java @@ -59,8 +59,8 @@ public class App extends ValueObject implements Comparable { public String flattrID; - public String upstreamVersion; - public int upstreamVercode; + public String upstreamVersionName; + public int upstreamVersionCode; /** * Unlike other public fields, this is only accessible via a getter, to @@ -180,10 +180,10 @@ public class App extends ValueObject implements Comparable { suggestedVersionCode = cursor.getInt(i); break; case AppProvider.DataColumns.UPSTREAM_VERSION_CODE: - upstreamVercode = cursor.getInt(i); + upstreamVersionCode = cursor.getInt(i); break; - case AppProvider.DataColumns.UPSTREAM_VERSION: - upstreamVersion = cursor.getString(i); + case AppProvider.DataColumns.UPSTREAM_VERSION_NAME: + upstreamVersionName = cursor.getString(i); break; case AppProvider.DataColumns.ADDED: added = Utils.parseDate(cursor.getString(i), null); @@ -404,8 +404,8 @@ public class App extends ValueObject implements Comparable { values.put(AppProvider.DataColumns.ADDED, Utils.formatDate(added, "")); values.put(AppProvider.DataColumns.LAST_UPDATED, Utils.formatDate(lastUpdated, "")); values.put(AppProvider.DataColumns.SUGGESTED_VERSION_CODE, suggestedVersionCode); - values.put(AppProvider.DataColumns.UPSTREAM_VERSION, upstreamVersion); - values.put(AppProvider.DataColumns.UPSTREAM_VERSION_CODE, upstreamVercode); + values.put(AppProvider.DataColumns.UPSTREAM_VERSION_NAME, upstreamVersionName); + values.put(AppProvider.DataColumns.UPSTREAM_VERSION_CODE, upstreamVersionCode); values.put(AppProvider.DataColumns.CATEGORIES, Utils.CommaSeparatedList.str(categories)); values.put(AppProvider.DataColumns.ANTI_FEATURES, Utils.CommaSeparatedList.str(antiFeatures)); values.put(AppProvider.DataColumns.REQUIREMENTS, Utils.CommaSeparatedList.str(requirements)); diff --git a/app/src/main/java/org/fdroid/fdroid/data/AppProvider.java b/app/src/main/java/org/fdroid/fdroid/data/AppProvider.java index c9e30dde7..98d9b7406 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/AppProvider.java +++ b/app/src/main/java/org/fdroid/fdroid/data/AppProvider.java @@ -191,7 +191,7 @@ public class AppProvider extends FDroidProvider { String LITECOIN_ADDR = "litecoinAddr"; String FLATTR_ID = "flattrID"; String SUGGESTED_VERSION_CODE = "suggestedVercode"; - String UPSTREAM_VERSION = "upstreamVersion"; + String UPSTREAM_VERSION_NAME = "upstreamVersion"; String UPSTREAM_VERSION_CODE = "upstreamVercode"; String ADDED = "added"; String LAST_UPDATED = "lastUpdated"; @@ -217,7 +217,7 @@ public class AppProvider extends FDroidProvider { _ID, IS_COMPATIBLE, PACKAGE_NAME, NAME, SUMMARY, ICON, DESCRIPTION, LICENSE, AUTHOR, EMAIL, WEB_URL, TRACKER_URL, SOURCE_URL, CHANGELOG_URL, DONATE_URL, BITCOIN_ADDR, LITECOIN_ADDR, FLATTR_ID, - UPSTREAM_VERSION, UPSTREAM_VERSION_CODE, ADDED, LAST_UPDATED, + UPSTREAM_VERSION_NAME, UPSTREAM_VERSION_CODE, ADDED, LAST_UPDATED, CATEGORIES, ANTI_FEATURES, REQUIREMENTS, IGNORE_ALLUPDATES, IGNORE_THISUPDATE, ICON_URL, ICON_URL_LARGE, SUGGESTED_VERSION_CODE, SuggestedApk.VERSION, From 0ec9689a6ca461f8d5f4d587080d5a7e23e39f99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Mart=C3=AD?= Date: Tue, 19 Apr 2016 12:09:02 +0100 Subject: [PATCH 5/7] Rename App's suggestedVersion to suggestedVersionName --- app/src/main/java/org/fdroid/fdroid/UpdateService.java | 2 +- app/src/main/java/org/fdroid/fdroid/data/App.java | 10 +++++----- .../main/java/org/fdroid/fdroid/data/AppProvider.java | 8 ++++---- .../java/org/fdroid/fdroid/views/AppListAdapter.java | 4 ++-- .../fdroid/fdroid/views/fragments/AppListFragment.java | 2 +- 5 files changed, 13 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/org/fdroid/fdroid/UpdateService.java b/app/src/main/java/org/fdroid/fdroid/UpdateService.java index 3c2605b7b..a9a631a4a 100644 --- a/app/src/main/java/org/fdroid/fdroid/UpdateService.java +++ b/app/src/main/java/org/fdroid/fdroid/UpdateService.java @@ -471,7 +471,7 @@ public class UpdateService extends IntentService implements ProgressListener { for (int i = 0; i < Math.min(hasUpdates.getCount(), MAX_UPDATES_TO_SHOW); i++) { App app = new App(hasUpdates); hasUpdates.moveToNext(); - inboxStyle.addLine(app.name + " (" + app.installedVersionName + " → " + app.getSuggestedVersion() + ")"); + inboxStyle.addLine(app.name + " (" + app.installedVersionName + " → " + app.getSuggestedVersionName() + ")"); } if (hasUpdates.getCount() > MAX_UPDATES_TO_SHOW) { diff --git a/app/src/main/java/org/fdroid/fdroid/data/App.java b/app/src/main/java/org/fdroid/fdroid/data/App.java index 7490c3ea3..dda0ae0ba 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/App.java +++ b/app/src/main/java/org/fdroid/fdroid/data/App.java @@ -68,7 +68,7 @@ public class App extends ValueObject implements Comparable { * you need to change suggestedVersionCode to an apk which is in the * apk table. */ - private String suggestedVersion; + private String suggestedVersionName; public int suggestedVersionCode; @@ -173,8 +173,8 @@ public class App extends ValueObject implements Comparable { case AppProvider.DataColumns.FLATTR_ID: flattrID = cursor.getString(i); break; - case AppProvider.DataColumns.SuggestedApk.VERSION: - suggestedVersion = cursor.getString(i); + case AppProvider.DataColumns.SuggestedApk.VERSION_NAME: + suggestedVersionName = cursor.getString(i); break; case AppProvider.DataColumns.SUGGESTED_VERSION_CODE: suggestedVersionCode = cursor.getInt(i); @@ -445,7 +445,7 @@ public class App extends ValueObject implements Comparable { return new AppFilter().filter(this); } - public String getSuggestedVersion() { - return suggestedVersion; + public String getSuggestedVersionName() { + return suggestedVersionName; } } diff --git a/app/src/main/java/org/fdroid/fdroid/data/AppProvider.java b/app/src/main/java/org/fdroid/fdroid/data/AppProvider.java index 98d9b7406..4116638bb 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/AppProvider.java +++ b/app/src/main/java/org/fdroid/fdroid/data/AppProvider.java @@ -204,7 +204,7 @@ public class AppProvider extends FDroidProvider { String ICON_URL_LARGE = "iconUrlLarge"; interface SuggestedApk { - String VERSION = "suggestedApkVersion"; + String VERSION_NAME = "suggestedApkVersion"; } interface InstalledApp { @@ -220,7 +220,7 @@ public class AppProvider extends FDroidProvider { UPSTREAM_VERSION_NAME, UPSTREAM_VERSION_CODE, ADDED, LAST_UPDATED, CATEGORIES, ANTI_FEATURES, REQUIREMENTS, IGNORE_ALLUPDATES, IGNORE_THISUPDATE, ICON_URL, ICON_URL_LARGE, - SUGGESTED_VERSION_CODE, SuggestedApk.VERSION, + SUGGESTED_VERSION_CODE, SuggestedApk.VERSION_NAME, InstalledApp.VERSION_CODE, InstalledApp.VERSION_NAME, InstalledApp.SIGNATURE, }; @@ -348,7 +348,7 @@ public class AppProvider extends FDroidProvider { @Override public void addField(String field) { switch (field) { - case DataColumns.SuggestedApk.VERSION: + case DataColumns.SuggestedApk.VERSION_NAME: addSuggestedApkVersionField(); break; case DataColumns.InstalledApp.VERSION_NAME: @@ -380,7 +380,7 @@ public class AppProvider extends FDroidProvider { private void addSuggestedApkVersionField() { addSuggestedApkField( ApkProvider.DataColumns.VERSION_NAME, - DataColumns.SuggestedApk.VERSION); + DataColumns.SuggestedApk.VERSION_NAME); } private void addSuggestedApkField(String fieldName, String alias) { diff --git a/app/src/main/java/org/fdroid/fdroid/views/AppListAdapter.java b/app/src/main/java/org/fdroid/fdroid/views/AppListAdapter.java index c2c148b56..a1f222dc0 100644 --- a/app/src/main/java/org/fdroid/fdroid/views/AppListAdapter.java +++ b/app/src/main/java/org/fdroid/fdroid/views/AppListAdapter.java @@ -118,14 +118,14 @@ public abstract class AppListAdapter extends CursorAdapter { } if (!app.isInstalled()) { - return app.getSuggestedVersion(); + return app.getSuggestedVersionName(); } final String installedVersionString = app.installedVersionName; if (app.canAndWantToUpdate() && showStatusUpdate()) { return String.format(upgradeFromTo, - installedVersionString, app.getSuggestedVersion()); + installedVersionString, app.getSuggestedVersionName()); } if (app.installedVersionCode > 0 && showStatusInstalled()) { diff --git a/app/src/main/java/org/fdroid/fdroid/views/fragments/AppListFragment.java b/app/src/main/java/org/fdroid/fdroid/views/fragments/AppListFragment.java index 09f5ac069..3a37171a7 100644 --- a/app/src/main/java/org/fdroid/fdroid/views/fragments/AppListFragment.java +++ b/app/src/main/java/org/fdroid/fdroid/views/fragments/AppListFragment.java @@ -49,7 +49,7 @@ public abstract class AppListFragment extends ListFragment implements AppProvider.DataColumns.ICON_URL, AppProvider.DataColumns.InstalledApp.VERSION_CODE, AppProvider.DataColumns.InstalledApp.VERSION_NAME, - AppProvider.DataColumns.SuggestedApk.VERSION, + AppProvider.DataColumns.SuggestedApk.VERSION_NAME, AppProvider.DataColumns.SUGGESTED_VERSION_CODE, AppProvider.DataColumns.IGNORE_ALLUPDATES, AppProvider.DataColumns.IGNORE_THISUPDATE, From 865d537745b2058eac70bc32197cb78769b915ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Mart=C3=AD?= Date: Tue, 19 Apr 2016 12:11:54 +0100 Subject: [PATCH 6/7] Rename Repo's pubkey to signingCertificate Updates #37. --- .../org/fdroid/fdroid/ApkProviderTest.java | 2 +- .../fdroid/fdroid/MultiRepoUpdaterTest.java | 4 ++-- .../org/fdroid/fdroid/RepoUpdaterTest.java | 4 ++-- .../org/fdroid/fdroid/RepoXMLHandlerTest.java | 16 ++++++++-------- .../java/org/fdroid/fdroid/RepoUpdater.java | 18 +++++++++--------- .../java/org/fdroid/fdroid/data/DBHelper.java | 10 +++++----- .../main/java/org/fdroid/fdroid/data/Repo.java | 16 ++++++++-------- .../org/fdroid/fdroid/data/RepoProvider.java | 8 ++++---- .../fdroid/views/ManageReposActivity.java | 2 +- .../fdroid/views/RepoDetailsActivity.java | 2 +- 10 files changed, 41 insertions(+), 41 deletions(-) diff --git a/app/src/androidTest/java/org/fdroid/fdroid/ApkProviderTest.java b/app/src/androidTest/java/org/fdroid/fdroid/ApkProviderTest.java index a8f2bd51b..814d90f57 100644 --- a/app/src/androidTest/java/org/fdroid/fdroid/ApkProviderTest.java +++ b/app/src/androidTest/java/org/fdroid/fdroid/ApkProviderTest.java @@ -291,7 +291,7 @@ public class ApkProviderTest extends BaseApkProviderTest { RepoProvider.DataColumns.ADDRESS, RepoProvider.DataColumns.FINGERPRINT, RepoProvider.DataColumns.NAME, - RepoProvider.DataColumns.PUBLIC_KEY, + RepoProvider.DataColumns.SIGNING_CERT, }; for (String field : repoFields) { diff --git a/app/src/androidTest/java/org/fdroid/fdroid/MultiRepoUpdaterTest.java b/app/src/androidTest/java/org/fdroid/fdroid/MultiRepoUpdaterTest.java index 6f498d3f6..7d0364623 100644 --- a/app/src/androidTest/java/org/fdroid/fdroid/MultiRepoUpdaterTest.java +++ b/app/src/androidTest/java/org/fdroid/fdroid/MultiRepoUpdaterTest.java @@ -405,12 +405,12 @@ public class MultiRepoUpdaterTest extends InstrumentationTestCase { private RepoUpdater createUpdater(String name, Context context) { Repo repo = new Repo(); - repo.pubkey = PUB_KEY; + repo.signingCertificate = PUB_KEY; repo.address = UUID.randomUUID().toString(); repo.name = name; ContentValues values = new ContentValues(2); - values.put(RepoProvider.DataColumns.PUBLIC_KEY, repo.pubkey); + values.put(RepoProvider.DataColumns.SIGNING_CERT, repo.signingCertificate); values.put(RepoProvider.DataColumns.ADDRESS, repo.address); values.put(RepoProvider.DataColumns.NAME, repo.name); diff --git a/app/src/androidTest/java/org/fdroid/fdroid/RepoUpdaterTest.java b/app/src/androidTest/java/org/fdroid/fdroid/RepoUpdaterTest.java index 95c95b65f..0d1468511 100644 --- a/app/src/androidTest/java/org/fdroid/fdroid/RepoUpdaterTest.java +++ b/app/src/androidTest/java/org/fdroid/fdroid/RepoUpdaterTest.java @@ -24,7 +24,7 @@ public class RepoUpdaterTest { private RepoUpdater repoUpdater; private File testFilesDir; - String simpleIndexPubkey = "308201ee30820157a0030201020204300d845b300d06092a864886f70d01010b0500302a3110300e060355040b1307462d44726f6964311630140603550403130d70616c6174736368696e6b656e301e170d3134303432373030303633315a170d3431303931323030303633315a302a3110300e060355040b1307462d44726f6964311630140603550403130d70616c6174736368696e6b656e30819f300d06092a864886f70d010101050003818d0030818902818100a439472e4b6d01141bfc94ecfe131c7c728fdda670bb14c57ca60bd1c38a8b8bc0879d22a0a2d0bc0d6fdd4cb98d1d607c2caefbe250a0bd0322aedeb365caf9b236992fac13e6675d3184a6c7c6f07f73410209e399a9da8d5d7512bbd870508eebacff8b57c3852457419434d34701ccbf692267cbc3f42f1c5d1e23762d790203010001a321301f301d0603551d0e041604140b1840691dab909746fde4bfe28207d1cae15786300d06092a864886f70d01010b05000381810062424c928ffd1b6fd419b44daafef01ca982e09341f7077fb865905087aeac882534b3bd679b51fdfb98892cef38b63131c567ed26c9d5d9163afc775ac98ad88c405d211d6187bde0b0d236381cc574ba06ef9080721a92ae5a103a7301b2c397eecc141cc850dd3e123813ebc41c59d31ddbcb6e984168280c53272f6a442b"; + String simpleIndexSigningCert = "308201ee30820157a0030201020204300d845b300d06092a864886f70d01010b0500302a3110300e060355040b1307462d44726f6964311630140603550403130d70616c6174736368696e6b656e301e170d3134303432373030303633315a170d3431303931323030303633315a302a3110300e060355040b1307462d44726f6964311630140603550403130d70616c6174736368696e6b656e30819f300d06092a864886f70d010101050003818d0030818902818100a439472e4b6d01141bfc94ecfe131c7c728fdda670bb14c57ca60bd1c38a8b8bc0879d22a0a2d0bc0d6fdd4cb98d1d607c2caefbe250a0bd0322aedeb365caf9b236992fac13e6675d3184a6c7c6f07f73410209e399a9da8d5d7512bbd870508eebacff8b57c3852457419434d34701ccbf692267cbc3f42f1c5d1e23762d790203010001a321301f301d0603551d0e041604140b1840691dab909746fde4bfe28207d1cae15786300d06092a864886f70d01010b05000381810062424c928ffd1b6fd419b44daafef01ca982e09341f7077fb865905087aeac882534b3bd679b51fdfb98892cef38b63131c567ed26c9d5d9163afc775ac98ad88c405d211d6187bde0b0d236381cc574ba06ef9080721a92ae5a103a7301b2c397eecc141cc850dd3e123813ebc41c59d31ddbcb6e984168280c53272f6a442b"; @Before public void setUp() { @@ -32,7 +32,7 @@ public class RepoUpdaterTest { context = instrumentation.getContext(); testFilesDir = TestUtils.getWriteableDir(instrumentation); Repo repo = new Repo(); - repo.pubkey = this.simpleIndexPubkey; + repo.signingCertificate = this.simpleIndexSigningCert; repoUpdater = new RepoUpdater(context, repo); } diff --git a/app/src/androidTest/java/org/fdroid/fdroid/RepoXMLHandlerTest.java b/app/src/androidTest/java/org/fdroid/fdroid/RepoXMLHandlerTest.java index 041f5b0e8..e4838d289 100644 --- a/app/src/androidTest/java/org/fdroid/fdroid/RepoXMLHandlerTest.java +++ b/app/src/androidTest/java/org/fdroid/fdroid/RepoXMLHandlerTest.java @@ -35,13 +35,13 @@ import static org.junit.Assert.fail; public class RepoXMLHandlerTest { private static final String TAG = "RepoXMLHandlerTest"; - private static final String FAKE_PUBKEY = "012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345"; + private static final String FAKE_SIGNING_CERT = "012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345"; @Test public void testSimpleIndex() { Repo expectedRepo = new Repo(); expectedRepo.name = "F-Droid"; - expectedRepo.pubkey = "308201ee30820157a0030201020204300d845b300d06092a864886f70d01010b0500302a3110300e060355040b1307462d44726f6964311630140603550403130d70616c6174736368696e6b656e301e170d3134303432373030303633315a170d3431303931323030303633315a302a3110300e060355040b1307462d44726f6964311630140603550403130d70616c6174736368696e6b656e30819f300d06092a864886f70d010101050003818d0030818902818100a439472e4b6d01141bfc94ecfe131c7c728fdda670bb14c57ca60bd1c38a8b8bc0879d22a0a2d0bc0d6fdd4cb98d1d607c2caefbe250a0bd0322aedeb365caf9b236992fac13e6675d3184a6c7c6f07f73410209e399a9da8d5d7512bbd870508eebacff8b57c3852457419434d34701ccbf692267cbc3f42f1c5d1e23762d790203010001a321301f301d0603551d0e041604140b1840691dab909746fde4bfe28207d1cae15786300d06092a864886f70d01010b05000381810062424c928ffd1b6fd419b44daafef01ca982e09341f7077fb865905087aeac882534b3bd679b51fdfb98892cef38b63131c567ed26c9d5d9163afc775ac98ad88c405d211d6187bde0b0d236381cc574ba06ef9080721a92ae5a103a7301b2c397eecc141cc850dd3e123813ebc41c59d31ddbcb6e984168280c53272f6a442b"; + expectedRepo.signingCertificate = "308201ee30820157a0030201020204300d845b300d06092a864886f70d01010b0500302a3110300e060355040b1307462d44726f6964311630140603550403130d70616c6174736368696e6b656e301e170d3134303432373030303633315a170d3431303931323030303633315a302a3110300e060355040b1307462d44726f6964311630140603550403130d70616c6174736368696e6b656e30819f300d06092a864886f70d010101050003818d0030818902818100a439472e4b6d01141bfc94ecfe131c7c728fdda670bb14c57ca60bd1c38a8b8bc0879d22a0a2d0bc0d6fdd4cb98d1d607c2caefbe250a0bd0322aedeb365caf9b236992fac13e6675d3184a6c7c6f07f73410209e399a9da8d5d7512bbd870508eebacff8b57c3852457419434d34701ccbf692267cbc3f42f1c5d1e23762d790203010001a321301f301d0603551d0e041604140b1840691dab909746fde4bfe28207d1cae15786300d06092a864886f70d01010b05000381810062424c928ffd1b6fd419b44daafef01ca982e09341f7077fb865905087aeac882534b3bd679b51fdfb98892cef38b63131c567ed26c9d5d9163afc775ac98ad88c405d211d6187bde0b0d236381cc574ba06ef9080721a92ae5a103a7301b2c397eecc141cc850dd3e123813ebc41c59d31ddbcb6e984168280c53272f6a442b"; expectedRepo.description = "The official repository of the F-Droid client. Applications in this repository are either official binaries built by the original application developers, or are binaries built from source by the admin of f-droid.org using the tools on https://gitorious.org/f-droid."; RepoDetails actualDetails = getFromFile("simpleIndex.xml"); handlerTestSuite(expectedRepo, actualDetails, 0, 0, -1, 12); @@ -51,7 +51,7 @@ public class RepoXMLHandlerTest { public void testSmallRepo() { Repo expectedRepo = new Repo(); expectedRepo.name = "Android-Nexus-7-20139453 on UNSET"; - expectedRepo.pubkey = "308202da308201c2a00302010202080eb08c796fec91aa300d06092a864886f70d0101050500302d3111300f060355040a0c084b6572706c61707031183016060355040b0c0f477561726469616e50726f6a656374301e170d3134313030333135303631325a170d3135313030333135303631325a302d3111300f060355040a0c084b6572706c61707031183016060355040b0c0f477561726469616e50726f6a65637430820122300d06092a864886f70d01010105000382010f003082010a0282010100c7ab44b130be5c00eedcc3625462f6f6ac26e502641cd641f3e30cbb0ff1ba325158611e7fc2448a35b6a6df30dc6e23602cf6909448befcf11e2fe486b580f1e76fe5887d159050d00afd2c4079f6538896bb200627f4b3e874f011ce5df0fef5d150fcb0b377b531254e436eaf4083ea72fe3b8c3ef450789fa858f2be8f6c5335bb326aff3dda689fbc7b5ba98dea53651dbea7452c38d294985ac5dd8a9e491a695de92c706d682d6911411fcaef3b0a08a030fe8a84e47acaab0b7edcda9d190ce39e810b79b1d8732eca22b15f0d048c8d6f00503a7ee81ab6e08919ff465883432304d95238b95e95c5f74e0a421809e2a6a85825aed680e0d6939e8f0203010001300d06092a864886f70d010105050003820101006d17aad3271b8b2c299dbdb7b1182849b0d5ddb9f1016dcb3487ae0db02b6be503344c7d066e2050bcd01d411b5ee78c7ed450f0ff9da5ce228f774cbf41240361df53d9c6078159d16f4d34379ab7dedf6186489397c83b44b964251a2ebb42b7c4689a521271b1056d3b5a5fa8f28ba64fb8ce5e2226c33c45d27ba3f632dc266c12abf582b8438c2abcf3eae9de9f31152b4158ace0ef33435c20eb809f1b3988131db6e5a1442f2617c3491d9565fedb3e320e8df4236200d3bd265e47934aa578f84d0d1a5efeb49b39907e876452c46996d0feff9404b41aa5631b4482175d843d5512ded45e12a514690646492191e7add434afce63dbff8f0b03ec0c"; + expectedRepo.signingCertificate = "308202da308201c2a00302010202080eb08c796fec91aa300d06092a864886f70d0101050500302d3111300f060355040a0c084b6572706c61707031183016060355040b0c0f477561726469616e50726f6a656374301e170d3134313030333135303631325a170d3135313030333135303631325a302d3111300f060355040a0c084b6572706c61707031183016060355040b0c0f477561726469616e50726f6a65637430820122300d06092a864886f70d01010105000382010f003082010a0282010100c7ab44b130be5c00eedcc3625462f6f6ac26e502641cd641f3e30cbb0ff1ba325158611e7fc2448a35b6a6df30dc6e23602cf6909448befcf11e2fe486b580f1e76fe5887d159050d00afd2c4079f6538896bb200627f4b3e874f011ce5df0fef5d150fcb0b377b531254e436eaf4083ea72fe3b8c3ef450789fa858f2be8f6c5335bb326aff3dda689fbc7b5ba98dea53651dbea7452c38d294985ac5dd8a9e491a695de92c706d682d6911411fcaef3b0a08a030fe8a84e47acaab0b7edcda9d190ce39e810b79b1d8732eca22b15f0d048c8d6f00503a7ee81ab6e08919ff465883432304d95238b95e95c5f74e0a421809e2a6a85825aed680e0d6939e8f0203010001300d06092a864886f70d010105050003820101006d17aad3271b8b2c299dbdb7b1182849b0d5ddb9f1016dcb3487ae0db02b6be503344c7d066e2050bcd01d411b5ee78c7ed450f0ff9da5ce228f774cbf41240361df53d9c6078159d16f4d34379ab7dedf6186489397c83b44b964251a2ebb42b7c4689a521271b1056d3b5a5fa8f28ba64fb8ce5e2226c33c45d27ba3f632dc266c12abf582b8438c2abcf3eae9de9f31152b4158ace0ef33435c20eb809f1b3988131db6e5a1442f2617c3491d9565fedb3e320e8df4236200d3bd265e47934aa578f84d0d1a5efeb49b39907e876452c46996d0feff9404b41aa5631b4482175d843d5512ded45e12a514690646492191e7add434afce63dbff8f0b03ec0c"; expectedRepo.description = "A local FDroid repo generated from apps installed on Android-Nexus-7-20139453"; RepoDetails actualDetails = getFromFile("smallRepo.xml"); handlerTestSuite(expectedRepo, actualDetails, 12, 12, 14, -1); @@ -75,7 +75,7 @@ public class RepoXMLHandlerTest { public void testMediumRepo() { Repo expectedRepo = new Repo(); expectedRepo.name = "Guardian Project Official Releases"; - expectedRepo.pubkey = "308205d8308203c0020900a397b4da7ecda034300d06092a864886f70d01010505003081ad310b30090603550406130255533111300f06035504080c084e657720596f726b3111300f06035504070c084e657720596f726b31143012060355040b0c0b4644726f6964205265706f31193017060355040a0c10477561726469616e2050726f6a656374311d301b06035504030c14677561726469616e70726f6a6563742e696e666f3128302606092a864886f70d0109011619726f6f7440677561726469616e70726f6a6563742e696e666f301e170d3134303632363139333931385a170d3431313131303139333931385a3081ad310b30090603550406130255533111300f06035504080c084e657720596f726b3111300f06035504070c084e657720596f726b31143012060355040b0c0b4644726f6964205265706f31193017060355040a0c10477561726469616e2050726f6a656374311d301b06035504030c14677561726469616e70726f6a6563742e696e666f3128302606092a864886f70d0109011619726f6f7440677561726469616e70726f6a6563742e696e666f30820222300d06092a864886f70d01010105000382020f003082020a0282020100b3cd79121b9b883843be3c4482e320809106b0a23755f1dd3c7f46f7d315d7bb2e943486d61fc7c811b9294dcc6b5baac4340f8db2b0d5e14749e7f35e1fc211fdbc1071b38b4753db201c314811bef885bd8921ad86facd6cc3b8f74d30a0b6e2e6e576f906e9581ef23d9c03e926e06d1f033f28bd1e21cfa6a0e3ff5c9d8246cf108d82b488b9fdd55d7de7ebb6a7f64b19e0d6b2ab1380a6f9d42361770d1956701a7f80e2de568acd0bb4527324b1e0973e89595d91c8cc102d9248525ae092e2c9b69f7414f724195b81427f28b1d3d09a51acfe354387915fd9521e8c890c125fc41a12bf34d2a1b304067ab7251e0e9ef41833ce109e76963b0b256395b16b886bca21b831f1408f836146019e7908829e716e72b81006610a2af08301de5d067c9e114a1e5759db8a6be6a3cc2806bcfe6fafd41b5bc9ddddb3dc33d6f605b1ca7d8a9e0ecdd6390d38906649e68a90a717bea80fa220170eea0c86fc78a7e10dac7b74b8e62045a3ecca54e035281fdc9fe5920a855fde3c0be522e3aef0c087524f13d973dff3768158b01a5800a060c06b451ec98d627dd052eda804d0556f60dbc490d94e6e9dea62ffcafb5beffbd9fc38fb2f0d7050004fe56b4dda0a27bc47554e1e0a7d764e17622e71f83a475db286bc7862deee1327e2028955d978272ea76bf0b88e70a18621aba59ff0c5993ef5f0e5d6b6b98e68b70203010001300d06092a864886f70d0101050500038202010079c79c8ef408a20d243d8bd8249fb9a48350dc19663b5e0fce67a8dbcb7de296c5ae7bbf72e98a2020fb78f2db29b54b0e24b181aa1c1d333cc0303685d6120b03216a913f96b96eb838f9bff125306ae3120af838c9fc07ebb5100125436bd24ec6d994d0bff5d065221871f8410daf536766757239bf594e61c5432c9817281b985263bada8381292e543a49814061ae11c92a316e7dc100327b59e3da90302c5ada68c6a50201bda1fcce800b53f381059665dbabeeb0b50eb22b2d7d2d9b0aa7488ca70e67ac6c518adb8e78454a466501e89d81a45bf1ebc350896f2c3ae4b6679ecfbf9d32960d4f5b493125c7876ef36158562371193f600bc511000a67bdb7c664d018f99d9e589868d103d7e0994f166b2ba18ff7e67d8c4da749e44dfae1d930ae5397083a51675c409049dfb626a96246c0015ca696e94ebb767a20147834bf78b07fece3f0872b057c1c519ff882501995237d8206b0b3832f78753ebd8dcbd1d3d9f5ba733538113af6b407d960ec4353c50eb38ab29888238da843cd404ed8f4952f59e4bbc0035fc77a54846a9d419179c46af1b4a3b7fc98e4d312aaa29b9b7d79e739703dc0fa41c7280d5587709277ffa11c3620f5fba985b82c238ba19b17ebd027af9424be0941719919f620dd3bb3c3f11638363708aa11f858e153cf3a69bce69978b90e4a273836100aa1e617ba455cd00426847f"; + expectedRepo.signingCertificate = "308205d8308203c0020900a397b4da7ecda034300d06092a864886f70d01010505003081ad310b30090603550406130255533111300f06035504080c084e657720596f726b3111300f06035504070c084e657720596f726b31143012060355040b0c0b4644726f6964205265706f31193017060355040a0c10477561726469616e2050726f6a656374311d301b06035504030c14677561726469616e70726f6a6563742e696e666f3128302606092a864886f70d0109011619726f6f7440677561726469616e70726f6a6563742e696e666f301e170d3134303632363139333931385a170d3431313131303139333931385a3081ad310b30090603550406130255533111300f06035504080c084e657720596f726b3111300f06035504070c084e657720596f726b31143012060355040b0c0b4644726f6964205265706f31193017060355040a0c10477561726469616e2050726f6a656374311d301b06035504030c14677561726469616e70726f6a6563742e696e666f3128302606092a864886f70d0109011619726f6f7440677561726469616e70726f6a6563742e696e666f30820222300d06092a864886f70d01010105000382020f003082020a0282020100b3cd79121b9b883843be3c4482e320809106b0a23755f1dd3c7f46f7d315d7bb2e943486d61fc7c811b9294dcc6b5baac4340f8db2b0d5e14749e7f35e1fc211fdbc1071b38b4753db201c314811bef885bd8921ad86facd6cc3b8f74d30a0b6e2e6e576f906e9581ef23d9c03e926e06d1f033f28bd1e21cfa6a0e3ff5c9d8246cf108d82b488b9fdd55d7de7ebb6a7f64b19e0d6b2ab1380a6f9d42361770d1956701a7f80e2de568acd0bb4527324b1e0973e89595d91c8cc102d9248525ae092e2c9b69f7414f724195b81427f28b1d3d09a51acfe354387915fd9521e8c890c125fc41a12bf34d2a1b304067ab7251e0e9ef41833ce109e76963b0b256395b16b886bca21b831f1408f836146019e7908829e716e72b81006610a2af08301de5d067c9e114a1e5759db8a6be6a3cc2806bcfe6fafd41b5bc9ddddb3dc33d6f605b1ca7d8a9e0ecdd6390d38906649e68a90a717bea80fa220170eea0c86fc78a7e10dac7b74b8e62045a3ecca54e035281fdc9fe5920a855fde3c0be522e3aef0c087524f13d973dff3768158b01a5800a060c06b451ec98d627dd052eda804d0556f60dbc490d94e6e9dea62ffcafb5beffbd9fc38fb2f0d7050004fe56b4dda0a27bc47554e1e0a7d764e17622e71f83a475db286bc7862deee1327e2028955d978272ea76bf0b88e70a18621aba59ff0c5993ef5f0e5d6b6b98e68b70203010001300d06092a864886f70d0101050500038202010079c79c8ef408a20d243d8bd8249fb9a48350dc19663b5e0fce67a8dbcb7de296c5ae7bbf72e98a2020fb78f2db29b54b0e24b181aa1c1d333cc0303685d6120b03216a913f96b96eb838f9bff125306ae3120af838c9fc07ebb5100125436bd24ec6d994d0bff5d065221871f8410daf536766757239bf594e61c5432c9817281b985263bada8381292e543a49814061ae11c92a316e7dc100327b59e3da90302c5ada68c6a50201bda1fcce800b53f381059665dbabeeb0b50eb22b2d7d2d9b0aa7488ca70e67ac6c518adb8e78454a466501e89d81a45bf1ebc350896f2c3ae4b6679ecfbf9d32960d4f5b493125c7876ef36158562371193f600bc511000a67bdb7c664d018f99d9e589868d103d7e0994f166b2ba18ff7e67d8c4da749e44dfae1d930ae5397083a51675c409049dfb626a96246c0015ca696e94ebb767a20147834bf78b07fece3f0872b057c1c519ff882501995237d8206b0b3832f78753ebd8dcbd1d3d9f5ba733538113af6b407d960ec4353c50eb38ab29888238da843cd404ed8f4952f59e4bbc0035fc77a54846a9d419179c46af1b4a3b7fc98e4d312aaa29b9b7d79e739703dc0fa41c7280d5587709277ffa11c3620f5fba985b82c238ba19b17ebd027af9424be0941719919f620dd3bb3c3f11638363708aa11f858e153cf3a69bce69978b90e4a273836100aa1e617ba455cd00426847f"; expectedRepo.description = "The official app repository of The Guardian Project. Applications in this repository are official binaries build by the original application developers and signed by the same key as the APKs that are released in the Google Play store."; RepoDetails actualDetails = getFromFile("mediumRepo.xml"); handlerTestSuite(expectedRepo, actualDetails, 15, 36, 60, 12); @@ -102,7 +102,7 @@ public class RepoXMLHandlerTest { public void testLargeRepo() { Repo expectedRepo = new Repo(); expectedRepo.name = "F-Droid"; - expectedRepo.pubkey = "3082035e30820246a00302010202044c49cd00300d06092a864886f70d01010505003071310b300906035504061302554b3110300e06035504081307556e6b6e6f776e3111300f0603550407130857657468657262793110300e060355040a1307556e6b6e6f776e3110300e060355040b1307556e6b6e6f776e311930170603550403131043696172616e2047756c746e69656b73301e170d3130303732333137313032345a170d3337313230383137313032345a3071310b300906035504061302554b3110300e06035504081307556e6b6e6f776e3111300f0603550407130857657468657262793110300e060355040a1307556e6b6e6f776e3110300e060355040b1307556e6b6e6f776e311930170603550403131043696172616e2047756c746e69656b7330820122300d06092a864886f70d01010105000382010f003082010a028201010096d075e47c014e7822c89fd67f795d23203e2a8843f53ba4e6b1bf5f2fd0e225938267cfcae7fbf4fe596346afbaf4070fdb91f66fbcdf2348a3d92430502824f80517b156fab00809bdc8e631bfa9afd42d9045ab5fd6d28d9e140afc1300917b19b7c6c4df4a494cf1f7cb4a63c80d734265d735af9e4f09455f427aa65a53563f87b336ca2c19d244fcbba617ba0b19e56ed34afe0b253ab91e2fdb1271f1b9e3c3232027ed8862a112f0706e234cf236914b939bcf959821ecb2a6c18057e070de3428046d94b175e1d89bd795e535499a091f5bc65a79d539a8d43891ec504058acb28c08393b5718b57600a211e803f4a634e5c57f25b9b8c4422c6fd90203010001300d06092a864886f70d0101050500038201010008e4ef699e9807677ff56753da73efb2390d5ae2c17e4db691d5df7a7b60fc071ae509c5414be7d5da74df2811e83d3668c4a0b1abc84b9fa7d96b4cdf30bba68517ad2a93e233b042972ac0553a4801c9ebe07bf57ebe9a3b3d6d663965260e50f3b8f46db0531761e60340a2bddc3426098397fda54044a17e5244549f9869b460ca5e6e216b6f6a2db0580b480ca2afe6ec6b46eedacfa4aa45038809ece0c5978653d6c85f678e7f5a2156d1bedd8117751e64a4b0dcd140f3040b021821a8d93aed8d01ba36db6c82372211fed714d9a32607038cdfd565bd529ffc637212aaa2c224ef22b603eccefb5bf1e085c191d4b24fe742b17ab3f55d4e6f05ef"; + expectedRepo.signingCertificate = "3082035e30820246a00302010202044c49cd00300d06092a864886f70d01010505003071310b300906035504061302554b3110300e06035504081307556e6b6e6f776e3111300f0603550407130857657468657262793110300e060355040a1307556e6b6e6f776e3110300e060355040b1307556e6b6e6f776e311930170603550403131043696172616e2047756c746e69656b73301e170d3130303732333137313032345a170d3337313230383137313032345a3071310b300906035504061302554b3110300e06035504081307556e6b6e6f776e3111300f0603550407130857657468657262793110300e060355040a1307556e6b6e6f776e3110300e060355040b1307556e6b6e6f776e311930170603550403131043696172616e2047756c746e69656b7330820122300d06092a864886f70d01010105000382010f003082010a028201010096d075e47c014e7822c89fd67f795d23203e2a8843f53ba4e6b1bf5f2fd0e225938267cfcae7fbf4fe596346afbaf4070fdb91f66fbcdf2348a3d92430502824f80517b156fab00809bdc8e631bfa9afd42d9045ab5fd6d28d9e140afc1300917b19b7c6c4df4a494cf1f7cb4a63c80d734265d735af9e4f09455f427aa65a53563f87b336ca2c19d244fcbba617ba0b19e56ed34afe0b253ab91e2fdb1271f1b9e3c3232027ed8862a112f0706e234cf236914b939bcf959821ecb2a6c18057e070de3428046d94b175e1d89bd795e535499a091f5bc65a79d539a8d43891ec504058acb28c08393b5718b57600a211e803f4a634e5c57f25b9b8c4422c6fd90203010001300d06092a864886f70d0101050500038201010008e4ef699e9807677ff56753da73efb2390d5ae2c17e4db691d5df7a7b60fc071ae509c5414be7d5da74df2811e83d3668c4a0b1abc84b9fa7d96b4cdf30bba68517ad2a93e233b042972ac0553a4801c9ebe07bf57ebe9a3b3d6d663965260e50f3b8f46db0531761e60340a2bddc3426098397fda54044a17e5244549f9869b460ca5e6e216b6f6a2db0580b480ca2afe6ec6b46eedacfa4aa45038809ece0c5978653d6c85f678e7f5a2156d1bedd8117751e64a4b0dcd140f3040b021821a8d93aed8d01ba36db6c82372211fed714d9a32607038cdfd565bd529ffc637212aaa2c224ef22b603eccefb5bf1e085c191d4b24fe742b17ab3f55d4e6f05ef"; expectedRepo.description = "The official FDroid repository. Applications in this repository are mostly built directory from the source code. Some are official binaries built by the original application developers - these will be replaced by source-built versions over time."; RepoDetails actualDetails = getFromFile("largeRepo.xml"); handlerTestSuite(expectedRepo, actualDetails, 1211, 2381, 14, 12); @@ -612,9 +612,9 @@ public class RepoXMLHandlerTest { private void handlerTestSuite(Repo expectedRepo, RepoDetails actualDetails, int appCount, int apkCount, int maxAge, int version) { assertNotNull(actualDetails); assertFalse(TextUtils.isEmpty(actualDetails.signingCert)); - assertEquals(expectedRepo.pubkey.length(), actualDetails.signingCert.length()); - assertEquals(expectedRepo.pubkey, actualDetails.signingCert); - assertFalse(FAKE_PUBKEY.equals(actualDetails.signingCert)); + assertEquals(expectedRepo.signingCertificate.length(), actualDetails.signingCert.length()); + assertEquals(expectedRepo.signingCertificate, actualDetails.signingCert); + assertFalse(FAKE_SIGNING_CERT.equals(actualDetails.signingCert)); assertFalse(TextUtils.isEmpty(actualDetails.name)); assertEquals(expectedRepo.name.length(), actualDetails.name.length()); diff --git a/app/src/main/java/org/fdroid/fdroid/RepoUpdater.java b/app/src/main/java/org/fdroid/fdroid/RepoUpdater.java index 653e975b2..ac226b0db 100644 --- a/app/src/main/java/org/fdroid/fdroid/RepoUpdater.java +++ b/app/src/main/java/org/fdroid/fdroid/RepoUpdater.java @@ -216,7 +216,7 @@ public class RepoUpdater { private void assertSigningCertFromXmlCorrect() throws SigningException { // no signing cert read from database, this is the first use - if (repo.pubkey == null) { + if (repo.signingCertificate == null) { verifyAndStoreTOFUCerts(signingCertFromIndexXml, signingCertFromJar); } verifyCerts(signingCertFromIndexXml, signingCertFromJar); @@ -308,8 +308,8 @@ public class RepoUpdater { */ private void verifyAndStoreTOFUCerts(String certFromIndexXml, X509Certificate rawCertFromJar) throws SigningException { - if (repo.pubkey != null) { - return; // there is a repo.pubkey already, nothing to TOFU + if (repo.signingCertificate != null) { + return; // there is a repo.signingCertificate already, nothing to TOFU } /* The first time a repo is added, it can be added with the signing certificate's @@ -328,7 +328,7 @@ public class RepoUpdater { Utils.debugLog(TAG, "Saving new signing certificate in the database for " + repo.address); ContentValues values = new ContentValues(2); values.put(RepoProvider.DataColumns.LAST_UPDATED, Utils.formatDate(new Date(), "")); - values.put(RepoProvider.DataColumns.PUBLIC_KEY, Hasher.hex(rawCertFromJar)); + values.put(RepoProvider.DataColumns.SIGNING_CERT, Hasher.hex(rawCertFromJar)); RepoProvider.Helper.update(context, repo, values); } @@ -348,16 +348,16 @@ public class RepoUpdater { // convert binary data to string version that is used in FDroid's database String certFromJar = Hasher.hex(rawCertFromJar); - // repo and repo.pubkey must be pre-loaded from the database - if (TextUtils.isEmpty(repo.pubkey) + // repo and repo.signingCertificate must be pre-loaded from the database + if (TextUtils.isEmpty(repo.signingCertificate) || TextUtils.isEmpty(certFromJar) || TextUtils.isEmpty(certFromIndexXml)) { throw new SigningException(repo, "A empty repo or signing certificate is invalid!"); } - // though its called repo.pubkey, its actually a X509 certificate - if (repo.pubkey.equals(certFromJar) - && repo.pubkey.equals(certFromIndexXml) + // though its called repo.signingCertificate, its actually a X509 certificate + if (repo.signingCertificate.equals(certFromJar) + && repo.signingCertificate.equals(certFromIndexXml) && certFromIndexXml.equals(certFromJar)) { return; // we have a match! } diff --git a/app/src/main/java/org/fdroid/fdroid/data/DBHelper.java b/app/src/main/java/org/fdroid/fdroid/data/DBHelper.java index 200cdcb65..9ec221939 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/DBHelper.java +++ b/app/src/main/java/org/fdroid/fdroid/data/DBHelper.java @@ -252,7 +252,7 @@ class DBHelper extends SQLiteOpenHelper { values.put(RepoProvider.DataColumns.ADDRESS, address); values.put(RepoProvider.DataColumns.NAME, name); values.put(RepoProvider.DataColumns.DESCRIPTION, description); - values.put(RepoProvider.DataColumns.PUBLIC_KEY, pubKey); + values.put(RepoProvider.DataColumns.SIGNING_CERT, pubKey); values.put(RepoProvider.DataColumns.FINGERPRINT, Utils.calcFingerprint(pubKey)); values.put(RepoProvider.DataColumns.MAX_AGE, 0); values.put(RepoProvider.DataColumns.VERSION, version); @@ -311,7 +311,7 @@ class DBHelper extends SQLiteOpenHelper { Repo repo = new Repo(); repo.address = cursor.getString(0); repo.inuse = cursor.getInt(1) == 1; - repo.pubkey = cursor.getString(2); + repo.signingCertificate = cursor.getString(2); oldrepos.add(repo); cursor.moveToNext(); } @@ -325,7 +325,7 @@ class DBHelper extends SQLiteOpenHelper { values.put("address", repo.address); values.put("inuse", repo.inuse); values.put("priority", 10); - values.put("pubkey", repo.pubkey); + values.put("pubkey", repo.signingCertificate); values.put("lastetag", (String) null); db.insert(TABLE_REPO, null, values); } @@ -388,7 +388,7 @@ class DBHelper extends SQLiteOpenHelper { while (!cursor.isAfterLast()) { Repo repo = new Repo(); repo.address = cursor.getString(0); - repo.pubkey = cursor.getString(1); + repo.signingCertificate = cursor.getString(1); oldrepos.add(repo); cursor.moveToNext(); } @@ -397,7 +397,7 @@ class DBHelper extends SQLiteOpenHelper { } for (final Repo repo : oldrepos) { ContentValues values = new ContentValues(); - values.put("fingerprint", Utils.calcFingerprint(repo.pubkey)); + values.put("fingerprint", Utils.calcFingerprint(repo.signingCertificate)); db.update(TABLE_REPO, values, "address = ?", new String[] {repo.address}); } } diff --git a/app/src/main/java/org/fdroid/fdroid/data/Repo.java b/app/src/main/java/org/fdroid/fdroid/data/Repo.java index ff4fa6711..32f2bb483 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/Repo.java +++ b/app/src/main/java/org/fdroid/fdroid/data/Repo.java @@ -24,7 +24,7 @@ public class Repo extends ValueObject { public boolean inuse; public int priority; /** The signing certificate, {@code null} for a newly added repo */ - public String pubkey; + public String signingCertificate; /** * The SHA1 fingerprint of {@link #pubkey}, set to {@code null} when a * newly added repo did not include fingerprint. It should never be an @@ -79,8 +79,8 @@ public class Repo extends ValueObject { case RepoProvider.DataColumns.NAME: name = cursor.getString(i); break; - case RepoProvider.DataColumns.PUBLIC_KEY: - pubkey = cursor.getString(i); + case RepoProvider.DataColumns.SIGNING_CERT: + signingCertificate = cursor.getString(i); break; case RepoProvider.DataColumns.PRIORITY: priority = cursor.getInt(i); @@ -112,13 +112,13 @@ public class Repo extends ValueObject { } public boolean isSigned() { - return !TextUtils.isEmpty(this.pubkey); + return !TextUtils.isEmpty(this.signingCertificate); } // this happens when a repo is configed with a fingerprint, but the client - // has not connected to it yet to download its pubkey + // has not connected to it yet to download its signing certificate public boolean isSignedButUnverified() { - return TextUtils.isEmpty(this.pubkey) && !TextUtils.isEmpty(this.fingerprint); + return TextUtils.isEmpty(this.signingCertificate) && !TextUtils.isEmpty(this.fingerprint); } public boolean hasBeenUpdated() { @@ -191,8 +191,8 @@ public class Repo extends ValueObject { name = values.getAsString(RepoProvider.DataColumns.NAME); } - if (values.containsKey(RepoProvider.DataColumns.PUBLIC_KEY)) { - pubkey = values.getAsString(RepoProvider.DataColumns.PUBLIC_KEY); + if (values.containsKey(RepoProvider.DataColumns.SIGNING_CERT)) { + signingCertificate = values.getAsString(RepoProvider.DataColumns.SIGNING_CERT); } if (values.containsKey(RepoProvider.DataColumns.PRIORITY)) { diff --git a/app/src/main/java/org/fdroid/fdroid/data/RepoProvider.java b/app/src/main/java/org/fdroid/fdroid/data/RepoProvider.java index e682bd842..5fe4e1e02 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/RepoProvider.java +++ b/app/src/main/java/org/fdroid/fdroid/data/RepoProvider.java @@ -129,8 +129,8 @@ public class RepoProvider extends FDroidProvider { * make sure it is correct. If the fingerprint is empty, then store * the calculated one. */ - if (values.containsKey(DataColumns.PUBLIC_KEY)) { - String publicKey = values.getAsString(DataColumns.PUBLIC_KEY); + if (values.containsKey(DataColumns.SIGNING_CERT)) { + String publicKey = values.getAsString(DataColumns.SIGNING_CERT); String calcedFingerprint = Utils.calcFingerprint(publicKey); if (values.containsKey(DataColumns.FINGERPRINT)) { String fingerprint = values.getAsString(DataColumns.FINGERPRINT); @@ -216,7 +216,7 @@ public class RepoProvider extends FDroidProvider { String DESCRIPTION = "description"; String IN_USE = "inuse"; String PRIORITY = "priority"; - String PUBLIC_KEY = "pubkey"; + String SIGNING_CERT = "pubkey"; String FINGERPRINT = "fingerprint"; String MAX_AGE = "maxage"; String LAST_ETAG = "lastetag"; @@ -227,7 +227,7 @@ public class RepoProvider extends FDroidProvider { String PASSWORD = "password"; String[] ALL = { - _ID, ADDRESS, NAME, DESCRIPTION, IN_USE, PRIORITY, PUBLIC_KEY, + _ID, ADDRESS, NAME, DESCRIPTION, IN_USE, PRIORITY, SIGNING_CERT, FINGERPRINT, MAX_AGE, LAST_UPDATED, LAST_ETAG, VERSION, IS_SWAP, USERNAME, PASSWORD, }; diff --git a/app/src/main/java/org/fdroid/fdroid/views/ManageReposActivity.java b/app/src/main/java/org/fdroid/fdroid/views/ManageReposActivity.java index 3aa6611b0..f5ec59b13 100644 --- a/app/src/main/java/org/fdroid/fdroid/views/ManageReposActivity.java +++ b/app/src/main/java/org/fdroid/fdroid/views/ManageReposActivity.java @@ -711,7 +711,7 @@ public class ManageReposActivity extends ActionBarActivity { final String[] projection = { RepoProvider.DataColumns._ID, RepoProvider.DataColumns.NAME, - RepoProvider.DataColumns.PUBLIC_KEY, + RepoProvider.DataColumns.SIGNING_CERT, RepoProvider.DataColumns.FINGERPRINT, RepoProvider.DataColumns.IN_USE, }; diff --git a/app/src/main/java/org/fdroid/fdroid/views/RepoDetailsActivity.java b/app/src/main/java/org/fdroid/fdroid/views/RepoDetailsActivity.java index bd8be7ac5..58d7f846f 100644 --- a/app/src/main/java/org/fdroid/fdroid/views/RepoDetailsActivity.java +++ b/app/src/main/java/org/fdroid/fdroid/views/RepoDetailsActivity.java @@ -264,7 +264,7 @@ public class RepoDetailsActivity extends ActionBarActivity { String repoFingerprint; // TODO show the current state of the signature check, not just whether there is a key or not - if (TextUtils.isEmpty(repo.fingerprint) && TextUtils.isEmpty(repo.pubkey)) { + if (TextUtils.isEmpty(repo.fingerprint) && TextUtils.isEmpty(repo.signingCertificate)) { repoFingerprint = getResources().getString(R.string.unsigned); repoFingerprintView.setTextColor(getResources().getColor(R.color.unsigned)); repoFingerprintDescView.setVisibility(View.VISIBLE); From b7a5c6d201bdf4e18c610c8fdaa8f85192a2c9ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Mart=C3=AD?= Date: Tue, 19 Apr 2016 12:13:39 +0100 Subject: [PATCH 7/7] Get rid of the last java vercode name Last of its series. Closes #37. --- app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java b/app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java index 01e27b306..f1629c657 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java +++ b/app/src/main/java/org/fdroid/fdroid/data/ApkProvider.java @@ -433,9 +433,9 @@ public class ApkProvider extends FDroidProvider { for (int i = 0; i < apkDetails.length; i++) { String[] parts = apkDetails[i].split(":"); String packageName = parts[0]; - String verCode = parts[1]; + String versionCode = parts[1]; args[i * 2] = packageName; - args[i * 2 + 1] = verCode; + args[i * 2 + 1] = versionCode; if (i != 0) { sb.append(" OR "); }