[英]i cannot open external url in webview in ionic android app
我有這個離子應用程序在webview中打開一個外部URL。 我一直在測試ios模擬器,它工作正常,現在在Android模擬器上測試,但它不起作用。 和android監視器給我以下錯誤調試消息。
08-11 19:28:52.229: D/cr_Ime(2813): [InputMethodManagerWrapper.java:56] isActive: true
08-11 19:28:52.229: D/cr_Ime(2813): [InputMethodManagerWrapper.java:65] hideSoftInputFromWindow
和以下錯誤消息
08-11 19:28:52.070: E/chromium(2813): [ERROR:gles2_cmd_decoder.cc(2109)] [.CommandBufferContext.RenderWorker-0xf43e1700]GL ERROR :GL_INVALID_OPERATION : GLES2DecoderImpl::DoBindTexImage2DCHROMIUM: <- error from previous GL command
08-11 19:28:52.096: E/chromium(2813): [ERROR:gles2_cmd_decoder.cc(2109)] [.CommandBufferContext.RenderWorker-0xf43e1700]GL ERROR :GL_INVALID_OPERATION : GLES2DecoderImpl::DoBindTexImage2DCHROMIUM: <- error from previous GL command
08-11 19:28:52.122: E/chromium(2813): [ERROR:gles2_cmd_decoder.cc(2109)] [.CommandBufferContext.RenderWorker-0xf43e1700]GL ERROR :GL_INVALID_OPERATION : GLES2DecoderImpl::DoBindTexImage2DCHROMIUM: <- error from previous GL command
08-11 19:28:52.226: E/chromium(2813): [ERROR:xwalk_autofill_client.cc(121)] Not implemented reached in virtual void xwalk::XWalkAutofillClient::OnFirstUserGestureObserved()
我完全不知道問題是什么。
function createCORSRequest(method,url)
{
var xhr = new XMLHttpRequest();
if ("withCredentials" in xhr)
{
xhr.open(method, url, true);
}
else if (typeof XDomainRequest !== "undefined")
{
xhr = new XDomainRequest();
xhr.open(method, url);
}
else
{
xhr.open(method, url);
}
return xhr;
}
var formData = new FormData();
formData.append('portal[username]',name);
formData.append('portal[password]',password);
formData.append('portal[From]','web');
var url = endPoint+ '/login';
var xhr = createCORSRequest('POST', url);
xhr.onreadystatechange = function()
{
if (xhr.readyState === 4 && xhr.status === 200)
{
var jsonObj = JSON.parse(xhr.responseText);
var status = jsonObj.status;
var message = jsonObj.message;
if(status==='success')
{
var token = jsonObj.token;
home = 'http://127.0.0.1:8888/map/index?token='+token;
var ref = window.open(home,'_self');
ref.addEventListener('loadstart', function(event)
{
if (event.url == "http://127.0.0.1:8888/map/logout")
{
ref.close();
}
});
}
else
{
alert(message);
}
}
};
xhr.send(formData);
您應該能夠使用$ cordovaInAppBrowser插件打開一個URL。
$cordovaInAppBrowser.open('http://example.com', '_system');
我相信你還必須在config.xml中授予外部URL的權限
<allow-navigation href="http://example.com/*"/>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.