Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions permission_handler_android/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
## 10.2.0

* Added support for the new Android 13 permissions: SCHEDULE_EXACT_ALARM, READ_MEDIA_IMAGES, READ_MEDIA_VIDEO and READ_MEDIA_AUDIO

## 10.1.0

* Added support for the new Android 13 permission: NEARBY_WIFI_DEVICES.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,9 @@ final class PermissionConstants {
static final int PERMISSION_GROUP_BLUETOOTH_ADVERTISE = 29;
static final int PERMISSION_GROUP_BLUETOOTH_CONNECT = 30;
static final int PERMISSION_GROUP_NEARBY_WIFI_DEVICES = 31;

static final int PERMISSION_GROUP_VIDEOS = 32;
static final int PERMISSION_GROUP_AUDIO = 33;
static final int PERMISSION_GROUP_SCHEDULE_EXACT_ALARM = 34;

@Retention(RetentionPolicy.SOURCE)
@IntDef({
Expand Down Expand Up @@ -79,7 +81,10 @@ final class PermissionConstants {
PERMISSION_GROUP_BLUETOOTH_SCAN,
PERMISSION_GROUP_BLUETOOTH_ADVERTISE,
PERMISSION_GROUP_BLUETOOTH_CONNECT,
PERMISSION_GROUP_NEARBY_WIFI_DEVICES
PERMISSION_GROUP_NEARBY_WIFI_DEVICES,
PERMISSION_GROUP_VIDEOS,
PERMISSION_GROUP_AUDIO,
PERMISSION_GROUP_SCHEDULE_EXACT_ALARM
})
@interface PermissionGroup {
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,14 @@ static int parseManifestName(String permission) {
return PermissionConstants.PERMISSION_GROUP_NOTIFICATION;
case Manifest.permission.NEARBY_WIFI_DEVICES:
return PermissionConstants.PERMISSION_GROUP_NEARBY_WIFI_DEVICES;
case Manifest.permission.READ_MEDIA_IMAGES:
return PermissionConstants.PERMISSION_GROUP_PHOTOS;
case Manifest.permission.READ_MEDIA_VIDEO:
return PermissionConstants.PERMISSION_GROUP_VIDEOS;
case Manifest.permission.READ_MEDIA_AUDIO:
return PermissionConstants.PERMISSION_GROUP_AUDIO;
case Manifest.permission.SCHEDULE_EXACT_ALARM:
return PermissionConstants.PERMISSION_GROUP_SCHEDULE_EXACT_ALARM;
default:
return PermissionConstants.PERMISSION_GROUP_UNKNOWN;
}
Expand Down Expand Up @@ -292,19 +300,42 @@ static List<String> getManifestNames(Context context, @PermissionConstants.Permi
break;
}
case PermissionConstants.PERMISSION_GROUP_NOTIFICATION:
// The POST_NOTIFICATIONS permission is introduced in Android 13, meaning we should
// not handle permissions on pre Android 13 devices.
// The POST_NOTIFICATIONS permission is introduced in Android T, meaning we should
// not handle permissions on pre Android T devices.
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU && hasPermissionInManifest(context, permissionNames, Manifest.permission.POST_NOTIFICATIONS ))
permissionNames.add(Manifest.permission.POST_NOTIFICATIONS);
break;
case PermissionConstants.PERMISSION_GROUP_NEARBY_WIFI_DEVICES:
// The NEARBY_WIFI_DEVICES permission is introduced in Android 13, meaning we should
// not handle permissions on pre Android 13 devices.
// The NEARBY_WIFI_DEVICES permission is introduced in Android T, meaning we should
// not handle permissions on pre Android T devices.
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU && hasPermissionInManifest(context, permissionNames, Manifest.permission.NEARBY_WIFI_DEVICES ))
permissionNames.add(Manifest.permission.NEARBY_WIFI_DEVICES);
break;
case PermissionConstants.PERMISSION_GROUP_MEDIA_LIBRARY:
case PermissionConstants.PERMISSION_GROUP_PHOTOS:
// The READ_MEDIA_IMAGES permission is introduced in Android T, meaning we should
// not handle permissions on pre Android T devices.
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU && hasPermissionInManifest(context, permissionNames, Manifest.permission.READ_MEDIA_IMAGES ))
permissionNames.add(Manifest.permission.READ_MEDIA_IMAGES);
break;
case PermissionConstants.PERMISSION_GROUP_VIDEOS:
// The READ_MEDIA_VIDEOS permission is introduced in Android T, meaning we should
// not handle permissions on pre Android T devices.
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU && hasPermissionInManifest(context, permissionNames, Manifest.permission.READ_MEDIA_VIDEO ))
permissionNames.add(Manifest.permission.READ_MEDIA_VIDEO);
break;
case PermissionConstants.PERMISSION_GROUP_AUDIO:
// The READ_MEDIA_AUDIO permission is introduced in Android T, meaning we should
// not handle permissions on pre Android T devices.
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU && hasPermissionInManifest(context, permissionNames, Manifest.permission.READ_MEDIA_AUDIO ))
permissionNames.add(Manifest.permission.READ_MEDIA_AUDIO);
break;
case PermissionConstants.PERMISSION_GROUP_SCHEDULE_EXACT_ALARM:
// The SCHEDULE_EXACT_ALARM permission is introduced in Android S, meaning we should
// not handle permissions on pre Android S devices.
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S && hasPermissionInManifest(context, permissionNames, Manifest.permission.SCHEDULE_EXACT_ALARM ))
permissionNames.add(Manifest.permission.SCHEDULE_EXACT_ALARM);
break;
case PermissionConstants.PERMISSION_GROUP_MEDIA_LIBRARY:
case PermissionConstants.PERMISSION_GROUP_REMINDERS:
case PermissionConstants.PERMISSION_GROUP_UNKNOWN:
return null;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@
<!-- Permissions options for the `storage` group -->
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" />

