【发布时间】:2016-11-23 05:02:56
【问题描述】:
我想将 INSTALL_REFERRER 广播发送到我的应用程序以进行代码引用,但是当我尝试检索广播的包名称时出现空指针异常:
intent.getPackage(); // returns null
这是我正在使用的代码。
在 BroadcastReceiver 类中:
@Override
public void onReceive(Context context, Intent intent) {
if (intent == null)
return;
String pack = context.getPackageName().toString();
String intentpack = intent.getPackage();
intentpack = intent.getDataString();
if (intentpack.equals(pack))
我在清单文件中添加了意图过滤器:
<receiver android:name=".MyReceiver">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
我从 ADB SHELL
发送广播am broadcast -a com.android.vending.INSTALL_REFERRER -n <package.name>/.MyReceiver --es "key" "multiple values here"
【问题讨论】:
标签: android broadcastreceiver package