CB-10472 NullPointerException: org.apache.cordova.PluginManager.onSaveInstanceState

check if pluginManager is null before using it
This closes #255
This commit is contained in:
Carlos Santana 2016-01-28 15:57:38 -05:00
parent e08d0671ab
commit 088140aca4

View File

@ -108,17 +108,20 @@ public class CordovaInterfaceImpl implements CordovaInterface {
// If there was no Activity result, we still need to send out the resume event if the // If there was no Activity result, we still need to send out the resume event if the
// Activity was destroyed by the OS // Activity was destroyed by the OS
activityWasDestroyed = false; activityWasDestroyed = false;
if(pluginManager != null)
CoreAndroid appPlugin = (CoreAndroid) pluginManager.getPlugin(CoreAndroid.PLUGIN_NAME); {
if(appPlugin != null) { CoreAndroid appPlugin = (CoreAndroid) pluginManager.getPlugin(CoreAndroid.PLUGIN_NAME);
JSONObject obj = new JSONObject(); if(appPlugin != null) {
try { JSONObject obj = new JSONObject();
obj.put("action", "resume"); try {
} catch (JSONException e) { obj.put("action", "resume");
LOG.e(TAG, "Failed to create event message", e); } catch (JSONException e) {
LOG.e(TAG, "Failed to create event message", e);
}
appPlugin.sendResumeEvent(new PluginResult(PluginResult.Status.OK, obj));
} }
appPlugin.sendResumeEvent(new PluginResult(PluginResult.Status.OK, obj));
} }
} }
} }
@ -169,8 +172,10 @@ public class CordovaInterfaceImpl implements CordovaInterface {
String serviceName = activityResultCallback.getServiceName(); String serviceName = activityResultCallback.getServiceName();
outState.putString("callbackService", serviceName); outState.putString("callbackService", serviceName);
} }
if(pluginManager != null){
outState.putBundle("plugin", pluginManager.onSaveInstanceState());
}
outState.putBundle("plugin", pluginManager.onSaveInstanceState());
} }
/** /**