From 8ecb977629189f0bad5c223a7815ec4f323470d2 Mon Sep 17 00:00:00 2001 From: Bryson Steck Date: Wed, 9 Jun 2021 22:43:55 -0600 Subject: added new update checker, need to implement into ui --- .../me/brysonsteck/wiimmfiwatcher/Updater.java | 69 ++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 app/src/main/java/me/brysonsteck/wiimmfiwatcher/Updater.java (limited to 'app/src/main/java/me/brysonsteck/wiimmfiwatcher/Updater.java') diff --git a/app/src/main/java/me/brysonsteck/wiimmfiwatcher/Updater.java b/app/src/main/java/me/brysonsteck/wiimmfiwatcher/Updater.java new file mode 100644 index 0000000..eaa4d0c --- /dev/null +++ b/app/src/main/java/me/brysonsteck/wiimmfiwatcher/Updater.java @@ -0,0 +1,69 @@ +package me.brysonsteck.wiimmfiwatcher; + +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.net.URL; +import java.net.URLConnection; + +public class Updater { + + public boolean outdated = false; + public String newestRelease; + public String githubRelease; + public String playStore = "https://play.google.com/store/apps/details?id=me.brysonsteck.wiimmfiwatcher"; + + public Updater() { + try { + String json = urlReader(); + JsonElement root = new JsonParser().parse(json); + JsonObject rootObj = root.getAsJsonObject(); + newestRelease = rootObj.get("current-release").getAsString(); + githubRelease = rootObj.get("github-release").getAsString(); + } catch (IOException e) { + System.out.println("An error has occurred while attempting to check for updates."); + e.printStackTrace(); + } + } + + public String urlReader() throws IOException { + URL website = new URL("https://brysonsteck.net/watcher.json"); + URLConnection connection = website.openConnection(); + BufferedReader in = new BufferedReader( + new InputStreamReader( + connection.getInputStream())); + + StringBuilder response = new StringBuilder(); + String inputLine; + + while ((inputLine = in.readLine()) != null) + response.append(inputLine); + + in.close(); + + return response.toString(); + + } + + public void compareRelease(String deviceRelease) { + if (!deviceRelease.equals(newestRelease)) { + outdated = true; + } + } + + public boolean isOutdated() { + return outdated; + } + + public String getNewestRelease() { + return newestRelease; + } + + public String getGithubRelease() { + return githubRelease; + } +} -- cgit v1.2.3