diff --git a/app/src/main/java/org/schabi/newpipe/CheckForNewAppVersionTask.java b/app/src/main/java/org/schabi/newpipe/CheckForNewAppVersionTask.java index af9b88ac1..6a6d1b9c2 100644 --- a/app/src/main/java/org/schabi/newpipe/CheckForNewAppVersionTask.java +++ b/app/src/main/java/org/schabi/newpipe/CheckForNewAppVersionTask.java @@ -2,11 +2,13 @@ package org.schabi.newpipe; import android.app.Application; import android.app.PendingIntent; +import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.Signature; +import android.net.ConnectivityManager; import android.net.Uri; import android.os.AsyncTask; import android.preference.PreferenceManager; @@ -68,6 +70,8 @@ public class CheckForNewAppVersionTask extends AsyncTask { @Override protected String doInBackground(Void... voids) { + + if(isCancelled() || !isConnected()) return null; // Make a network request to get latest NewPipe data. if (client == null) { @@ -227,4 +231,12 @@ public class CheckForNewAppVersionTask extends AsyncTask { return getCertificateSHA1Fingerprint().equals(GITHUB_APK_SHA1); } + + private boolean isConnected() { + + ConnectivityManager cm = + (ConnectivityManager) app.getSystemService(Context.CONNECTIVITY_SERVICE); + return cm.getActiveNetworkInfo() != null + && cm.getActiveNetworkInfo().isConnected(); + } }