Apache Cordova:CSP错误

时间:2015-09-30 14:52:36

标签: javascript android cordova google-maps

我的Android 5.0 Lollipop和Google Maps Api有问题,我有一个不安全评估的CSP错误。

这是错误:

  

https://maps.googleapis.com/maps-api-v3/api/js/22/7/intl/es_ALL/main.js:65

     

未捕获的EvalError:拒绝将字符串评估为JavaScript,因为' unsafe-eval'以下内容安全策略指令中不允许使用脚本来源:" default-src *' unsafe-inline'"。

守则:

<meta http-equiv="Content-Security-Policy" content="default-src * 'unsafe-inline'; style-src 'self' 'unsafe-inline'; script-src: 'self' 'unsafe-inline' 'unsafe-eval'">

在我的config.xml中,我有这个:

    <plugin name="cordova-plugin-whitelist" version="1" />
<access origin="*" />

我对Android 4.x没有任何问题,但只有5.x,我知道因为Chromium Webview,但由于此错误我无法使用Google地图。

我该怎么做才能解决这个问题?

谢谢!

1 个答案:

答案 0 :(得分:2)

尝试重构一下您的Content-Security-Policy元标记,我在使用Google地图的Cordova 5 / Android 5应用中进行了以下工作(位置与您的不同:

<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'">