4

这是我的问题我的目标是跟踪来自 google play 的应用安装。我在我的应用程序中编写了一个 BroadcastReceiver。因此,当应用程序从 goole play 下载时,将根据 google 页面播放“com.android.vending.INSTALL_REFERRER”: https ://developers.google.com/analytics/devguides/collection/android/v2 /活动

但我的问题是,如果在安装我的应用程序时发生这种情况,那么我如何启动应用程序附带的广播接收器来接收这个意图。?

换句话说,我的逻辑是我的应用程序必须完成安装才能让我执行任何接收。或者这是否意味着,第一次启动我的应用程序的意图是“com.android.vending.INSTALL_REFERRER”意图,因此该意图被传递给我的 onCreate() 函数。

我在这里有点困惑,并且不想为此找到一些好的文档。有人指出我正确的方向吗?谢谢。

4

2 回答 2

2

“请记住,当调用接收器时,您的应用程序的其余部分将不会运行,因此通常您将引用字符串记录在某个地方,例如 SharedPreferences,然后在运行主应用程序时收集它并使用分析库。(您当然不会'不想阻止接收器中的处理等待网络连接等!)

参考

于 2012-11-29T22:36:24.690 回答
0

安装应用程序后,此 Intent 将被“触发”。

如果您在 AndroidManifest.xml 中声明了一个带有与触发的 Intent 匹配的意图过滤器的接收器,则该接收器代码将启动并传递该 Intent。它不会被传递到您的应用程序的 onCreate() 中,也不会传递到以后启动的任何 Activity。

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

在这个广播接收器代码中,您可以解析收到的 Intent 并做任何您想做的事情:例如,启动后台线程并在本地或网络上记录该信息。

Intent 甚至可能包含一个“referrer”(即导致此下载和安装的 Playstore 链接在哪里?)最初传入的标识符(通过指向商店中应用程序链接的附加参数)。这对于跟踪实际导致应用安装的推荐来源非常有用。

此外,该链接可能包含用于配置您的应用程序的附加参数,您可以在接收器代码中处理(和存储?)这些参数,然后在以后启动应用程序时读取这些参数。

于 2013-07-16T16:53:29.737 回答