我创建了一个应用程序,其中有一个可以捕获INSTALL_REFERRER
广播的BroadcastReceiver。
当我使用eclipse安装应用程序并使用adb创建广播时,我发现一切正常,LogCat正在显示它应该是的所有内容。 但是,当我从Play商店安装应用程序时,logcat上没有显示任何内容。 如果我理解正确的话,Play商店应用程序应该创建一个广播女巫正在安装的应用程序应该捕获,对吗?
基本上就是我在做什么:
public class SDK_Referrer extends BroadcastReceiver
{
public void onReceive(Context context, Intent intent)
{
if (intent.getAction().equals("com.android.vending.INSTALL_REFERRER"))
{
String referrer = intent.getStringExtra("referrer");
if (!(referrer == null || referrer.length() == 0))
{
// extracting the relevant data to Map
Log.d("SAMPLE", "Generating Ymid from referrel");
Map<String, String> referralmap =
createHashMapFromQueryString(referrer);
Log.d("SAMPLE", "Ymid is: " + referralmap.get("ymid"));
}
}
}
}
我只想在安装应用程序时向服务器发送一些内容。 谢谢!
答案 0 :(得分:1)
您需要将接收器添加到清单中,以便您的应用知道您有收听广播的内容。像这样:
<receiver android:name="com.company.cool.SDK_Referrer" android:exported="true">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>