2017-01-15 2 views
0

Я пытаюсь встроить карту в свое приложение Phonegap. Он хорошо работает, когда я тестирую его в браузере. Все в приложении отлично работает в эмуляторе Xcode iOS. Однако, когда я пытаюсь внедрить карту и просматривать ее в эмуляторе, карта вообще не отображается. К нему прилагается соответствующий HTML:Внедрение Google Мои карты в iframe с помощью Phonegap

<div id="map-container"> 
    <iframe src="https://www.google.com/maps/d/embed?mid=1WVW2iTQgoHSU1Bm3DkQJtlVYSAU" width="640" height="480" frameborder="none"></iframe> 
</div> 

Это изображение страницы работает нормально в Safari: map in Safari

Это изображение страницы не загружая карту в iPhone эмулятора Xcode (после ждущих некоторых время): map in Xcode Simulator

ответ

0

Попробуйте добавить это в config.xml файле

<allow-navigation href="*"/> 

Если все еще не работает добавить в "Content-Security-Policy" правило рамки

frame-src * gap://ready 'unsafe-inline' 'unsafe-eval'; 

Я использую его в этой форме с динамическим содержимым

function AddMap() { 
// The Url 
var mapUrl = "http://www.google.com/maps/d/embed?mid=1WVW2iTQgoHSU1Bm3DkQJtlVYSAU"; 
// The iframe, don't forget to use the sandbox options 
var iframe = '<iframe src="' + mapUrl + '&ll=38.66174332764711%2C-121.12734470700838&z=18" id="frameMap" width="640" height="480" sandbox="allow-same-origin allow-scripts"></iframe>'; 
var doc = '<!DOCTYPE html><html><body>' + iframe + '</body></html>'; 

// Assign it to the div 
$("#map-container").html(doc); 
// Write to log when is full loaded 
$("#frameMap").load(function() { 
    console.log("Frame loaded."); 
}); 
} 
Смежные вопросы