From a48cc18685584a974cc3ee7cfa8cbd7557cd5f8c Mon Sep 17 00:00:00 2001 From: lxm <1274844347@qq.com> Date: Tue, 29 Jul 2025 20:33:57 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E9=9A=90=E7=A7=81):=20=E7=A6=81=E7=94=A8Fa?= =?UTF-8?q?cebook=E7=99=BB=E5=BD=95=E5=92=8C=E5=B9=BF=E5=91=8A=E7=9A=84?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E8=B7=9F=E8=B8=AA=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在iOS的Info.plist中明确禁用SKAdNetwork和广告跟踪端点 修改Facebook登录跟踪设置为limited模式 更新Podfile配置以禁用IDFA收集和自动日志事件 移除NSUserTrackingUsageDescription权限描述 --- ios/Podfile | 22 +++++++++++++++++-- ios/Runner/Info.plist | 6 +++++ .../login/controllers/facebookLogin.dart | 2 +- 3 files changed, 27 insertions(+), 3 deletions(-) diff --git a/ios/Podfile b/ios/Podfile index ad48460a9..9591f8465 100644 --- a/ios/Podfile +++ b/ios/Podfile @@ -41,7 +41,7 @@ end post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) - + # Ensure all pods use the same iOS deployment target target.build_configurations.each do |config| config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '16.0' @@ -56,7 +56,7 @@ post_install do |installer| ## dart: PermissionGroup.calendar 'PERMISSION_EVENTS=1', - + ## dart: PermissionGroup.calendarFullAccess 'PERMISSION_EVENTS_FULL_ACCESS=1', @@ -66,6 +66,24 @@ post_install do |installer| ## dart: PermissionGroup.bluetooth 'PERMISSION_BLUETOOTH=1', ] + + # 禁用用户跟踪相关功能 + config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] << 'FBSDK_DISABLE_IDFA=1' + + # 移除可能的用户跟踪权限描述 + if target.name == 'Runner' + # 确保不包含NSUserTrackingUsageDescription + config.build_settings.delete('NSUserTrackingUsageDescription') + end + end + + # 针对Facebook SDK禁用广告ID收集 + if target.name.start_with?('FBSDKCoreKit') || target.name.start_with?('FacebookSDK') + target.build_configurations.each do |config| + config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= ['$(inherited)'] + config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] << 'FBSDK_DISABLE_IDFA=1' + config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] << 'FBSDK_DISABLE_AUTO_LOG_APP_EVENTS=1' + end end end end diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index aff31ef06..3d78b7eda 100644 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -57,6 +57,12 @@ FacebookClientToken 193d0a2b1757c41cfa557ea8e8f21c33 + + SKAdNetworkItems + + + NSAdvertisingAttributionReportEndpoint + LSApplicationQueriesSchemes weixin diff --git a/lib/modules/login/controllers/facebookLogin.dart b/lib/modules/login/controllers/facebookLogin.dart index 59e701faf..2ec25147f 100644 --- a/lib/modules/login/controllers/facebookLogin.dart +++ b/lib/modules/login/controllers/facebookLogin.dart @@ -56,7 +56,7 @@ class Facebook { final nonce = sha256ofString(rawNonce); final LoginResult loginResult = await FacebookAuth.instance .login( - loginTracking: LoginTracking.enabled, + loginTracking: LoginTracking.limited, // 改为limited,禁用用户跟踪 nonce: nonce, ) .catchError((onError) {