diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/SettingsFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/SettingsFragment.java index 5005a1e83..841fc6d74 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/SettingsFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/SettingsFragment.java @@ -413,9 +413,9 @@ public class SettingsFragment extends MastodonToolbarFragment{ items.add(new HeaderItem(R.string.sk_settings_about)); - if(BuildConfig.BUILD_TYPE.equals("nightly")){ - items.add(new TextItem(R.string.mo_download_latest_nightly_release, ()->UiUtils.launchWebBrowser(getActivity(), "https://nightly.link/LucasGGamerM/moshidon/workflows/nightly-builds/master/moshidon-nightly.apk.zip"), R.drawable.ic_fluent_open_24_regular)); - } +// if(BuildConfig.BUILD_TYPE.equals("nightly")){ +// items.add(new TextItem(R.string.mo_download_latest_nightly_release, ()->UiUtils.launchWebBrowser(getActivity(), "https://nightly.link/LucasGGamerM/moshidon/workflows/nightly-builds/master/moshidon-nightly.apk.zip"), R.drawable.ic_fluent_open_24_regular)); +// } items.add(new TextItem(R.string.mo_settings_contribute, ()->UiUtils.launchWebBrowser(getActivity(), "https://github.com/LucasGGamerM/moshidon"), R.drawable.ic_fluent_open_24_regular)); items.add(new TextItem(R.string.sk_settings_donate, ()->UiUtils.launchWebBrowser(getActivity(), "https://github.com/sponsors/LucasGGamerM"), R.drawable.ic_fluent_heart_24_regular)); diff --git a/mastodon/src/main/java/org/joinmastodon/android/updater/GithubSelfUpdater.java b/mastodon/src/main/java/org/joinmastodon/android/updater/GithubSelfUpdater.java index 90a20e815..27a61cb28 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/updater/GithubSelfUpdater.java +++ b/mastodon/src/main/java/org/joinmastodon/android/updater/GithubSelfUpdater.java @@ -20,7 +20,7 @@ public abstract class GithubSelfUpdater{ } public static boolean needSelfUpdating(){ - return BuildConfig.BUILD_TYPE.equals("githubRelease") || BuildConfig.BUILD_TYPE.equals("debug"); + return BuildConfig.BUILD_TYPE.equals("githubRelease") || BuildConfig.BUILD_TYPE.equals("debug") || BuildConfig.BUILD_TYPE.equals("nightly"); } public abstract void checkForUpdates(); diff --git a/mastodon/src/nightly/java/org/joinmastodon/android/updater/GithubSelfUpdaterImpl.java b/mastodon/src/nightly/java/org/joinmastodon/android/updater/GithubSelfUpdaterImpl.java index 76eb2d853..bc8ced96d 100644 --- a/mastodon/src/nightly/java/org/joinmastodon/android/updater/GithubSelfUpdaterImpl.java +++ b/mastodon/src/nightly/java/org/joinmastodon/android/updater/GithubSelfUpdaterImpl.java @@ -115,7 +115,7 @@ public class GithubSelfUpdaterImpl extends GithubSelfUpdater{ private void actuallyCheckForUpdates(){ Request req=new Request.Builder() - .url("https://api.github.com/repos/LucasGGamerM/moshidon/releases") + .url("https://api.github.com/repos/LucasGGamerM/moshidon-nightly/releases") .build(); Call call=MastodonAPIController.getHttpClient().newCall(req); try(Response resp=call.execute()){ @@ -126,34 +126,13 @@ public class GithubSelfUpdaterImpl extends GithubSelfUpdater{ String tag=obj.get("tag_name").getAsString(); String changelog=obj.get("body").getAsString(); - Pattern pattern=Pattern.compile("v?(\\d+)\\.(\\d+)\\.(\\d+)\\+fork\\.(\\d+)"); - Matcher matcher=pattern.matcher(tag); - if(!matcher.find()){ - Log.w(TAG, "actuallyCheckForUpdates: release tag has wrong format: "+tag); - return; - } - int newMajor=Integer.parseInt(matcher.group(1)), - newMinor=Integer.parseInt(matcher.group(2)), - newRevision=Integer.parseInt(matcher.group(3)), - newForkNumber=Integer.parseInt(matcher.group(4)); - matcher=pattern.matcher(BuildConfig.VERSION_NAME); - String[] currentParts=BuildConfig.VERSION_NAME.split("[.+]"); - if(!matcher.find()){ - Log.w(TAG, "actuallyCheckForUpdates: current version has wrong format: "+BuildConfig.VERSION_NAME); - return; - } - int curMajor=Integer.parseInt(matcher.group(1)), - curMinor=Integer.parseInt(matcher.group(2)), - curRevision=Integer.parseInt(matcher.group(3)), - curForkNumber=Integer.parseInt(matcher.group(4)); - long newVersion=((long)newMajor << 32) | ((long)newMinor << 16) | newRevision; - long curVersion=((long)curMajor << 32) | ((long)curMinor << 16) | curRevision; - if(newVersion>curVersion || newForkNumber>curForkNumber){ - String version=newMajor+"."+newMinor+"."+newRevision+"+fork."+newForkNumber; + + if(!tag.substring(tag.indexOf("-") + 1).equals(BuildConfig.VERSION_NAME.substring(BuildConfig.VERSION_NAME.lastIndexOf("@") + 1))){ + String version=tag.substring(tag.indexOf("-") + 1); Log.d(TAG, "actuallyCheckForUpdates: new version: "+version); for(JsonElement el:obj.getAsJsonArray("assets")){ JsonObject asset=el.getAsJsonObject(); - if("moshidon.apk".equals(asset.get("name").getAsString()) && "application/vnd.android.package-archive".equals(asset.get("content_type").getAsString()) && "uploaded".equals(asset.get("state").getAsString())){ + if("moshidon-nightly.apk".equals(asset.get("name").getAsString()) && "application/vnd.android.package-archive".equals(asset.get("content_type").getAsString()) && "uploaded".equals(asset.get("state").getAsString())){ long size=asset.get("size").getAsLong(); String url=asset.get("browser_download_url").getAsString();