从PhoneGap(Android)访问外部URL(Google.com)

时间:2012-02-07 10:46:12

标签: android cordova

我是PhoneGap和Android的新用户。我无法访问外部网址'就像来自PhoneGap的谷歌,我尝试了Iframe和Window.Location.Href,但不确定为什么它不能正常工作。

<!DOCTYPE HTML>
<html>
<head>
<title>PhoneGap</title>
<script type="text/javascript" charset="utf-8" src="phonegap-0.9.3.js"></script>


<link rel="stylesheet" href="jquery.mobile-1.0a1.min.css" /> 
<script src="jquery-1.4.3.min.js"></script> 
<script src="jquery.mobile-1.0a1.min.js"></script>

</head>
<body>
<iframe src="http://www.google.com"></iframe> 
</body>
</html>

3 个答案:

答案 0 :(得分:11)

您是否已将外部网址添加到白名单?您的项目/res/xml中有一个名为PhoneGap.xml

的文件

以下是我的PhoneGap.xml个文件之一的示例:

<?xml version="1.0" encoding="utf-8"?>
<phonegap>
    <access origin="http://127.0.0.1*"/>
    <access origin="http://devgeeks.org"/>
    <access origin="http://*.phonegap.com"/>
    <log level="DEBUG"/>
</phonegap>

答案 1 :(得分:6)

在phonegap / android中打开外部链接只有两种方式: 资料来源:https://build.phonegap.com/blog/access-tags

检查phonegap的博文。他们正在解释Android默认是什么,以及你可以做些什么。

按照phonegap论坛上的讨论: http://community.phonegap.com/nitobi/topics/make_links_use_external_broswer_consistently

编辑:

  1. 将以下代码添加到config.xml。

     <access origin="http://www.domain.com" browserOnly="true" />
    
  2. 添加:

     function loadURL(url){ 
        navigator.app.loadUrl(url, { openExternal:true }); 
     } 
    
  3. 添加:

     <a onclick="loadURL('http://www.domain.com')" href="#">Url</a>
    

答案 2 :(得分:1)

访问xml帮助了我。您可以使用navigator.app.loadUrl函数获取当前webview中加载的网址 - 查看cordova.js文件以获取选项的详细信息