Crash fixes

Also adds an icon
Closes https://gitlab.com/divested-mobile/hypatia/-/issues/37

Signed-off-by: Tad <tad@spotco.us>
This commit is contained in:
Tad 2023-12-30 14:39:08 -05:00
parent a0f6a00244
commit fedca835d6
No known key found for this signature in database
GPG key ID: B286E9F57A07424B
6 changed files with 28 additions and 12 deletions

View file

@ -6,8 +6,8 @@ android {
applicationId "us.spotco.malwarescanner"
minSdkVersion 16
targetSdkVersion 32
versionCode 305
versionName "3.05"
versionCode 306
versionName "3.06"
resConfigs 'en', 'af', 'de', 'el', 'es', 'fi', 'fr', 'it', 'pl', 'pt', 'ru', 'tr', 'zh-rCN'
}
buildTypes {

View file

@ -281,7 +281,7 @@ public class MainActivity extends Activity {
item.setChecked(scanExternal);
break;
case R.id.mnuSelfTestReal:
Utils.writeSelfTestFiles();
Utils.writeSelfTestFiles(this);
break;
case R.id.mnuFullCredits:
showCredits();
@ -317,6 +317,7 @@ public class MainActivity extends Activity {
filesToScan.add(new File("/data"));
filesToScan.add(new File("/data/local/tmp"));
filesToScan.add(new File("/firmware"));
filesToScan.add(new File("/oem"));
filesToScan.add(new File("/odm"));
filesToScan.add(new File("/odm_dlkm"));
filesToScan.add(new File("/product"));
@ -327,14 +328,26 @@ public class MainActivity extends Activity {
}
if (scanApps) {
for (ApplicationInfo packageInfo : getPackageManager().getInstalledApplications(PackageManager.GET_META_DATA)) {
filesToScan.add(new File(packageInfo.sourceDir));
filesToScan.add(new File(packageInfo.dataDir));
filesToScan.add(new File(packageInfo.nativeLibraryDir));
filesToScan.add(new File(packageInfo.publicSourceDir));
if (packageInfo != null) {
if (packageInfo.sourceDir != null) {
filesToScan.add(new File(packageInfo.sourceDir));
}
if (packageInfo.dataDir != null) {
filesToScan.add(new File(packageInfo.dataDir));
}
if (packageInfo.nativeLibraryDir != null) {
filesToScan.add(new File(packageInfo.nativeLibraryDir));
}
if (packageInfo.publicSourceDir != null) {
filesToScan.add(new File(packageInfo.publicSourceDir));
}
}
}
}
if (scanInternal) {
filesToScan.add(Environment.getExternalStorageDirectory());
if (Environment.getExternalStorageDirectory() != null) {
filesToScan.add(Environment.getExternalStorageDirectory());
}
}
if (scanExternal) {
File externalStorage = new File("/storage");

View file

@ -26,6 +26,7 @@ import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Build;
import android.os.Environment;
import android.widget.Toast;
import java.io.File;
import java.io.PrintWriter;
@ -166,9 +167,9 @@ class Utils {
try (Socket s = new Socket(host, port)) {
s.close();
return true;
} catch (Exception e) {
return false;
} catch (Exception ignored) {
}
return false;
}
public static void waitUntilOrbotIsAvailable() {
@ -178,7 +179,6 @@ class Utils {
try {
Thread.sleep(1000);
} catch (Exception ignored) {
}
}
}
@ -203,11 +203,12 @@ class Utils {
Utils.context = context;
}
public static void writeSelfTestFiles() {
public static void writeSelfTestFiles(Context context) {
int rand = new Random().nextInt();
writeStringToFile(new File(Environment.getExternalStorageDirectory() + "/Hypatia-MD5-Test-" + rand + ".txt"), "HypatiaHypatiaHypatia-MD5");
writeStringToFile(new File(Environment.getExternalStorageDirectory() + "/Hypatia-SHA1-Test-" + rand + ".txt"), "HypatiaHypatiaHypatia-SHA1");
writeStringToFile(new File(Environment.getExternalStorageDirectory() + "/Hypatia-SHA256-Test-" + rand + ".txt"), "HypatiaHypatiaHypatia-SHA256");
Toast.makeText(context, R.string.lblWroteTestFiles, Toast.LENGTH_SHORT).show();
}
public static void writeStringToFile(File fileOut, String s) {

View file

@ -75,4 +75,5 @@
<string name="confirm_update_title">Confirm download</string>
<string name="confirm_update_summary">You appear to be on a metered connection. Are you sure you want to update the databases?\nIt may download up to %s megabytes of data.</string>
<string name="lblUpdateRunning">Skipping action, an update is running!</string>
<string name="lblWroteTestFiles">Wrote test files!</string>
</resources>

View file

@ -0,0 +1 @@
* Crash fix when scanning apps in some cases

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB