猿问

从Android电子市场安装应用后获取推荐人

从Android电子市场安装应用后获取推荐人

我正在尝试注册一个广播接收器,它捕获Android从市场安装应用程序后启动的“com.android.vending.INSTALL_REFERRER”意图。

我在此处详细了解:http//code.google.com/mobile/analytics/docs/android/#referrals

但是,我无法使用Google Analytics,因此我创建了自己的解决方案。我在清单文件中添加了以下内容:

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

并创建了一个基本的BroadcastReceiver类:

public class Receiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {

        Bundle extras = intent.getExtras();
        String referrerString = extras.getString("referrer");

        Log.w("TEST", "Referrer is: " + referrerString);
    }}

然而,当安装应用程序时,接收器似乎没有捕获Intent(如果Intent甚至广播?)并且我没有记录输出。

我在某个地方出错了还是市场在安装应用程序时不再启动这些Intent?


交互式爱情
浏览 529回答 3
3回答

慕神8447489

这可能有点晚了,但您可以在不使用Google Play的情况下测试安装引荐来源,只需使用ADB :)从adb.exe运行此命令adb&nbsp;shell am&nbsp;broadcast&nbsp;-a&nbsp;com.android.vending.INSTALL_REFERRER&nbsp;-n&nbsp;your.package/path.to.your.BroadcastReceiver&nbsp;--es&nbsp;"referrer"&nbsp;"test_referrer=test"如果您在BroadcastReceiver中有日志记录设置,您将在LogCat中看到它弹出。希望这可以帮助!

慕的地8271018

我认为这些答案必须是在Android 3.1之前编写的 - 因为事情已经以一种导入方式改变了。系统现在将应用程序标记为处于休眠状态 - 在用户通过运行(或放置小部件)显式激活应用程序之前,它们不会收到INSTALL_REFERRER或任何其他广播。
随时随地看视频慕课网APP

相关分类

Android
我要回答