规格:
以上代码适用于桌面应用程序,config.xml由PhoneGap桌面应用程序创建。 当我在build.phonegap.com上试用它时,Google地图无法初始化,因此,Android上没有任何内容,只有白屏。
这是我需要的 initMap 方法:
var map, directionsService, directionsDisplay;
function initMap() {
directionsService = new google.maps.DirectionsService;
directionsDisplay = new google.maps.DirectionsRenderer;
map = new google.maps.Map(document.getElementById('gMap'), {
zoom: 10,
center: { lat: 25.0115052, lng: 66.7845126 },
mapTypeId: 'roadmap',
});
directionsDisplay.setMap(map);
} // initMap() ends
config.xml中:
<?xml version='1.0' encoding='utf-8'?>
<widget id="com.phonegap.helloworld"
version="1.0.0"
xmlns="http://www.w3.org/ns/widgets"
xmlns:gap="http://phonegap.com/ns/1.0">
<name>TestApp</name>
<description>
A blank PhoneGap app.
</description>
<author email="support@phonegap.com" href="http://phonegap.com">
PhoneGap Team
</author>
<content src="index.html" />
<access origin="*" />
</widget>
答案 0 :(得分:1)
以下是制作原生混合应用时需要记住的要点:
的解决方案:强>
您需要 cordova-plugin-whitelist 插件才能访问地图,这样就可以解决您的问题:
<plugin name="cordova-plugin-whitelist" spec="1.3.2" />
<!-- Allow geo: links to open maps -->
<allow-intent href="geo:*" />
根据Cordova Docs:
默认情况下,不允许使用外部URL。在Android上,这相当于发送类型为BROWSEABLE的意图。