无法从 IOS 接收 Firebase 分析

gen*_*ser 5 ios flutter firebase-analytics

我正在为 Android 和 IOS 开发 Flutter 应用程序。我正在使用firebase_analytics 8.2.0 包收集分析。

我已经按照包文档中的描述配置了我的应用程序。我的Podfile开头是$FirebaseAnalyticsWithoutAdIdSupport = true.

问题是我只能接收 Android 分析。

在此输入图像描述

我的代码:

final FirebaseAnalytics analytics = FirebaseAnalytics();

void onGroupCreate(String groupId, double totalInvites, bool isStatus) {
      analytics.logEvent(
        name: "create_group",
        parameters: <String, dynamic>{
          'user_id': globals.user.userId,
          'group_id': groupId,
          'total_invites': totalInvites,
          'is_status': isStatus
        },
      );
    }
Run Code Online (Sandbox Code Playgroud)

我的info.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>CFBundleDevelopmentRegion</key>
    <string>$(DEVELOPMENT_LANGUAGE)</string>
    <key>CFBundleDisplayName</key>
    <string>AppName</string>
    <key>CFBundleExecutable</key>
    <string>$(EXECUTABLE_NAME)</string>
    <key>CFBundleIdentifier</key>
    <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
    <key>CFBundleInfoDictionaryVersion</key>
    <string>6.0</string>
    <key>CFBundleName</key>
    <string>AppName</string>
    <key>CFBundlePackageType</key>
    <string>APPL</string>
    <key>CFBundleShortVersionString</key>
    <string>$(MARKETING_VERSION)</string>
    <key>CFBundleSignature</key>
    <string>????</string>
    <key>CFBundleURLTypes</key>
    <array>
        <dict>
            <key>CFBundleURLSchemes</key>
            <array>
                <string>com.googleusercontent.apps.####-#######</string>
            </array>
        </dict>
    </array>
    <key>CFBundleVersion</key>
    <string>$(CURRENT_PROJECT_VERSION)</string>
    <key>FirebaseAppDelegateProxyEnabled</key>
    <false/>
    <key>LSRequiresIPhoneOS</key>
    <true/>
    <key>NSContactsUsageDescription</key>
    <string>This app requires contacts access to function properly.</string>
    <key>NSPhotoLibraryUsageDescription</key>
    <string>This app requires photos access to function properly.</string>
    <key>UIBackgroundModes</key>
    <array>
        <string>fetch</string>
        <string>remote-notification</string>
    </array>
    <key>UILaunchStoryboardName</key>
    <string>LaunchScreen</string>
    <key>UIMainStoryboardFile</key>
    <string>Main</string>
    <key>UISupportedInterfaceOrientations</key>
    <array>
        <string>UIInterfaceOrientationPortrait</string>
    </array>
    <key>UISupportedInterfaceOrientations~ipad</key>
    <array>
        <string>UIInterfaceOrientationPortrait</string>
    </array>
    <key>UIViewControllerBasedStatusBarAppearance</key>
    <false/>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)

我的GoogleService-Info.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>CLIENT_ID</key>
    <string>####-######.apps.googleusercontent.com</string>
    <key>REVERSED_CLIENT_ID</key>
    <string>com.googleusercontent.apps.####-######</string>
    <key>ANDROID_CLIENT_ID</key>
    <string>####-######.apps.googleusercontent.com</string>
    <key>API_KEY</key>
    <string>####-######</string>
    <key>GCM_SENDER_ID</key>
    <string>####</string>
    <key>PLIST_VERSION</key>
    <string>1</string>
    <key>BUNDLE_ID</key>
    <string>######</string>
    <key>PROJECT_ID</key>
    <string>####-####</string>
    <key>STORAGE_BUCKET</key>
    <string>####-####.appspot.com</string>
    <key>IS_ADS_ENABLED</key>
    <false></false>
    <key>IS_ANALYTICS_ENABLED</key>
    <false></false>
    <key>IS_APPINVITE_ENABLED</key>
    <true></true>
    <key>IS_GCM_ENABLED</key>
    <true></true>
    <key>IS_SIGNIN_ENABLED</key>
    <true></true>
    <key>GOOGLE_APP_ID</key>
    <string>#:####:ios:######</string>
    <key>DATABASE_URL</key>
    <string>https://####-####.firebaseio.com</string>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)

什么会导致这个问题?为什么我无法接收 IOS 分析?

Oma*_*oud 9

Firebase 事件会批量处理并每小时上传一次,以防止设备电池电量消耗过多。在 iOS 上,当您在 1 小时上传目标之前将应用程序置于后台时,此时将在后台调度事件。事件上传后,数据会延迟大约 3 小时才会显示在 Firebase Analytics 仪表板中。此外,默认日期范围不包括“今天”,因此您只能看到昨天的事件。

在某些情况下,您需要在真实设备上运行它并等待 24 小时才能在控制台中看到您的应用程序

您可以使用调试视图来测试您的事件


gen*_*ser 3

问题解决了!

问题是我的项目分析属性中没有 IOS 数据流。我所要做的就是添加一个新的 IOS 数据流,并等待一两天后分析结果显示。

在此输入图像描述 在 GA4 分析上创建新数据流的步骤