解決Android 10/Android Q手機在后臺無法正常定位問題
Android 10 在2019年9月份正式發(fā)布,帶來了一個非常重大的GPS權(quán)限改變。為用戶提供了 僅在使用此應(yīng)用時允許。一旦用戶選擇“僅在使用此應(yīng)用時允許”,就會導(dǎo)致APP在后臺或者鎖屏?xí)r候無法正常記錄GPS軌跡,這個對像滴滴出行、共享單車、跑步軟件影響非常的大。
針對這個變化,Google也給出了新的 解決方案。
第一步:升級SDK
修改build.gradle,升級APP的 compileSdkVersion 和 targetSdkVersion。
android { compileSdkVersion 29 defaultConfig { targetSdkVersion 29 } }
第二步:增加后臺定位權(quán)限
修改 AndroidManifest.xml 文件,增加 ACCESS_BACKGROUND_LOCATION權(quán)限,并且為對應(yīng)的服務(wù)增加 android:foregroundServiceType="location"。
<manifest > <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" /> <application> <service android:name=".ExampleService" android:foregroundServiceType="location" /> </application> </manifest>
第三步:申請后臺定位權(quán)限
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { ActivityCompat.requestPermissions(this,arrayOf(Manifest.permission.ACCESS_COARSE_LOCATION, ACCESS_BACKGROUND_LOCATION ),101) } else { ActivityCompat.requestPermissions(this,arrayOf(Manifest.permission.ACCESS_COARSE_LOCATION),101) }
通過以上方法,就可以獲取用戶是否允許APP后臺定位,如果用戶不允許,就會提示下面的對話框。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Android制作一個錨點定位的ScrollView
- android加密參數(shù)定位實現(xiàn)方法
- Android 簡單服務(wù)定位器模式實現(xiàn)
- Android Studio使用Profiler來完成內(nèi)存泄漏的定位
- 解決Android原生定位的坑
- Android實現(xiàn)點擊某個按鈕指定位置彈出布局
- Android RecycleView滑動停止后自動吸附效果的實現(xiàn)代碼(滑動定位)
- Android 百度地圖定位實現(xiàn)仿釘釘簽到打卡功能的完整代碼
- android studio 使用Mocklocation虛擬定位
- Android實現(xiàn)高德地圖顯示及定位
- Android如何實現(xiàn)模擬定位
相關(guān)文章
Android AlertDialog多種創(chuàng)建方式案例詳解
這篇文章主要介紹了Android AlertDialog多種創(chuàng)建方式案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-08-08Android 解決sqlite無法創(chuàng)建新表的問題
這篇文章主要介紹了Android 解決sqlite無法創(chuàng)建新表的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05adnroid已安裝應(yīng)用中檢測某應(yīng)用是否安裝的代碼實例
這篇文章主要介紹了Android怎么檢測一個應(yīng)用是否安裝的方法,大家參考使用吧2013-11-11android:TextView簡單設(shè)置文本樣式和超鏈接的方法
這篇文章主要介紹了android:TextView簡單設(shè)置文本樣式和超鏈接的方法,涉及TextView常見文字屬性的相關(guān)操作技巧,需要的朋友可以參考下2016-08-08Android Service服務(wù)詳細(xì)介紹及使用總結(jié)
這篇文章主要介紹了Android Service 服務(wù)的詳細(xì)資料,網(wǎng)上關(guān)于Android Service 服務(wù)的文章比較多,但是不是很全面,不夠細(xì)致,畢竟是Android 四大組件之一,重要性不用說,這里總結(jié)下,需要的朋友可以參考下2016-12-12基于android樣式與主題(style&theme)的詳解
本篇文章是對android中的樣式與主題(style&theme)進行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06