preparing settings fragment, added new "null" catch for updater"

This commit is contained in:
Bryson Steck 2021-08-11 21:09:02 -06:00
parent ed69b7725f
commit 5977cfeb9b
4 changed files with 25 additions and 1 deletions

View file

@ -6,6 +6,7 @@ import android.net.Uri;
import android.os.Bundle; import android.os.Bundle;
import android.view.View; import android.view.View;
import android.view.WindowManager; import android.view.WindowManager;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import androidx.room.Room; import androidx.room.Room;
@ -59,6 +60,7 @@ public class MainActivity extends AppCompatActivity {
super.onStart(); super.onStart();
final String[] newestRelease = {""}; final String[] newestRelease = {""};
final boolean[] outdated = {false}; final boolean[] outdated = {false};
final boolean[] failed = {false};
Thread thread = new Thread() { Thread thread = new Thread() {
public void run() { public void run() {
Updater updater = new Updater(); Updater updater = new Updater();
@ -68,6 +70,10 @@ public class MainActivity extends AppCompatActivity {
System.out.println("\tA newer version of Wiimmfi Watcher is available! (" + updater.getNewestRelease() + ")"); System.out.println("\tA newer version of Wiimmfi Watcher is available! (" + updater.getNewestRelease() + ")");
System.out.println("\tView the release notes and the source code here: " + updater.getGithubRelease()); System.out.println("\tView the release notes and the source code here: " + updater.getGithubRelease());
System.out.println("\t---------------------------------------------------------------"); System.out.println("\t---------------------------------------------------------------");
} else if (updater.hasFailed()) {
System.out.println("---------------------------------------------------------------");
System.out.println("\t\t An error has occurred while getting information from the update server.");
System.out.println("\t\t---------------------------------------------------------------");
} else { } else {
System.out.println("---------------------------------------------------------------"); System.out.println("---------------------------------------------------------------");
System.out.println("\t\t" + updater.getNewestRelease() + " is the latest release of Wiimmfi Watcher."); System.out.println("\t\t" + updater.getNewestRelease() + " is the latest release of Wiimmfi Watcher.");
@ -75,6 +81,7 @@ public class MainActivity extends AppCompatActivity {
} }
newestRelease[0] = updater.getNewestRelease(); newestRelease[0] = updater.getNewestRelease();
outdated[0] = updater.isOutdated(); outdated[0] = updater.isOutdated();
failed[0] = updater.hasFailed();
} }
}; };
thread.start(); thread.start();
@ -105,6 +112,9 @@ public class MainActivity extends AppCompatActivity {
} }
}) })
.show(); .show();
} else if (failed[0] && !shownUpdate) {
shownUpdate = true;
Toast.makeText(this, "An error occurred while checking for updates for Wiimmfi Watcher.", Toast.LENGTH_LONG).show();
} }
} }

View file

@ -13,6 +13,7 @@ import java.net.URLConnection;
public class Updater { public class Updater {
public boolean outdated = false; public boolean outdated = false;
public boolean failed = false;
public String newestRelease; public String newestRelease;
public String githubRelease; public String githubRelease;
public String playStore = "https://play.google.com/store/apps/details?id=me.brysonsteck.wiimmfiwatcher"; public String playStore = "https://play.google.com/store/apps/details?id=me.brysonsteck.wiimmfiwatcher";
@ -54,7 +55,10 @@ public class Updater {
} }
public void compareRelease(String deviceRelease) { public void compareRelease(String deviceRelease) {
if (!deviceRelease.equals(newestRelease)) { if (newestRelease == null) {
failed = true;
}
else if (!deviceRelease.equals(newestRelease)) {
outdated = true; outdated = true;
} }
} }
@ -63,6 +67,8 @@ public class Updater {
return outdated; return outdated;
} }
public boolean hasFailed() { return failed; }
public String getNewestRelease() { public String getNewestRelease() {
return newestRelease; return newestRelease;
} }

View file

@ -0,0 +1,4 @@
package me.brysonsteck.wiimmfiwatcher.preferences;
public class ParseSettings {
}

View file

@ -0,0 +1,4 @@
package me.brysonsteck.wiimmfiwatcher.preferences;
public class SettingsFragment {
}