几周前,我收到了谷歌的电子邮件,建议我将应用程序升级到3.5.1,否则可能会导致应用程序被删除。
我的应用程序是特定于Android的,我在Android Studio中构建它,所以我已经包含了更新的.jar文件并更新了.js以及所有这些内容。
在浏览我自己的html页面时,一切似乎都很好,但在打开外部网页时我遇到了麻烦。
public class MyActivity extends CordovaActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
loadUrl(getString(R.string.indexURL));
}
@Override
public void init() {
final String os = "Android";
final String version = getVersion();
CordovaWebView webView = new CordovaWebView(this);
init(webView, new CordovaWebViewClient(this, webView) {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
super.onPageFinished(view, url);
boolean redirected = false;
//If the page you're accessing is the root or login page
if (url.endsWith("/Login")) {
//redirect to root page with query string
appView.loadUrl((getString(R.string.mainURL) + "?os=" + os + "&version=" + version));
redirected = true;
}
return redirected;
}
}, new CordovaChromeClient(this, webView));
}
一旦我升级,我就用谷歌分析插件做了一些评论,我使用和测试了我的外部网址并没有加载。 MyActivity正在从DroidGap扩展,因此我将其更新为从CordovaActivity扩展,但同样的问题正在应用。我可以看到它击中了Url重定向代码,之后它没有做任何事情。
10-14 12:28:46.166 10958-10958/com.example.Example D/CordovaWebView﹕ >>> loadUrl(https://www.MyWebsite.com.au/Login/?os=Android&version=2.0.0)
10-14 12:28:46.166 10958-10958/com.example.Example D/PluginManager﹕ init()
10-14 12:28:46.166 10958-10958/com.example.Example D/CordovaWebView﹕ >>> loadUrlNow()
10-14 12:29:06.166 10958-10958/com.example.Example E/CordovaWebView﹕ CordovaWebView: TIMEOUT ERROR!
有什么突出的错误吗?提前谢谢。
答案 0 :(得分:0)
问题是config.xml采用错误格式与<plugin>
标记而非<feature>
标记的组合。
也改变了
if (url.endsWith("/Login")) {
//redirect to root page with query string
appView.loadUrl((getString(R.string.mainURL) + "?os=" + os + "&version=" + version));
redirected = true;
}
到
if (url.endsWith("/Login")) {
//redirect to root page with query string
loadUrl((getString(R.string.mainURL) + "?os=" + os + "&version=" + version));
redirected = true;
}