Android 广播安装引用人意图问题
我的Android清单文件Android 广播安装引用人意图问题,android,android-intent,google-analytics,broadcastreceiver,google-play,Android,Android Intent,Google Analytics,Broadcastreceiver,Google Play,我的Android清单文件 <service android:name="com.google.android.gms.analytics.CampaignTrackingService" /> <receiver android:name="com.google.android.gms.analytics.CampaignTrackingReceiver" android:exported="true" > &
<service android:name="com.google.android.gms.analytics.CampaignTrackingService" />
<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>
答复如下:
Broadcasting: Intent { act=com.android.vending.INSTALL_REFERRER cmp=com.myapp.myapplication/com.google.android.gms.analytics.CampaignTrackingService (has extras) }
Broadcast completed: result=0
Broadcasting: Intent { act=com.android.vending.INSTALL_REFERRER cmp=com.myapp.myapplication/.ReferrerCatcher (has extras) }
Broadcast completed: result=0
现在,当我运行应用程序时,我得到了I/GAV3(17797):Thread[GAThread,5,main]:没有找到活动数据。
然后我尝试了自定义接收器:
这是我的密码:
<service android:name="com.myapp.myapplication.ReferrerCatcher"/>
<receiver android:name="com.myapp.myapplication.ReferrerCatcher" android:exported="true">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
这是我对定制接收器的测试:
~/development/sdk/platform tools$./adb shell am broadcast-a com.android.vending.INSTALL\u referer-n com.myapp.myapplication/com.myapp.myapplication.referercatcher--es“referer”“utm\u source=testSource&utm\u medium=testMedium&utm\u term=testTerm&utm\u content=testContent&utm\u campaign=testCampaign”
以下是回应:
Broadcasting: Intent { act=com.android.vending.INSTALL_REFERRER cmp=com.myapp.myapplication/com.google.android.gms.analytics.CampaignTrackingService (has extras) }
Broadcast completed: result=0
Broadcasting: Intent { act=com.android.vending.INSTALL_REFERRER cmp=com.myapp.myapplication/.ReferrerCatcher (has extras) }
Broadcast completed: result=0
现在,当我运行应用程序时,我得到的是:
08-15 14:59:38.391: D/INSTALL_RECEIVER(24996): Referer is: Intent { act=com.android.vending.INSTALL_REFERRER flg=0x10 cmp=com.myapp.myapplication/.ReferrerCatcher (has extras) } :: Bundle[{referrer=utm_source=testSource}]
这比上次考试好,但是我没有得到完整的推荐人。我刚刚得到消息来源。你能看一下代码,看看我有没有错吗?我已经为这段代码挣扎了两天了
提前谢谢。简短而简单的回答。您必须对您的推荐人信息进行编码,否则您只能获得第一个参数。您可以更改参数的顺序,但仍然会得到第一个参数值
utm_source%3DtestSource%26utm_medium%3DtestMedium%26utm_term%3DtestTerm%26utm_content%3DtestContent%26utm_campaign%3DtestCampaign
您需要更改一些字符,如下所示: 改变 %26 —> &
%3D->=你解决了上面的问题吗,因为我遇到的正是sameThanks的队友。我很久没有遇到这个问题了,所以我放弃了。我再也没有应用程序来测试它了。无论如何,谢谢你。