firebase - iOS 14.5 App Tracking Transparency for firebase log in react-native app
问题描述
Firebase 日志在更新到我正在开发iOS 14.5
的应用程序之一后立即停止工作。react-native
我们需要做哪些必要的更改才能使其再次运行?
解决方案
您需要先请求 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
}
}