2013-11-11 4 views
0

Я пытаюсь показать карту, отслеживающую местоположение пользователей в моей сборке телефонных разговоров. Я пытаюсь использовать этот пример,Geolocation Белый экран в Phonegap Build

http://view.jquerymobile.com/master/demos/map-geolocation/

И я добавил HTML-CSS и JS мое приложение и добавил

<feature name="http://api.phonegap.com/1.0/geolocation"/> 
<feature name="http://api.phonegap.com/1.0/network"/> 

в мой файл config.xml.

все, что я получаю, это белый экран без загрузки.

Что я делаю неправильно!?!?

Спасибо, ребята! Вы все очень помогли мне в прошлом, и это последнее, что мне нужно, чтобы закончить это приложение!

Еще раз спасибо!

мой HTML код я использую

<div role="main" class="ui-content" id="map-canvas"></div> 

мой CSS код, который я использую

#map-page, #map-canvas { width: 100%; height: 100%; padding: 0; } 

мой JS код, который я использую

<script> 
$(document).on("pageinit", "#map-page", function() { 
var defaultLatLng = new google.maps.LatLng(34.0983425, -118.3267434); // Default to  Hollywood, CA when no geolocation support 
if (navigator.geolocation) { 
function success(pos) { 
// Location found, show map with these coordinates 
drawMap(new google.maps.LatLng(pos.coords.latitude, pos.coords.longitude)); 
} 
function fail(error) { 
drawMap(defaultLatLng); // Failed to find location, show default map 
} 
// Find the users current position. Cache the location for 5 minutes, timeout after 6  seconds 
navigator.geolocation.getCurrentPosition(success, fail, {maximumAge: 500000,  enableHighAccuracy:true, timeout: 6000}); 
} else { 
drawMap(defaultLatLng); // No geolocation support, show default map 
} 
function drawMap(latlng) { 
var myOptions = { 
zoom: 10, 
center: latlng, 
mapTypeId: google.maps.MapTypeId.ROADMAP 
}; 
var map = new google.maps.Map(document.getElementById("map-canvas"), myOptions); 
// Add an overlay to the map of current lat/lng 
var marker = new google.maps.Marker({ 
position: latlng, 
map: map, 
title: "Greetings!" 
}); 
} 
}); 
</script> 

и я кладу мои JS право до моего html, сразу после

<div data-role="content" class="content"> 

но я попытался поместить его в голову.

ответ

1

Попробуйте установить широчайшие и LNG вар до 0 до вызова гео.

document.addEventListener("deviceready", onDeviceReady, false); 
    function onDeviceReady() { 
    navigator.geolocation.getCurrentPosition(onSuccess, onError, { maximumAge:60000, timeout:5000, enableHighAccuracy:true }); 
    } 

    var lat = 0; 
    var lng = 0; 

    function onSuccess(position) { 
    lat += position.coords.latitude 
    lng += position.coords.longitude 
    } 
Смежные вопросы