mirror of
https://github.com/flutter/packages.git
synced 2025-06-27 04:37:07 +08:00
[google_maps_flutter] update ios privacy manifest (#6511)
The installation instructions for Google Maps Platform SDKs for iOS now have download links and instructions for **manually** adding Privacy Manifest files for use with the latest versions of the SDKs. You can read more about this [here](https://github.com/googlemaps/google-maps-ios-utils/issues/463#issuecomment-2035734010). This PR synchronizes the iOS privacy manifest with the file provided by Google for the Maps SDK for iOS. The privacy manifest was downloaded from: [https://developers.google.com/maps/documentation/ios-sdk/config#add-apple-privacy-manifest-file](https://developers.google.com/maps/documentation/ios-sdk/config#add-apple-privacy-manifest-file). As you can see in the new **[PrivacyInfo.xcprivacy](packages/google_maps_flutter/google_maps_flutter_ios/ios/Resources/PrivacyInfo.xcprivacy)** file Google Maps SDK is using the following **NSPrivacyAccessedAPITypes**: - **NSPrivacyAccessedAPICategoryDiskSpace** - **NSPrivacyAccessedAPICategorySystemBootTime** - **NSPrivacyAccessedAPICategoryFileTimestamp** - **NSPrivacyAccessedAPICategoryUserDefaults** *Related issues:* - [flutter/flutter/issues/145269](https://github.com/flutter/flutter/issues/145269) - [flutter/flutter/issues/143232](https://github.com/flutter/flutter/issues/143232) - [flutter/flutter/issues/131940](https://github.com/flutter/flutter/issues/131940#issuecomment-2006965339) Fixes https://github.com/flutter/flutter/issues/94491
This commit is contained in:
@ -108,6 +108,21 @@ dev_dependencies:
|
||||
###
|
||||
''');
|
||||
|
||||
// iOS
|
||||
final Directory iOS = package.platformDirectory(FlutterPlatform.ios);
|
||||
iOS.childDirectory('Runner.xcodeproj').childFile('project.pbxproj')
|
||||
..createSync(recursive: true)
|
||||
..writeAsStringSync('''
|
||||
97C147041CF9000F007C117D /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
''');
|
||||
|
||||
// macOS
|
||||
final Directory macOS = package.platformDirectory(FlutterPlatform.macos);
|
||||
macOS.childDirectory('Runner.xcodeproj').childFile('project.pbxproj')
|
||||
@ -434,6 +449,24 @@ android {
|
||||
line.contains('10.15')));
|
||||
});
|
||||
|
||||
test('iOS deployment target is modified in pbxproj', () async {
|
||||
writeFakeFlutterCreateOutput(testRoot);
|
||||
createFakePlugin('plugina', packagesDir);
|
||||
|
||||
await runCapturingPrint(runner, <String>['create-all-packages-app']);
|
||||
final List<String> pbxproj = command.app
|
||||
.platformDirectory(FlutterPlatform.ios)
|
||||
.childDirectory('Runner.xcodeproj')
|
||||
.childFile('project.pbxproj')
|
||||
.readAsLinesSync();
|
||||
|
||||
expect(
|
||||
pbxproj,
|
||||
everyElement((String line) =>
|
||||
!line.contains('IPHONEOS_DEPLOYMENT_TARGET') ||
|
||||
line.contains('14.0')));
|
||||
});
|
||||
|
||||
test('calls flutter pub get', () async {
|
||||
writeFakeFlutterCreateOutput(testRoot);
|
||||
createFakePlugin('plugina', packagesDir);
|
||||
|
Reference in New Issue
Block a user