Handle CheckForNewAppVersion exceptions in one place

This commit is contained in:
Stypox 2020-11-22 13:27:51 +01:00
parent fd4c37e9b3
commit 6f5e99be6f
No known key found for this signature in database
GPG Key ID: 4BDF1B40A49FDD23
1 changed files with 4 additions and 15 deletions

View File

@ -22,13 +22,11 @@ import com.grack.nanojson.JsonObject;
import com.grack.nanojson.JsonParser; import com.grack.nanojson.JsonParser;
import com.grack.nanojson.JsonParserException; import com.grack.nanojson.JsonParserException;
import org.schabi.newpipe.extractor.exceptions.ReCaptchaException;
import org.schabi.newpipe.report.ErrorActivity; import org.schabi.newpipe.report.ErrorActivity;
import org.schabi.newpipe.report.ErrorInfo; import org.schabi.newpipe.report.ErrorInfo;
import org.schabi.newpipe.report.UserAction; import org.schabi.newpipe.report.UserAction;
import java.io.ByteArrayInputStream; import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.security.MessageDigest; import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException; import java.security.NoSuchAlgorithmException;
@ -186,15 +184,7 @@ public final class CheckForNewAppVersion {
} }
// Make a network request to get latest NewPipe data. // Make a network request to get latest NewPipe data.
try { return DownloaderImpl.getInstance().get(NEWPIPE_API_URL).responseBody();
return DownloaderImpl.getInstance().get(NEWPIPE_API_URL).responseBody();
} catch (IOException | ReCaptchaException e) {
// connectivity problems, do not alarm user and fail silently
if (DEBUG) {
Log.w(TAG, Log.getStackTraceString(e));
}
return null;
}
}) })
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread()) .observeOn(AndroidSchedulers.mainThread())
@ -218,15 +208,14 @@ public final class CheckForNewAppVersion {
} catch (final JsonParserException e) { } catch (final JsonParserException e) {
// connectivity problems, do not alarm user and fail silently // connectivity problems, do not alarm user and fail silently
if (DEBUG) { if (DEBUG) {
Log.w(TAG, Log.getStackTraceString(e)); Log.w(TAG, "Could not get NewPipe API: invalid json", e);
} }
} }
}, },
throwable -> { e -> {
// connectivity problems, do not alarm user and fail silently // connectivity problems, do not alarm user and fail silently
if (DEBUG) { if (DEBUG) {
Log.i(TAG, "Could not get NewPipe API: network problem"); Log.w(TAG, "Could not get NewPipe API: network problem", e);
Log.i(TAG, Log.getStackTraceString(throwable));
} }
}); });
} }