Wednesday 15 September 2010

android: Tracking install from Google Play -



android: Tracking install from Google Play -

i have been trying know if app got installed when user clicks link in app redirects them play store. not using of google's advertisement campaigns or tools.

basically, in activity, upon click,

intent inte = new intent(intent.action_view, uri.parse( "market://details?id=com.example.example&referrer=utm_source%3dmy_referrer")); startactivity(inte);

i have broadcast receiver, in manifest in application tags:

<!-- install referrer --> <receiver android:name="com.ex.ex.referrerreceiver" android:exported="true" > <intent-filter> <action android:name="com.android.vending.install_referrer" > </action> </intent-filter> </receiver>

broadcast receiver code:

package com.ex.ex; import android.content.broadcastreceiver; import android.content.context; import android.content.intent; import android.os.bundle; import android.util.log; public class referrerreceiver extends broadcastreceiver { private final string tag = "my_package"; private string referrer = ""; @override public void onreceive(context context, intent intent) { log.i(tag, "install received"); bundle extras = intent.getextras(); if(extras != null){ referrer = extras.getstring("referrer"); } log.w(tag,"referrer is: "+ referrer); } }

however, broadcast receiver never triggered.

isn't how install tracker supposed work?

i did in activity:

private broadcastreceiver minstallreceiver = new broadcastreceiver() { @override public void onreceive(context context, intent intent) { // code // bundle name in intent.getdata() or intent.getdatastring() // intent.getdatastring() == "package:com.some.packagename" } }; private void registerreceiver() { intentfilter installfilter = new intentfilter(); installfilter.addaction(intent.action_package_added); installfilter.adddatascheme("package"); registerreceiver(minstallreceiver, installfilter); } @override protected void onstart() { super.onstart(); registerreceiver(); } @override protected void onstop() { super.onstop(); unregisterreceiver(minstallreceiver); }

android

No comments:

Post a Comment