summaryrefslogtreecommitdiff
path: root/app/src/main/java/se/leap/bitmaskclient/utils
diff options
context:
space:
mode:
authorcyBerta <cyberta@riseup.net>2020-11-09 15:37:31 +0100
committercyBerta <cyberta@riseup.net>2020-11-09 15:37:31 +0100
commitf8daccffc061e2f05f6605913c19d4aa807eaddb (patch)
treea9789cd103807debb302d838dc5aef81fc2a4bb6 /app/src/main/java/se/leap/bitmaskclient/utils
parent9510a267ac90d74fc47977958a67b4e0bd0b5708 (diff)
initial auto-update implementation: introducing fatweb flavor, pgpverify go library and bitmask core library, basic update mechanism
Diffstat (limited to 'app/src/main/java/se/leap/bitmaskclient/utils')
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/utils/ConfigHelper.java28
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/utils/FileHelper.java24
2 files changed, 51 insertions, 1 deletions
diff --git a/app/src/main/java/se/leap/bitmaskclient/utils/ConfigHelper.java b/app/src/main/java/se/leap/bitmaskclient/utils/ConfigHelper.java
index 2748c944..5a142d90 100644
--- a/app/src/main/java/se/leap/bitmaskclient/utils/ConfigHelper.java
+++ b/app/src/main/java/se/leap/bitmaskclient/utils/ConfigHelper.java
@@ -53,6 +53,7 @@ import static se.leap.bitmaskclient.Constants.DEFAULT_BITMASK;
/**
* Stores constants, and implements auxiliary methods used across all Bitmask Android classes.
+ * Wraps BuildConfigFields for to support easier unit testing
*
* @author parmegv
* @author MeanderingCode
@@ -120,7 +121,7 @@ public class ConfigHelper {
try {
KeyFactory kf;
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.P) {
- kf = KeyFactory.getInstance("RSA", "BC");
+ kf = KeyFactory.getInstance("RSA", "BC");
} else {
kf = KeyFactory.getInstance("RSA");
}
@@ -201,4 +202,29 @@ public class ConfigHelper {
return (string1 == null && string2 == null) ||
(string1 != null && string1.equals(string2));
}
+
+ public static String getApkFileName() {
+ try {
+ return BuildConfig.update_apk_url.substring(BuildConfig.update_apk_url.lastIndexOf("/"));
+ } catch (Exception e) {
+ return null;
+ }
+ }
+
+ public static String getVersionFileName() {
+ try {
+ return BuildConfig.version_file_url.substring(BuildConfig.version_file_url.lastIndexOf("/"));
+ } catch (Exception e) {
+ return null;
+ }
+ }
+
+ public static String getSignatureFileName() {
+ try {
+ return BuildConfig.signature_url.substring(BuildConfig.signature_url.lastIndexOf("/"));
+ } catch (Exception e) {
+ return null;
+ }
+ }
+
}
diff --git a/app/src/main/java/se/leap/bitmaskclient/utils/FileHelper.java b/app/src/main/java/se/leap/bitmaskclient/utils/FileHelper.java
index 1c3e1ebb..ebcc32ba 100644
--- a/app/src/main/java/se/leap/bitmaskclient/utils/FileHelper.java
+++ b/app/src/main/java/se/leap/bitmaskclient/utils/FileHelper.java
@@ -1,8 +1,13 @@
package se.leap.bitmaskclient.utils;
+import android.content.Context;
+
+import java.io.BufferedReader;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
/**
* Created by cyberta on 18.03.18.
@@ -19,4 +24,23 @@ public class FileHelper {
writer.close();
}
+ public static String readPublicKey(Context context) {
+ {
+ InputStream inputStream;
+ try {
+ inputStream = context.getAssets().open("public.pgp");
+ BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
+ StringBuilder sb = new StringBuilder();
+ String line;
+ while ((line = reader.readLine()) != null) {
+ sb.append(line).append("\n");
+ }
+ reader.close();
+ return sb.toString();
+ } catch (IOException errabi) {
+ return null;
+ }
+ }
+ }
+
}