AppsFlyer Xamarin iOS 绑定,空引用异常

Posted

技术标签:

【中文标题】AppsFlyer Xamarin iOS 绑定,空引用异常【英文标题】:AppsFlyer Xamarin iOS binding, null reference exception 【发布时间】:2017-01-31 13:29:08 【问题描述】:

https://github.com/AppsFlyerSDK/XamariniosBinding

有人可以运行这个 repo 吗?

我在启动时遇到空引用异常,因为跟踪器对象为空 - 尽管这在 API 定义中被绑定为静态

// +(AppsFlyerTracker *)sharedTracker;
        [Static, Export ("sharedTracker")]
        AppsFlyerTracker SharedTracker ();

【问题讨论】:

【参考方案1】:

我遇到了完全相同的问题,我发现了问题所在。我正在使用模拟器进行测试。

如果应用在模拟器上运行,AppsFlyer SDK 会为 AppsFlyerTracker.SharedTracker() 方法返回 null。确保您在真实设备上运行应用程序,并在调用 SharedTracker() 上的方法之前检查 null,否则您将从 Xamarin 获得 NullPointerException

【讨论】:

【参考方案2】:

确保您在项目的引用中的 .Net Assembly 下添加了对 AppsFlyerXamarinBinding.dll 的引用。 dll 文件可以在项目的 Bin/Debug 文件夹中找到(您必须先构建绑定项目才能生成更新的 dll 文件)。

另外,在您的委托中添加“using AppsFlyerXamarinBinding”。

【讨论】:

引用在上面的 repo 中肯定设置正确。问题是存在空引用异常。如果缺少参考,项目将无法构建。

以上是关于AppsFlyer Xamarin iOS 绑定,空引用异常的主要内容,如果未能解决你的问题,请参考以下文章

iOS AppsFlyer的使用注意事项

我可以在 ios 应用程序中使用 2 个不同的 Appsflyer 帐户吗?

尝试初始化 iOS AppsFlyer SDK 时出现 SIGABRT 错误

用于 swift 库的 Xamarin.iOS 绑定

Xamarin.iOS 与第三方框架的绑定

Xamarin IOS绑定微信SDK