2010-10-21 8 views
0

Я пытаюсь получить местоположение GPS в приложении виджета на ежевике, но API всегда возвращает широту и долготу 0,0.Приложение BlackBerry Widget - GPS-местоположение всегда 0,0

Simulator: шторм 2 (9550)/полужирный (9700) и OS: 5,0/5,0

IDE: Eclipse,

HTML-код страницы, как показано ниже:

var modeCellsite = 0; 
var modeAssisted = 1; 
var modeAutonomous = 2; 

function locationChanged() 
{ 

    alert("Lat " + blackberry.location.latitude + 
      " Lon " + blackberry.location.longitude + 
      " Time " + blackberry.location.timestamp); 
    return true; 
} 

if (window.blackberry && blackberry.location.GPSSupported) 
{ 
    var isUpdated = false; 
    var theCount = 0; 
    alert("Location tracking is supported"); 
    blackberry.location.onLocationUpdate("locationChanged()"); 
    blackberry.location.setAidMode(modeAutonomous); 
    while (theCount++ < 10 && !isUpdated) 
     isUpdated = blackberry.location.refreshLocation(); 
} 
else 
{ 
    document.write("Location tracking is not supported"); 
} 
+0

У меня такая же проблема, с немного разными, но spritually simial JS. – Nilloc

ответ

0

Убедитесь, что вы включил GPS на SIM-карте перед запуском вашего виджета.

For Example in the simulator goto: 
    Simulate -> GPS Location... 
    Under Route Click "add" 
    Choice Random Route Generator 
     Number of Legs 1000 
     Travel Time 600 
     click OK 
    Click Play arrow 
+0

Это ничего не меняет ... Я думаю, что настройка местоположения должна работать, а также отправлять его на огромный путь. – Nilloc

+0

@Nilloc Я просто указывал, что вы должны обязательно включить GPS sim, иначе вы получите 0,0 (местоположение по умолчанию). Причина использования «огромного пути» заключается в том, что ваши пользователи никогда не будут стоять на месте, поэтому вы должны тестировать путь не в одном месте. Я скажу, что в Java требуется несколько секунд, чтобы получить обновленное местоположение, поэтому я не думаю, что вызов refreshlocation() в узком цикле будет делать многое. Я считаю, что примеры, которые я видел, показывают, что он вызывается один раз, а затем снова внутри обработчика locationChanged(). – eSniff

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