0

Это заставляет меня вытащить мои волосы и так отчаянно начать тестирование в Android 5. *, так что здесь.Белое URL-адрес в Phonegap для Android Lollipop 5.0

Во-первых вот что у меня есть:

config.xml

<access origin="*.google.com"/> 
<access origin="*.gstatic.com"/> 
<access origin="*.googleapis.com"/> 
... 
<plugin name="cordova-plugin-whitelist" version="1" /> 
<allow-intent href="http://*/*" /> 
<allow-intent href="https://*/*" /> 

index.html

<head> 
    ... 


    <meta http-equiv="Content-Security-Policy" 
      content="default-src 'self' https://*.google.com; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'"> 
    <meta http-equiv="Content-Security-Policy" 
      content="default-src 'self' https://*.gstatic.com; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'"> 
    <meta http-equiv="Content-Security-Policy" 
      content="default-src 'self' https://*.googleapis.com; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'"> 

Я обнаружил, что та же проблема описана here, и попытался объединить найденные предложения, а также некоторые другие рекомендации от PhoneGap Documentation, еще не успел.

Чтобы уточнить эту проблему, ресурсом, который я пытаюсь разрешить, является Google Maps V3. Я уверен, что я пропустил что-то маленькое, буду признателен за все, даже простое предложение.

Спасибо!

UPDATE 1

Ну пятнистый, @Fido, но, к сожалению, это оказалось не единственным вопросом. Теперь я использую плагин PhoneGap, как описано в документе here, и заменил его в моем config.xml как таковой, но не улучшился. Самое смешное, что я заметил, это то, что плагин не отображается как используемый в сводке плагина проекта (который я теперь обнаружил). Поэтому я бы сказал, что, вероятно, несмотря на документацию, он не сможет вытащить этот ресурс, как он его описывает.

Я дам любому возможность сделать какие-либо дополнительные предложения, но в конечном итоге мне, возможно, придется укусить пулю и сделать локальную сборку, как предлагает Фидо.

UPDATE 2

Как оказалось, я не оттолкнула мою config.xml в хранилище должным образом, так что теперь отражает то, что я использую whitelist plugin provided by Corova, но не помогло. Я увижу, есть ли какие-либо плагины, прежде чем я буду строить локальные и использовать другой предложенный плагин.

UPDATE 3

Хорошие новости; Я был в состоянии указать пакет НПМ одного и того же плагина от here:

<gap:plugin name="cordova-plugin-whitelist" version="1.0.0" source="npm" />

И насколько я понимаю, это зеркало, как вы предложили @Fido (поправьте меня, если я ошибаюсь) но проблема сохраняется; Я могу только представить себе, что это либо мои истоки, либо разрешения, либо определения Content-Security-Policy неверны.

Спасибо!

+0

Если вы используете cordova 4.0 и выше, убедитесь, что у вас есть [this] (https://github.com/apache/cordova-plugin-whitelist) плагин. Мои белые списки перестали работать, пока я не использовал его. –

+0

Мне, вероятно, следует удалить свой тег cordova, поскольку я только начал получать эти сборки PhoneGap и в настоящее время начинаю пользоваться сервисом [cloud] (http://build.phonegap.com). Могу ли я просто изменить атрибут версии узла плагина на 4 вместо этого? – Jester

+0

Кордова и Phonegap - по сути то же самое. Кордова принадлежит Apache и является открытым исходным кодом. Phonegap принадлежит Adobe и является облачным сервисом, созданным на основе кордовы. В любом случае, все плагины для телефонии - это, по сути, плагины cordova. Короче говоря, вам, скорее всего, понадобится этот [плагин] (https://github.com/apache/cordova-plugin-whitelist), чтобы получить белый список. –

ответ

2

При использовании Cordova 4.0 и выше вам необходимо добавить плагин this, чтобы получить белые списки, выполняющие работу.

В вашем случае, поскольку вы используете PhoneGap платформы сборки этой линии:

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

Если на самом деле быть этим:

<gap:plugin name="cordova-plugin-whitelist" version="1" /> 

Если служба облака оказывается слишком ограничивающей, то вы можете использовать CLI установить плагины cordova, а затем строить и развертывать локально. Дополнительная информация об этой оценке here. Этот подход требует больше усилий по настройке (например, получение sroid sroid), но делает развитие в долгосрочной перспективе намного быстрее, на мой взгляд.

+0

Очень ценно, хорошее место, попробуем все это как можно скорее и дадим вам знать результат! – Jester

+1

[This] (http://docs.build.phonegap.com/en_US/configuring_plugins.md.html) предоставляет дополнительную информацию о извлечении плагинов с помощью сборки phonegap. –

+0

Супер цените ответ, Фидо! Я еще не совсем из леса, но это довольно решительно ответило на эту конкретную проблему. На данный момент, кажется, * что в Content-Security-Policy должны были быть внесены большие корректировки, и теперь я получаю простой белый экран (WSOD), но дополнительные данные показывают, что это относится к автоответчику PhoneGap, скрыть-заставку. Также getCurrentCoordinates немного flakey, но экспериментирует, ставя его на тест таймера. – Jester

Смежные вопросы