什么是’动作android:name =“com.android.vending.INSTALL_REFERRER”’?
作者:互联网
我测试了Appbrain SDK和Inmobi SDK.
我找到了这个常见的接收器.我制作了定制接收器.
我认为,当在谷歌市场下载应用程序时,谷歌市场会向我的应用程序发送’referer’值.但我没有收到任何东西.什么问题?
//This is Appbrain's receiver
<receiver android:exported="true" android:name="com.appbrain.ReferrerReceiver" >
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
//This is Inmobi's receiver
<receiver android:name="com.inmobi.adtracker.androidsdk.IMAdTrackerInstallRefererReciever" android:exported="true" >
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
</intent-filter>
</receiver>
//This is My Custom receiver
<receiver android:name="com.xgame.adproject2.TestReceiver" android:exported="true" >
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
// source
public class TestReceiver extends BroadcastReceiver{
public static final String TAG = "TEST";
String referrerString = "";
@Override
public final void onReceive(Context context, Intent intent) {
Log.e(TAG, "11111111");
if(intent.getAction().equals("com.android.vending.INSTALL_REFERRER")) {
Bundle extras = intent.getExtras();
referrerString = extras.getString("referrer");
Log.e(TAG, "REFERRER: " + referrerString);
}
}
}
当关闭应用程序时,我在android web浏览器中输入了这个url.但在下载应用程序后,我还没有收到推荐人的价值.
解决方法:
很久以前,Android市场会向您传递导致您安装的市场页面的引荐来源字符串.在某些时候谷歌阻止了这一点.
你可以在http://productforums.google.com/forum/#!topic/android-market/F5TO9uE3WSA看到一个线程
现在只有在打开它时明确传递给市场应用程序时才会获得引用者字符串.例如,如果应用程序A有一个用于安装应用程序B的按钮,则可以传递引用者字符串
市场://细节ID = B和引荐= A?它主要适用于想要衡量广告对应用的有效性的广告网络
标签:referrer,android,receiver 来源: https://codeday.me/bug/20190729/1571083.html