2012-08-14 43 views
1

gwtphonegap 1.7.0.0(iPhone)我使用地理定位服務來獲取用戶的位置只有一次在一開始就iphone gwtphonegap地理位置上的百達

GeolocationOptions options = new GeolocationOptions(); 
    options.setMaximumAge(1000); 
    options.setEnableHighAccuracy(true); 
    phoneGap.getGeolocation().getCurrentPosition(callback, options); 

調用由只在一次應用之後需要開始和不更新位置。

問題是,當我在iPhone上運行我的應用程序時,狀態欄上的GPS指示器始終保持打開狀態,即使我獲得了正確的位置。 這可能會導致無用的電池使用情況。

有沒有辦法讓地理定位服務在獲得位置後停止?

謝謝

回答

1

看起來好像我們錯過了gwt phonegap實現的例程。我只是重新檢查,他們不是文檔的一部分。

我剛剛發佈與GWT-的PhoneGap項目的問題:http://code.google.com/p/gwt-phonegap/issues/detail?id=57

作爲一種變通方法,您可以下降到JSNI並直接調用啓動/停止方法。

+0

任何想法該怎麼做? 我想是這樣 \t'公共靜態本地字符串stopGeolocation()/ * - { \t \t \t Geolocation.prototype.stop(); \t} - * /;' 但我不確定調用的方法是什麼。 謝謝 – 2012-08-15 00:43:59

+0

OK這一項工作得很好! '公共靜態本地字符串stopGeolocation()/ * - { \t \t如果(typeof運算$ wnd.device = 「未定義」 \t \t \t \t && $ typeof運算wnd.cordova ==「object」){ \t \t \t $ wnd.cordova.exec(「Geolocation.stopLocation」); \t \t} \t} - * /;' – 2012-08-16 02:14:24