Revert: Add ACCESS_BACKGROUND_LOCATION permission.
This commit is contained in:
parent
c5b41d0886
commit
94b1eec757
@ -6,7 +6,6 @@
|
|||||||
<uses-permission android:name="android.permission.READ_CALENDAR" />
|
<uses-permission android:name="android.permission.READ_CALENDAR" />
|
||||||
<uses-permission android:name="android.permission.INTERNET" />
|
<uses-permission android:name="android.permission.INTERNET" />
|
||||||
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
||||||
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
|
|
||||||
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
|
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
|
||||||
<uses-permission android:name="com.android.vending.BILLING" />
|
<uses-permission android:name="com.android.vending.BILLING" />
|
||||||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
||||||
|
@ -23,10 +23,7 @@ object WeatherHelper {
|
|||||||
Kotpref.init(context)
|
Kotpref.init(context)
|
||||||
if (Preferences.customLocationAdd != "") {
|
if (Preferences.customLocationAdd != "") {
|
||||||
WeatherNetworkApi(context).updateWeather()
|
WeatherNetworkApi(context).updateWeather()
|
||||||
} else if (context.checkGrantedPermission(Manifest.permission.ACCESS_FINE_LOCATION) &&
|
} else if (context.checkGrantedPermission(Manifest.permission.ACCESS_FINE_LOCATION)) {
|
||||||
(android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.R ||
|
|
||||||
context.checkGrantedPermission(Manifest.permission.ACCESS_BACKGROUND_LOCATION))
|
|
||||||
) {
|
|
||||||
LocationService.requestNewLocation(context)
|
LocationService.requestNewLocation(context)
|
||||||
} else {
|
} else {
|
||||||
Preferences.weatherProviderLocationError = context.getString(R.string.weather_provider_error_missing_location)
|
Preferences.weatherProviderLocationError = context.getString(R.string.weather_provider_error_missing_location)
|
||||||
|
@ -18,7 +18,6 @@ import com.tommasoberlose.anotherwidget.global.Preferences
|
|||||||
import com.tommasoberlose.anotherwidget.network.WeatherNetworkApi
|
import com.tommasoberlose.anotherwidget.network.WeatherNetworkApi
|
||||||
import com.tommasoberlose.anotherwidget.ui.activities.MainActivity
|
import com.tommasoberlose.anotherwidget.ui.activities.MainActivity
|
||||||
import com.tommasoberlose.anotherwidget.ui.fragments.MainFragment
|
import com.tommasoberlose.anotherwidget.ui.fragments.MainFragment
|
||||||
import com.tommasoberlose.anotherwidget.utils.checkGrantedPermission
|
|
||||||
import kotlinx.coroutines.*
|
import kotlinx.coroutines.*
|
||||||
import org.greenrobot.eventbus.EventBus
|
import org.greenrobot.eventbus.EventBus
|
||||||
import java.lang.Exception
|
import java.lang.Exception
|
||||||
@ -38,9 +37,10 @@ class LocationService : Service() {
|
|||||||
startForeground(LOCATION_ACCESS_NOTIFICATION_ID, getLocationAccessNotification())
|
startForeground(LOCATION_ACCESS_NOTIFICATION_ID, getLocationAccessNotification())
|
||||||
job?.cancel()
|
job?.cancel()
|
||||||
job = GlobalScope.launch(Dispatchers.IO) {
|
job = GlobalScope.launch(Dispatchers.IO) {
|
||||||
if (checkGrantedPermission(Manifest.permission.ACCESS_FINE_LOCATION) &&
|
if (ActivityCompat.checkSelfPermission(
|
||||||
(android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.R ||
|
this@LocationService,
|
||||||
checkGrantedPermission(Manifest.permission.ACCESS_BACKGROUND_LOCATION))
|
Manifest.permission.ACCESS_FINE_LOCATION
|
||||||
|
) == PackageManager.PERMISSION_GRANTED
|
||||||
) {
|
) {
|
||||||
if (com.google.android.gms.common.GoogleApiAvailability.getInstance()
|
if (com.google.android.gms.common.GoogleApiAvailability.getInstance()
|
||||||
.isGooglePlayServicesAvailable(this@LocationService)
|
.isGooglePlayServicesAvailable(this@LocationService)
|
||||||
|
@ -134,23 +134,13 @@ class WeatherFragment : Fragment() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun checkLocationPermission() {
|
private fun checkLocationPermission() {
|
||||||
if (requireActivity().checkGrantedPermission(Manifest.permission.ACCESS_FINE_LOCATION) &&
|
if (requireActivity().checkGrantedPermission(Manifest.permission.ACCESS_FINE_LOCATION)) {
|
||||||
(android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.R ||
|
|
||||||
requireActivity().checkGrantedPermission(Manifest.permission.ACCESS_BACKGROUND_LOCATION))
|
|
||||||
) {
|
|
||||||
binding.locationPermissionAlert.isVisible = false
|
binding.locationPermissionAlert.isVisible = false
|
||||||
} else if (Preferences.customLocationAdd == "") {
|
} else if (Preferences.customLocationAdd == "") {
|
||||||
binding.locationPermissionAlert.isVisible = true
|
binding.locationPermissionAlert.isVisible = true
|
||||||
binding.locationPermissionAlert.setOnClickListener {
|
binding.locationPermissionAlert.setOnClickListener {
|
||||||
requirePermission()
|
requirePermission()
|
||||||
}
|
}
|
||||||
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.R &&
|
|
||||||
requireActivity().checkGrantedPermission(Manifest.permission.ACCESS_FINE_LOCATION)
|
|
||||||
) {
|
|
||||||
val text = getString(R.string.action_grant_permission) + " - " +
|
|
||||||
requireContext().packageManager.backgroundPermissionOptionLabel
|
|
||||||
binding.locationPermissionAlert.text = text
|
|
||||||
}
|
|
||||||
binding.weatherProviderLocationError.isVisible = false
|
binding.weatherProviderLocationError.isVisible = false
|
||||||
} else {
|
} else {
|
||||||
binding.locationPermissionAlert.isVisible = false
|
binding.locationPermissionAlert.isVisible = false
|
||||||
@ -232,11 +222,7 @@ class WeatherFragment : Fragment() {
|
|||||||
private fun requirePermission() {
|
private fun requirePermission() {
|
||||||
Dexter.withContext(requireContext())
|
Dexter.withContext(requireContext())
|
||||||
.withPermissions(
|
.withPermissions(
|
||||||
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.R &&
|
Manifest.permission.ACCESS_FINE_LOCATION
|
||||||
requireActivity().checkGrantedPermission(Manifest.permission.ACCESS_FINE_LOCATION))
|
|
||||||
Manifest.permission.ACCESS_BACKGROUND_LOCATION
|
|
||||||
else
|
|
||||||
Manifest.permission.ACCESS_FINE_LOCATION
|
|
||||||
).withListener(object: MultiplePermissionsListener {
|
).withListener(object: MultiplePermissionsListener {
|
||||||
override fun onPermissionsChecked(report: MultiplePermissionsReport?) {
|
override fun onPermissionsChecked(report: MultiplePermissionsReport?) {
|
||||||
report?.let {
|
report?.let {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user