iOS 14.5 App Tracking Transparency for firebase log in react-native app
Posted
技术标签:
【中文标题】iOS 14.5 App Tracking Transparency for firebase log in react-native app【英文标题】:iOS 14.5 App Tracking Transparency for firebase logs in react-native app 【发布时间】:2021-04-27 13:37:50 【问题描述】:Firebase 日志在我正在开发的 react-native
应用之一更新到 ios 14.5
后立即停止工作。
我们需要做哪些必要的更改才能使其再次运行?
【问题讨论】:
在将 Xcode 和 iOS 升级到 14.5 后,我什至无法运行我的 RN 应用程序。我会继续检查这个帖子,因为我可能会遇到和你一样的问题。 @GuilhermeCrozariol - 你面临什么问题? 【参考方案1】:你需要先申请 Tracking 权限(我用的是 react-native-permissions):
import request, RESULTS, PERMISSIONS from 'react-native-permissions'
import Settings from 'react-native-fbsdk-next'
export const requestPermissionTransparency = async () =>
return await request(PERMISSIONS.IOS.APP_TRACKING_TRANSPARENCY)
useEffect(() =>
;(async () =>
const result = await requestPermissionTransparency()
if (result === RESULTS.GRANTED)
await firebase.analytics().setAnalyticsCollectionEnabled(true)
await Settings.setAdvertiserTrackingEnabled(true)
else
await firebase.analytics().setAnalyticsCollectionEnabled(false)
await Settings.setAdvertiserTrackingEnabled(false)
)()
, [])
记得在根项目中添加这个文件:
// <project-root>/firebase.json
"react-native":
"analytics_auto_collection_enabled": false
参考:https://rnfirebase.io/analytics/usage
【讨论】:
是否需要在“GRANTED”之后手动调用 Settings.initializeSDK() 还是只在 AppDelegate 中初始化? ([FBSDKApplicationDelegate initializeSDK:launchOptions]) 我认为您只需将 setAdvertiserTrackingEnabled 设置为 true 并自动初始化(参见文档):(developers.facebook.com/docs/audience-network/setting-up/…)以上是关于iOS 14.5 App Tracking Transparency for firebase log in react-native app的主要内容,如果未能解决你的问题,请参考以下文章
iOS15系统App Tracking Transparency提审被拒
iOS 14.5揭示Airtags新功能丨OLED屏iPad最快明年发布!