android - InstallReferrerReceiver 在实时应用程序中不起作用
问题描述
我正在 android studio 中开发一个应用程序并使用推荐链接跟踪推荐人,但我的应用程序无法在实时状态下运行
当我使用以下命令发送推荐人时,我的应用程序工作正常
adb shell
am broadcast -a com.android.vending.INSTALL_REFERRER -n com.example.app/.InstallReferrerReceiver --es "referrer" "123456"
但是当我使用 Play 商店链接安装我的应用程序时,我的应用https://play.google.com/store/apps/details?com.example.app&referrer=123456
程序没有收到推荐人
我已经在应用程序标签下的清单文件中添加了接收器。
<receiver
android:name=".InstallReferrerReceiver"
android:exported="true"
android:permission="android.permission.INSTALL_PACKAGES">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
我的安装ReferrerReciver
public class InstallReferrerReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String referrer = intent.getStringExtra("referrer");
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
if (referrer != null) {
preferences.edit().putString("referral_code", referrer).apply();
}
}
}
解决方案
自 2020 年 3 月起,INSTALL_REFERRER 不再向接收方广播。现在,如果您想在 android 应用程序中使用推荐程序,那么您需要使用Google Play Install Referrer API
推荐阅读
- python - 当图像在屏幕顶部重新生成时,无法无缝滚动
- node.js - 新用户无法执行节点
- laravel - 如何在实时服务器上部署 VueJS、laravel 应用程序
- javascript - 当一个元素是父元素时,如何在单击相应元素时触发相应的功能?
- angular6 - 包含肝脏服务器中角度 6 项目参数的 url 的基本 href 链接是什么?
- php - 如何使用php生成发票号码
- sql - SQL 错误 [HY000]:搜索快速手册时出现 XML 解析器错误
- python - 调整数组大小而不将它们转换为图像
- python-3.x - 如何为每个浏览器任务分配随机生成的 ID,以便我可以随时访问它?
- elasticsearch - Elasticsearch:如何按年汇率查询