Merge branch 'linfeng/run/dev/20260630' into linfeng/drone/dev/2026630

This commit is contained in:
2026-07-01 12:18:58 +08:00
3 changed files with 23 additions and 5 deletions
-1
View File
@@ -10,7 +10,6 @@
<uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY" /> <uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY" />
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" /> <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" /> <uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
<uses-permission <uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:name="android.permission.WRITE_EXTERNAL_STORAGE"
android:maxSdkVersion="28" /> android:maxSdkVersion="28" />
@@ -41,13 +41,13 @@ List<Permission> recordingFileSavePermissionsForHost({
return const []; return const [];
} }
if (isAndroid) { if (isAndroid) {
if (androidSdkInt != null && androidSdkInt >= 29) { if (androidSdkInt != null && androidSdkInt <= 28) {
return const [];
}
return [Permission.storage]; return [Permission.storage];
} }
return const []; return const [];
} }
return const [];
}
/// 开始录制所需的相机/麦克风权限检测结果。 /// 开始录制所需的相机/麦克风权限检测结果。
class RecordingRequiredPermissions { class RecordingRequiredPermissions {
@@ -411,6 +411,25 @@ void main() {
expect(permissions, isEmpty); expect(permissions, isEmpty);
}); });
test('does not request file save permission on Android 13 and above', () {
final permissions = recordingFileSavePermissionsForHost(
isIOS: false,
isAndroid: true,
androidSdkInt: 33,
);
expect(permissions, isEmpty);
});
test('does not request file save permission when Android SDK is unknown', () {
final permissions = recordingFileSavePermissionsForHost(
isIOS: false,
isAndroid: true,
);
expect(permissions, isEmpty);
});
}); });
group('RecordingViewModel.getClipboardContent', () { group('RecordingViewModel.getClipboardContent', () {