<!-- Permissions options for the `camera` group -->
<uses-permission android:name="android.permission.CAMERA"/>
Expand Down Expand Up @@ -79,6 +82,9 @@
<!-- Permissions options for the `access notification policy` group -->
<uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY"/>

<!-- Permissions options for the `alarm` group -->
<uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM" />

<application
android:name="${applicationName}"
android:icon="@mipmap/ic_launcher"
Expand Down
2 changes: 1 addition & 1 deletion permission_handler_android/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: permission_handler_android
description: Permission plugin for Flutter. This plugin provides the Android API to request and check permissions.
version: 10.1.0
version: 10.2.0
homepage: https://github.com/baseflow/flutter-permission-handler

environment:
Expand Down
4 changes: 4 additions & 0 deletions permission_handler_apple/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
## 9.0.7

* Added new Android 13 permissions "SCHEDULE_EXACT_ALARM, READ_MEDIA_IMAGES, READ_MEDIA_VIDEO and READ_MEDIA_AUDIO" to PermissionHandlerEnums.h

## 9.0.6

* Prevent appearing popup that asks to turn on Bluetooth on iOS
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,10 @@ typedef NS_ENUM(int, PermissionGroup) {
PermissionGroupBluetoothScan,
PermissionGroupBluetoothAdvertise,
PermissionGroupBluetoothConnect,
PermissionGroupNearbyWifiDevices
PermissionGroupNearbyWifiDevices,
PermissiongroupVideos,
PermissionGroupAudio,
PermissionGroupScheduleExactAlarm
};

typedef NS_ENUM(int, PermissionStatus) {
Expand Down
2 changes: 1 addition & 1 deletion permission_handler_apple/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: permission_handler_apple
description: Permission plugin for Flutter. This plugin provides the iOS API to request and check permissions.
version: 9.0.6
version: 9.0.7
homepage: https://github.com/baseflow/flutter-permission-handler

environment:
Expand Down
6 changes: 5 additions & 1 deletion permission_handler_windows/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
# 0.1.1
## 0.1.2

* Added new Android 13 permissions "SCHEDULE_EXACT_ALARM, READ_MEDIA_IMAGES, READ_MEDIA_VIDEO and READ_MEDIA_AUDIO" to permission_constants.h

## 0.1.1

* Added new Android 13 NEARBY_WIFI_DEVICES permission to permission_constants.h

Expand Down
2 changes: 1 addition & 1 deletion permission_handler_windows/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: permission_handler_windows
description: Permission plugin for Flutter. This plugin provides the Windows API to request and check permissions.
version: 0.1.1
version: 0.1.2
homepage: https://github.com/baseflow/flutter-permission-handler

flutter:
Expand Down
5 changes: 4 additions & 1 deletion permission_handler_windows/windows/permission_constants.h
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,10 @@ class PermissionConstants {
BLUETOOTH_SCAN = 28,
BLUETOOTH_ADVERTISE = 29,
BLUETOOTH_CONNECT = 30,
NEARBY_WIFI_DEVICES = 31
NEARBY_WIFI_DEVICES = 31,
VIDEOS = 32,
AUDIO = 33,
SCHEDULE_EXACT_ALARM = 34
};

//PERMISSION_STATUS
Expand Down