我正在制作一个可以加载谷歌地图的简单应用。但问题是我每次加载这个
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
它不会在我的Android模拟器上运行,而在桌面上它工作正常。我怎样才能让Phonegap或Android允许外部脚本工作/加载?
更新:我总是收到此错误“应用程序错误:与服务器的连接不成功。(文件/// android_asset / www / index.html)。但如果我删除了谷歌地图脚本。它可以工作。
答案 0 :(得分:3)
实际上,白名单是@TDeBailleul所说的问题,但他指的是iOS中白名单的位置而不是Android。
在android中,它位于/res/xml/PhoneGap.xml
中此答案中有一个此文件的示例:https://stackoverflow.com/a/9187479/878602
答案 1 :(得分:0)
最新的PhoneGap版本(2.7.0)。您应该修改位于Android项目的 / res / 目录中的文件“ config.xml ”。只需添加:
<access origin="http://www.yourdomain.com" subdomains="true" />
除非另有规定,否则假定域被阻止。
答案 2 :(得分:0)
在手机版5.1中,有些内容与上述答案不同。
安装了一个名为cordova-plugin-whitelist
的插件。阅读plugins/cordova-plugin-whitelist/README.md
处的文件以了解详细信息。
有多种白名单(导航,意图和访问来源),在这种情况下,您需要content-security -policy。
<!-- Enable all requests, inline styles, and eval() -->
<meta http-equiv="Content-Security-Policy" content="script-src: 'self' 'unsafe-inline' 'unsafe-eval' 'https://maps.google.com'">