【问题标题】:Flutter facebook app events : lateinit property anonymousId has not been initializedFlutter facebook 应用程序事件:lateinit 属性 anonymousId 尚未初始化
【发布时间】:2021-10-31 23:24:11
【问题描述】:

我正在尝试在我的颤振项目中调用 Facebook 应用事件。 我正在使用依赖项facebook_app_events: ^0.12.0。 元数据也被添加到清单文件中。

    <meta-data
        android:name="com.facebook.sdk.ApplicationId"
        android:value="@string/facebook_app_id" />


void callFBEvent() async {
    try {
      var i = await facebookAppEvents.getAnonymousId();
      await facebookAppEvents.setAdvertiserTracking(enabled: true);
      await facebookAppEvents.logEvent(
          name: "User_Selection_Screen", parameters: {
        "User_Selection": "User_Selection",
      });
      print("facebook event success User_Selection_Screen");
    }catch(e){
      print(e);
    }
  }

遇到错误

kotlin.UninitializedPropertyAccessException: lateinit property anonymousId has not been initialized
    at id.oddbit.flutter.facebook_app_events.FacebookAppEventsPlugin.handleGetAnonymousId(FacebookAppEventsPlugin.kt:82)
    at id.oddbit.flutter.facebook_app_events.FacebookAppEventsPlugin.onMethodCall(FacebookAppEventsPlugin.kt:55)
    at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:233)
    at io.flutter.embedding.engine.dart.DartMessenger.handleMessageFromDart(DartMessenger.java:84)
    at io.flutter.embedding.engine.FlutterJNI.handlePlatformMessage(FlutterJNI.java:822)
    at android.os.MessageQueue.nativePollOnce(Native Method)
    at android.os.MessageQueue.next(MessageQueue.java:336)
    at android.os.Looper.loop(Looper.java:174)
    at android.app.ActivityThread.main(ActivityThread.java:7386)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:980)

【问题讨论】:

    标签: flutter flutter-android flutter-facebook-login flutter-exception in-app-events


    【解决方案1】:

    我在一个 android 模块中打开项目。然后只需先清理项目的构建,然后在 android 模块中构建和同步 Gradle。然后问题就解决了。但是在那之前我已经使用 pub get 很多时间了,但这没有用。好的,我的问题解决了。

    【讨论】:

      【解决方案2】:

      在我的情况下,问题是我在活动标签下插入了元数据,而不是在应用程序标签下插入元数据

              <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
      

      【讨论】:

        猜你喜欢
        • 2017-03-03
        • 1970-01-01
        • 1970-01-01
        • 2020-12-31
        • 2021-06-11
        • 2017-12-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多