2015-03-13 80 views
2

我正在使用Google API(保險絲位置提供程序)來跟蹤設備的位置,但我需要阻止用戶禁用GPS。我讀了很多答案,但我發現的是:不,做不到,植根於設備或bug漏洞。一位朋友剛剛向我展示了一個家長控制應用程序,該應用程序可以完成此操作,而無需對設備進行root化。關於用戶隱私等。只有在用戶意識到這一點的情況下,該代碼纔會用於公司的設備。防止用戶更改GPS狀態保險位置API

至少我需要一種方法來檢測GPS是否已停用以通知用戶,通過我在Google API中找不到任何引用的方式。

非常感謝。

回答

1

GpsStatus.Listener - Try reading this.

您可以覆蓋的方法onGpsStatusChanged:

@Override 
abstract void onGpsStatusChanged(int event){ 
    if (event==GPS_EVENT_STOPPED){ 

     LocationManager mlocManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE); 
     boolean enabled = mlocManager.isProviderEnabled(LocationManager.GPS_PROVIDER); 
     if(!enabled){ 
     //toggle your notification 
     } 
    } 
} 
+0

謝謝!你指出了我正確的方向。唯一的問題是,即使在GPS仍然活動的情況下,當GPS無法得到修復,即在室內時,有時我會收到**'GPS_EVENT_STOPPED'**任何建議? – Nelson 2015-03-13 20:25:00

+0

我會研究它 – n1ckname152 2015-03-13 20:29:54