diff --git a/build.gradle b/build.gradle index 296bd87097..7dd2375148 100644 --- a/build.gradle +++ b/build.gradle @@ -12,7 +12,7 @@ buildscript { ext.annotationVersion = '1.7.1' ext.appcompatVersion = '1.6.1' - ext.biometricVersion = '1.1.0' + ext.cnajerabiometricVersion = '1.1.0' ext.coreVersion = '1.12.0' ext.credentialsVersion = '1.2.0' ext.fragmentVersion = '1.6.2' diff --git a/play-services-core/src/main/java/org/microg/gms/auth/login/LoginActivity.java b/play-services-core/src/main/java/org/microg/gms/auth/login/LoginActivity.java index 8b55858e8e..c0ce8e6993 100644 --- a/play-services-core/src/main/java/org/microg/gms/auth/login/LoginActivity.java +++ b/play-services-core/src/main/java/org/microg/gms/auth/login/LoginActivity.java @@ -291,6 +291,11 @@ private static void prepareWebViewSettings(Context context, WebSettings settings private void start() { ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); + if (cm == null) { + Log.w(TAG, "ConnectivityManager is null"); + showError(R.string.no_network_error_desc); + return; + } NetworkInfo networkInfo = cm.getActiveNetworkInfo(); if (networkInfo != null && networkInfo.isConnected()) { if (LastCheckinInfo.read(this).getAndroidId() == 0) { @@ -346,6 +351,11 @@ private void closeWeb(boolean programmaticAuth) { } private void retrieveRtToken(String oAuthToken) { + if (oAuthToken == null || oAuthToken.isEmpty()) { + Log.w(TAG, "OAuth token is null or empty"); + showError(R.string.auth_general_error_desc); + return; + } new AuthRequest().fromContext(this) .appIsGms() .callerIsGms() @@ -357,6 +367,11 @@ private void retrieveRtToken(String oAuthToken) { .getResponseAsync(new HttpFormClient.Callback() { @Override public void onResponse(AuthResponse response) { + if (response == null || response.email == null) { + Log.w(TAG, "AuthResponse or email is null"); + showError(R.string.auth_general_error_desc); + return; + } Account account = new Account(response.email, accountType); if (isReAuth && reAuthAccount != null && reAuthAccount.name.equals(account.name)) { accountManager.removeAccount(account, future -> saveAccount(account, response), null);