我正在使用FireBase Notifications,我可以发送通知,将用户发送到我在控制台上输入的webview页面。
问题是当它匹配IF语句时也会触发else语句,可能是什么原因造成的呢?
if(getIntent().getExtras()!=null) {
for (String key : getIntent().getExtras().keySet()) {
if (key.equals("url")){
mwebView.loadUrl("/" + getIntent().getExtras().getString(key));
}else {
mwebView.loadUrl("");
}
}
}
因为它在应用程序崩溃的同时执行。
此外,当我按照通常的方式加载应用程序时,它与with:匹配
if(getIntent().getExtras()!=null)
然后加载else语句。 getExtras不应该是null吗?
当我第一次安装应用程序的新实例时,它使用以下语句:
if(getIntent().getExtras()==null) {
if (haveNetworkConnection()) {
mwebView.loadUrl("");
} else {
mwebView.loadUrl("file:///android_asset/myerrorpage.html");
}
}
更新
由于我无法找出为什么会发生这种情况,我正在尝试另一种方法,如何使用循环外的变量来使用如下:
if(getIntent().getExtras()!=null) {
for (String key : getIntent().getExtras().keySet()) {
String valuex = getIntent().getExtras().getString(key);
}
}
if (haveNetworkConnection()) {
mwebView.loadUrl("/" + valuex);
} else {
mwebView.loadUrl("file:///android_asset/myerrorpage.html");
}