You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "Peter Olszowka (JIRA)" <ji...@apache.org> on 2017/05/03 22:41:04 UTC
[jira] [Comment Edited] (CB-12754) inAppBrowser crashing on Android
[ https://issues.apache.org/jira/browse/CB-12754?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15995815#comment-15995815 ]
Peter Olszowka edited comment on CB-12754 at 5/3/17 10:40 PM:
--------------------------------------------------------------
Here's an excerpt of that portion of the code. Does the excerpt include what you need? Yes, I use listeners, but don't find they always work--especially "loaderror".
{noformat}
connect: function() {
this.wrappedOnLoadStop = this.onLoadstop.bind(this);
this.wrappedOnLoadError = this.onLoaderror.bind(this);
this.timeout = window.setTimeout(this.wrappedOnLoadError, 7500);
this.cgwin = cordova.InAppBrowser.open(this.url, "_blank", "EnableViewPortScale=yes,toolbar=no,location=no,hidden=yes" );
this.cgwin.addEventListener("loadstop", this.wrappedOnLoadStop);
this.cgwin.addEventListener("loaderror", this.wrappedOnLoadError);
},
onLoadstop: function() {
if (this.waitingForRetry) {
this.loadedLate = true;
} else {
SpinnerPlugin.activityStop();
window.clearTimeout(this.timeout);
this.cgwin.removeEventListener("loadstop", this.wrappedOnLoadStop); //doesn't seem to work, hence use of loadedLate flag
this.cgwin.removeEventListener("loaderror", this.wrappedOnLoadError);
this.cgwin.show();
this.usingUniversalLink = false; // We're through with this flag. Reset for next time.
window.setInterval(this.pollInAppBrowserForLink.bind(this), 500);
}
},
{noformat}
was (Author: olszowka):
Here's an excerpt of that portion of the code. Does the excerpt include what you need? Yes, I use listeners, but don't find they always work--especially "loaderror".
connect: function() {
this.wrappedOnLoadStop = this.onLoadstop.bind(this);
this.wrappedOnLoadError = this.onLoaderror.bind(this);
this.timeout = window.setTimeout(this.wrappedOnLoadError, 7500);
this.cgwin = cordova.InAppBrowser.open(this.url, "_blank", "EnableViewPortScale=yes,toolbar=no,location=no,hidden=yes" );
this.cgwin.addEventListener("loadstop", this.wrappedOnLoadStop);
this.cgwin.addEventListener("loaderror", this.wrappedOnLoadError);
},
onLoadstop: function() {
if (this.waitingForRetry) {
this.loadedLate = true;
} else {
SpinnerPlugin.activityStop();
window.clearTimeout(this.timeout);
this.cgwin.removeEventListener("loadstop", this.wrappedOnLoadStop); //doesn't seem to work, hence use of loadedLate flag
this.cgwin.removeEventListener("loaderror", this.wrappedOnLoadError);
this.cgwin.show();
this.usingUniversalLink = false; // We're through with this flag. Reset for next time.
window.setInterval(this.pollInAppBrowserForLink.bind(this), 500);
}
},
> inAppBrowser crashing on Android
> --------------------------------
>
> Key: CB-12754
> URL: https://issues.apache.org/jira/browse/CB-12754
> Project: Apache Cordova
> Issue Type: Bug
> Components: cordova-android, cordova-plugin-inappbrowser
> Reporter: Peter Olszowka
>
> Using cordova-plugin-inappbrowser version 1.7.0
> Getting many crash reports from Google play store with following stack trace:
> java.lang.NullPointerException: Attempt to invoke virtual method 'void org.apache.cordova.inappbrowser.InAppBrowserDialog.show()' on a null object reference
> at org.apache.cordova.inappbrowser.InAppBrowser$2.run(InAppBrowser.java:257)
> at android.os.Handler.handleCallback(Handler.java:739)
> at android.os.Handler.dispatchMessage(Handler.java:95)
> at android.os.Looper.loop(Looper.java:145)
> at android.app.ActivityThread.main(ActivityThread.java:6126)
> at java.lang.reflect.Method.invoke(Native Method)
> at java.lang.reflect.Method.invoke(Method.java:372)
> at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399)
> at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194)
> The issue appears on many versions of Android including 4.4, 5.1, 6.0, & 7.0.
> You can try the app from the Google Play store: "cargurus"
> I am unable to reproduce the error myself, but 25 users/day are reporting it.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@cordova.apache.org
For additional commands, e-mail: issues-help@cordova.apache.org