diff --git a/android/app/src/main/java/com/microsoft/codepush/react/CodePush.java b/android/app/src/main/java/com/microsoft/codepush/react/CodePush.java index 707a876..f84102c 100644 --- a/android/app/src/main/java/com/microsoft/codepush/react/CodePush.java +++ b/android/app/src/main/java/com/microsoft/codepush/react/CodePush.java @@ -429,50 +429,51 @@ public class CodePush { if (isDebugMode) { // Do not report metrics if running in debug mode. promise.resolve(""); - } else { - AsyncTask asyncTask = new AsyncTask() { - @Override - protected Void doInBackground(Object... params) { - if (needToReportRollback) { - needToReportRollback = false; - JSONArray failedUpdates = getFailedUpdates(); - if (failedUpdates != null && failedUpdates.length() > 0) { - try { - JSONObject lastFailedPackageJSON = failedUpdates.getJSONObject(failedUpdates.length() - 1); - WritableMap lastFailedPackage = CodePushUtils.convertJsonObjectToWriteable(lastFailedPackageJSON); - WritableMap failedStatusReport = codePushTelemetryManager.getRollbackReport(lastFailedPackage); - if (failedStatusReport != null) { - promise.resolve(failedStatusReport); - return null; - } - } catch (JSONException e) { - throw new CodePushUnknownException("Unable to read failed updates information stored in SharedPreferences.", e); - } - } - } else if (didUpdate) { - WritableMap currentPackage = codePushPackage.getCurrentPackage(); - if (currentPackage != null) { - WritableMap newPackageStatusReport = codePushTelemetryManager.getUpdateReport(currentPackage); - if (newPackageStatusReport != null) { - promise.resolve(newPackageStatusReport); + return; + } + + AsyncTask asyncTask = new AsyncTask() { + @Override + protected Void doInBackground(Object... params) { + if (needToReportRollback) { + needToReportRollback = false; + JSONArray failedUpdates = getFailedUpdates(); + if (failedUpdates != null && failedUpdates.length() > 0) { + try { + JSONObject lastFailedPackageJSON = failedUpdates.getJSONObject(failedUpdates.length() - 1); + WritableMap lastFailedPackage = CodePushUtils.convertJsonObjectToWriteable(lastFailedPackageJSON); + WritableMap failedStatusReport = codePushTelemetryManager.getRollbackReport(lastFailedPackage); + if (failedStatusReport != null) { + promise.resolve(failedStatusReport); return null; } + } catch (JSONException e) { + throw new CodePushUnknownException("Unable to read failed updates information stored in SharedPreferences.", e); } - } else if (isRunningBinaryVersion) { - WritableMap newAppVersionStatusReport = codePushTelemetryManager.getBinaryUpdateReport(appVersion); - if (newAppVersionStatusReport != null) { - promise.resolve(newAppVersionStatusReport); + } + } else if (didUpdate) { + WritableMap currentPackage = codePushPackage.getCurrentPackage(); + if (currentPackage != null) { + WritableMap newPackageStatusReport = codePushTelemetryManager.getUpdateReport(currentPackage); + if (newPackageStatusReport != null) { + promise.resolve(newPackageStatusReport); return null; } } - - promise.resolve(""); - return null; + } else if (isRunningBinaryVersion) { + WritableMap newAppVersionStatusReport = codePushTelemetryManager.getBinaryUpdateReport(appVersion); + if (newAppVersionStatusReport != null) { + promise.resolve(newAppVersionStatusReport); + return null; + } } - }; - asyncTask.execute(); - } + promise.resolve(""); + return null; + } + }; + + asyncTask.execute(); } @ReactMethod