2012-11-29 131 views
4

这是我的问题 我的目标是跟踪谷歌播放的应用安装。 我有一个在我的应用程序中写入的BroadcastReceiver。所以,当应用程序被从古尔游戏下载,会有广播“com.android.vending.INSTALL_REFERRER”根据谷歌网页: https://developers.google.com/analytics/devguides/collection/android/v2/campaigns什么时候会播出“com.android.vending.INSTALL_REFERRER”get send?

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

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

我在这里有点困惑,而且看不到像这样找到一些好的文档。 有人指出我正确的方向?谢谢。

+0

http://blog.appington.com/2012/08/01/giving-credit-for-android-app-installs/这真的很有帮助 – sammiwei

回答

2

“请记住,当接收器被调用时,其他应用程序将不会运行,因此通常您会在SharedPreferences某处记录引用者字符串,然后在运行主应用程序时将其收集起来并使用分析库。你当然不希望阻止处理在接收器等待网络连接和类似的!)

Ref:[“http://blog.appington.com/2012/08/01/giving-credit-for- android-app-installs /] [1]

0

当应用程序安装时,此Intent将被“解雇”。

如果您的AndroidManifest.xml中有一个接收器声明了一个意向过滤器,该意向过滤器与启动的Intent匹配,那么接收器代码将会启动并通过Intent。它不会被传递到您的应用程序的onCreate(),也不会在稍后启动。

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

在这种广播接收器的代码,你可以解析收到的意向,做任何你想要的: 例如启动后台线程并在本地或网络上记录该信息。

Intent甚至可能包含最初(通过应用商店链接上的附加参数)传入的“引用者”(即引导此下载和安装的PlayStore链接的位置?)标识符。这对跟踪实际导致应用程序安装的推介来源非常有用。

此外,链接可能包含其他参数来配置您的应用程序,您在接收器代码中处理(并存储?),然后在应用程序稍后启动时读取。

相关问题