Commit f7b10b1d by Maurits van Beusekom Committed by GitHub

Merge pull request #209 from spitfire55/develop

Add Android Q Activity Recognition support
parents f4014e29 007f0c5d
...@@ -65,7 +65,8 @@ public class PermissionHandlerPlugin implements MethodCallHandler { ...@@ -65,7 +65,8 @@ public class PermissionHandlerPlugin implements MethodCallHandler {
private static final int PERMISSION_GROUP_IGNORE_BATTERY_OPTIMIZATIONS = 15; private static final int PERMISSION_GROUP_IGNORE_BATTERY_OPTIMIZATIONS = 15;
private static final int PERMISSION_GROUP_NOTIFICATION = 16; private static final int PERMISSION_GROUP_NOTIFICATION = 16;
private static final int PERMISSION_GROUP_ACCESS_MEDIA_LOCATION = 17; private static final int PERMISSION_GROUP_ACCESS_MEDIA_LOCATION = 17;
private static final int PERMISSION_GROUP_UNKNOWN = 18; private static final int PERMISSION_GROUP_ACTIVITY_RECOGNITION = 18;
private static final int PERMISSION_GROUP_UNKNOWN = 19;
private PermissionHandlerPlugin(Registrar mRegistrar) { private PermissionHandlerPlugin(Registrar mRegistrar) {
this.mRegistrar = mRegistrar; this.mRegistrar = mRegistrar;
...@@ -91,6 +92,7 @@ public class PermissionHandlerPlugin implements MethodCallHandler { ...@@ -91,6 +92,7 @@ public class PermissionHandlerPlugin implements MethodCallHandler {
PERMISSION_GROUP_IGNORE_BATTERY_OPTIMIZATIONS, PERMISSION_GROUP_IGNORE_BATTERY_OPTIMIZATIONS,
PERMISSION_GROUP_NOTIFICATION, PERMISSION_GROUP_NOTIFICATION,
PERMISSION_GROUP_ACCESS_MEDIA_LOCATION, PERMISSION_GROUP_ACCESS_MEDIA_LOCATION,
PERMISSION_GROUP_ACTIVITY_RECOGNITION,
PERMISSION_GROUP_UNKNOWN, PERMISSION_GROUP_UNKNOWN,
}) })
private @interface PermissionGroup { private @interface PermissionGroup {
...@@ -202,6 +204,8 @@ public class PermissionHandlerPlugin implements MethodCallHandler { ...@@ -202,6 +204,8 @@ public class PermissionHandlerPlugin implements MethodCallHandler {
return PERMISSION_GROUP_STORAGE; return PERMISSION_GROUP_STORAGE;
case Manifest.permission.ACCESS_MEDIA_LOCATION: case Manifest.permission.ACCESS_MEDIA_LOCATION:
return PERMISSION_GROUP_ACCESS_MEDIA_LOCATION; return PERMISSION_GROUP_ACCESS_MEDIA_LOCATION;
case Manifest.permission.ACTIVITY_RECOGNITION:
return PERMISSION_GROUP_ACTIVITY_RECOGNITION;
default: default:
return PERMISSION_GROUP_UNKNOWN; return PERMISSION_GROUP_UNKNOWN;
} }
...@@ -319,7 +323,6 @@ public class PermissionHandlerPlugin implements MethodCallHandler { ...@@ -319,7 +323,6 @@ public class PermissionHandlerPlugin implements MethodCallHandler {
return PERMISSION_STATUS_DISABLED; return PERMISSION_STATUS_DISABLED;
} }
} }
return PERMISSION_STATUS_GRANTED; return PERMISSION_STATUS_GRANTED;
} }
...@@ -690,6 +693,11 @@ public class PermissionHandlerPlugin implements MethodCallHandler { ...@@ -690,6 +693,11 @@ public class PermissionHandlerPlugin implements MethodCallHandler {
permissionNames.add(Manifest.permission.ACCESS_MEDIA_LOCATION); permissionNames.add(Manifest.permission.ACCESS_MEDIA_LOCATION);
break; break;
case PERMISSION_GROUP_ACTIVITY_RECOGNITION:
if (VERSION.SDK_INT >= VERSION_CODES.Q && hasPermissionInManifest(Manifest.permission.ACTIVITY_RECOGNITION))
permissionNames.add(Manifest.permission.ACTIVITY_RECOGNITION);
break;
case PERMISSION_GROUP_NOTIFICATION: case PERMISSION_GROUP_NOTIFICATION:
case PERMISSION_GROUP_MEDIA_LIBRARY: case PERMISSION_GROUP_MEDIA_LIBRARY:
case PERMISSION_GROUP_PHOTOS: case PERMISSION_GROUP_PHOTOS:
......
...@@ -161,8 +161,13 @@ class PermissionGroup { ...@@ -161,8 +161,13 @@ class PermissionGroup {
/// Android: Allows an application to access any geographic locations persisted in the user's shared collection. /// Android: Allows an application to access any geographic locations persisted in the user's shared collection.
static const PermissionGroup access_media_location = PermissionGroup._(17); static const PermissionGroup access_media_location = PermissionGroup._(17);
/// When running on Android Q and above: Activity Recognition
/// When running on Android < Q: Nothing
/// iOS: Nothing
static const PermissionGroup activity_recognition = PermissionGroup._(18);
/// The unknown permission only used for return type, never requested /// The unknown permission only used for return type, never requested
static const PermissionGroup unknown = PermissionGroup._(18); static const PermissionGroup unknown = PermissionGroup._(19);
static const List<PermissionGroup> values = <PermissionGroup>[ static const List<PermissionGroup> values = <PermissionGroup>[
calendar, calendar,
...@@ -183,6 +188,7 @@ class PermissionGroup { ...@@ -183,6 +188,7 @@ class PermissionGroup {
ignoreBatteryOptimizations, ignoreBatteryOptimizations,
notification, notification,
access_media_location, access_media_location,
activity_recognition,
unknown, unknown,
]; ];
...@@ -205,6 +211,7 @@ class PermissionGroup { ...@@ -205,6 +211,7 @@ class PermissionGroup {
'ignoreBatteryOptimizations', 'ignoreBatteryOptimizations',
'notification', 'notification',
'access_media_location', 'access_media_location',
'activity_recognition',
'unknown', 'unknown',
]; ];
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment