簡體   English   中英

以編程方式關閉GPS

[英]Switch off GPS programmatically

我有什么:目前我的應用程序通過GPS提供位置。

我想要的是: Gps在我退出應用程序后自動關閉。 因為它一直在告訴我一次又一次的位置看起來很奇怪而且gps消耗了很多電池。

看看上面的評論線程似乎可以以編程方式關閉GPS(但只看到12個Upvotes)

但是,如果您以編程方式從應用程序關閉GPS,如果其他應用程序使用GPS服務怎么辦?

解決方案就像

打開android的Settings ,然后告訴用戶退出應用程序時關閉GPS ...

為此您可以這樣做:

Intent i = new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS);
startActivity(i);

要么

你可以試試

locationManager.removeUpdates(myLocationListener); 
locationManager = null;

此關閉此應用程序的gps,但仍可供其他應用程序使用。

如果您想要啟用GPS programmaticaly,然后將此代碼復制並粘貼到您的項目中,它的工作正常。

      final Intent i = new Intent();
      i.setClassName("com.android.settings","com.android.settings.widget.SettingsAppWidgetProvider"); 
      i.addCategory(Intent.CATEGORY_ALTERNATIVE);
      i.setData(Uri.parse("3")); 
       sendBroadcast(i); //if you are in broad cast receiver activity then use context.sendBroadcast(i)

這段代碼可以改變你的gps.But它沒有記錄

 final Intent poke = new Intent();
            poke.setClassName("com.android.settings", "com.android.settings.widget.SettingsAppWidgetProvider");
            poke.addCategory(Intent.CATEGORY_ALTERNATIVE);
            poke.setData(Uri.parse("3")); 
            sendBroadcast(poke);

盡管Rasel發布的鏈接包含一些可能有效的代碼,但您應該記住,代碼正在利用已經修復的安全漏洞( http://code.google.com/p/android/issues/detail?id = 7890 )因此不應該在不久的將來工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM