Check for pre releases

This commit is contained in:
M66B 2019-04-05 11:48:28 +02:00
parent 1912173a76
commit 9bd262d1b4
1 changed files with 8 additions and 2 deletions

View File

@ -705,6 +705,7 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB
private class UpdateInfo {
String tag_name; // version
boolean prerelease;
String html_url;
}
@ -767,6 +768,7 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB
// Get update info
UpdateInfo info = new UpdateInfo();
info.tag_name = jroot.getString("tag_name");
info.prerelease = jroot.getBoolean("prerelease");
info.html_url = jroot.getString("html_url");
// Check if new release
@ -776,7 +778,7 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB
if (jasset.has("name")) {
String name = jasset.getString("name");
if (name != null && name.endsWith(".apk")) {
Log.i("Latest version=" + info.tag_name);
Log.i("Latest version=" + info.tag_name + " prerelease=" + info.prerelease);
if (BuildConfig.VERSION_NAME.equals(info.tag_name))
return null;
else
@ -794,8 +796,9 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB
@Override
protected void onExecuted(Bundle args, UpdateInfo info) {
boolean always = args.getBoolean("always");
if (info == null) {
if (args.getBoolean("always")) {
if (always) {
Toast toast = Toast.makeText(ActivityView.this, BuildConfig.VERSION_NAME, Toast.LENGTH_LONG);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();
@ -803,6 +806,9 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB
return;
}
if (!always && info.prerelease)
return;
final Intent update = new Intent(Intent.ACTION_VIEW, Uri.parse(info.html_url));
if (update.resolveActivity(getPackageManager()) != null)
new DialogBuilderLifecycle(ActivityView.this, ActivityView.this)