AppsFlyer集成测试失败



我正在使用appsflyer进行安装和卸载跟踪。我已经浏览了文件并将其集成了。我使用他们的Interation Test应用程序进行集成验证。

根据文档,如果我们已经在install_referrer上侦听接收器,则需要使用多个installBroadCastreceiver。我已经在使用

  <receiver
   android:name="com.google.android.gms.analytics.CampaignTrackingReceiver"
            android:exported="true">
            <intent-filter>
                <action android:name="com.android.vending.INSTALL_REFERRER" />
            </intent-filter>
        </receiver>

因此,根据我以下文档作为第一个接收器的文档(意味着它是在竞选trackingReceiver One之前编写的)

<receiver android:name="com.appsflyer.MultipleInstallBroadcastReceiver" android:exported="true">
  <intent-filter>
     <action android:name="com.android.vending.INSTALL_REFERRER" />
  </intent-filter>
</receiver>

但是他们的集成测试显示出错误。如果我使用SingleSinstallBroadCastreCeiver而不是多installBroadCastreCeiver,而不是集成测试应用程序显示成功集成。

在这种情况下,有人可以帮助我

基本上是单个stallbroadcastreceiver,当您拥有另一个接收器的接收器时,该接收器对其他相同意图过滤器的其他现有接收器的'支持'它对于可能在相同的意图过滤器上侦听的其他可能接收器)。这是因为单个stallbroadcastreceiver不那么。

另一方面,多个插图castreceiver被认为是其他相同滤器接收器的"支持"(不确定这是否是正确的术语),如果与另一个"支持性"接收者合并,可能会导致无限广播的广播接收器之间的意图。这就是为什么您拥有这两种接收器的原因。

但是,通过使用声明一个接收器来实现这一点(并对过程具有更多控制):

实施您自己的广播员,并致电 OnReceive(上下文,意图)的任何接收器:

public class MyCombinedReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        // Google Analytics receiver
        new CampaignTrackingReceiver().onReceive(context, intent);
        // AppsFlyer SingleInstallBroadcastReceiver
        new SingleInstallBroadcastReceiver().onReceive(context, intent);
    }
}

在您的androidmanifest.xml上声明您上面配置的接收器,请确保这是您在清单上使用该Intent-filter 的唯一一个接收器(如果您有其他接收器在您的接收器方法):

<receiver
    android:name="yourpackagename.MyCombinedReceiver"
    android:exported="true" >
    <intent-filter>
        <action android:name="com.android.vending.INSTALL_REFERRER" />
    </intent-filter>
</receiver>

相关内容

  • 没有找到相关文章

最新更新