Update check permission x02
This commit is contained in:
parent
f06ac061ca
commit
7b397e78bd
@ -21,6 +21,7 @@ import com.dumon.plugin.geolocation.wifi.WifiPositioningManager
|
||||
import com.dumon.plugin.geolocation.wifi.WifiScanResult
|
||||
import com.dumon.plugin.geolocation.fusion.SensorFusionManager
|
||||
import com.dumon.plugin.geolocation.utils.PermissionUtils
|
||||
import com.getcapacitor.annotation.PermissionCallback
|
||||
import org.json.JSONArray
|
||||
import org.json.JSONObject
|
||||
|
||||
@ -127,7 +128,8 @@ class DumonGeolocation : Plugin() {
|
||||
|
||||
@PluginMethod
|
||||
fun checkAndRequestPermissions(call: PluginCall) {
|
||||
requestAllPermissions(call, "checkAndRequestPermissions")
|
||||
// requestAllPermissions(call, "checkAndRequestPermissions")
|
||||
requestAllPermissions(call, "onPermissionResult")
|
||||
|
||||
val locationStatus = PermissionUtils.getPermissionStatus(
|
||||
ActivityCompat.checkSelfPermission(context, Manifest.permission.ACCESS_FINE_LOCATION)
|
||||
@ -208,6 +210,26 @@ class DumonGeolocation : Plugin() {
|
||||
call.resolve()
|
||||
}
|
||||
|
||||
@PermissionCallback
|
||||
private fun onPermissionResult(call: PluginCall) {
|
||||
val locationStatus = PermissionUtils.getPermissionStatus(
|
||||
ActivityCompat.checkSelfPermission(context, Manifest.permission.ACCESS_FINE_LOCATION)
|
||||
)
|
||||
val wifiStatus = PermissionUtils.getPermissionStatus(
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU)
|
||||
ActivityCompat.checkSelfPermission(context, Manifest.permission.NEARBY_WIFI_DEVICES)
|
||||
else
|
||||
PackageManager.PERMISSION_GRANTED
|
||||
)
|
||||
|
||||
val result = JSObject().apply {
|
||||
put("location", locationStatus)
|
||||
put("wifi", wifiStatus)
|
||||
}
|
||||
|
||||
call.resolve(result)
|
||||
}
|
||||
|
||||
private fun emitPositionUpdate() {
|
||||
val now = System.currentTimeMillis()
|
||||
if (now - lastEmitTimestamp < emitIntervalMs) return
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user