应用程序在低版Android手机(在软糖上测试)工作正常。它在较低版本(4.1.2)Android手机上显示谷歌地图。
我调用Google地图API的脚本是
<script src="https://maps.googleapis.com/maps/api/js?key=xxxxx"> </script>
在config.xml中
给出的许可列表
<access origin="*" />
<allow-navigation href="*" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
<platform name="android">
<allow-intent href="market:*" />
</platform>
<platform name="ios">
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
</platform>
在清单
下的AndroidManifest.xml中<supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="true" android:xlargeScreens="true" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.VIBRATE" />
<application android:hardwareAccelerated="true" android:icon="@drawable/logo" android:label="@string/app_name" android:supportsRtl="true">
<activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/activity_name" android:launchMode="singleTop" android:name="MainActivity" android:theme="@android:style/Theme.Black.NoTitleBar" android:windowSoftInputMode="adjustResize">
<intent-filter android:label="@string/launcher_name">
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="22" />
index.js
map = new google.maps.Map(document.getElementById("mapmake"), myOptions);
HTML元标记
<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *">
<meta name="format-detection" content="telephone=no">
<meta name="msapplication-tap-highlight" content="no">
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width">
那么为什么它不能用于最新的 Android手机(5.1.1)它显示 BLANK div?
答案 0 :(得分:0)
所以这些以下更改用于处理我的地图
1 。将您的MAP脚本链接更改为以下路径(MAP API v = 3)
<script type='text/javascript' src='https://maps-api-ssl.google.com/maps/api/js?v=3.3&sensor=false'></script>
OR (如果您想嵌入其他库 示例 :(&#39;地点&#39;))< / p>
<script type='text/javascript' src='https://maps-api-ssl.google.com/maps/api/js?v=3.3&sensor=false&libraries=places'></script>
注意 :( 之后脚本链接 jquery.min.js 和 index.js 然后 放置此地图脚本链接)
2 。某些时候您可能会收到以下错误
[拒绝加载脚本&#39; maps.googleapis.com/maps/api / ...;因为它违反了以下内容安全策略指令:&#34; default-src&#39; self&#39;数据:差距:ssl.gstatic.com&#39; unsafe-eval&#39;&#34;。请注意&#39; script-src&#39;没有明确设置,所以&#39; default-src&#39;被用作后备。]
对于更改元http-equiv =&#34; 内容 - 安全政策&#34;
这
<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *">
到
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' http://* 'unsafe-inline'; script-src 'self' https://* 'unsafe-inline' 'unsafe-eval'" />
休息都是一样的。谢谢。