gpt4 book ai didi

android - Intent 上的 setData 阻止 sendBroadcast 工作?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:54:10 26 4
gpt4 key购买 nike

我注册了一个 BroadcastReceiver 以监听以下操作..

public static final String MY_ACTION = "com.blah.intent.action.DOSOMETHING";

在我的代码中有

Intent intent = new Intent(MY_ACTION);
sendBroadcast(intent);

如果我使用这个广播发送和接收正常,但是如果我使用 setData 添加一个 Uri在通过添加这些行发送广播之前..

Uri uri = Uri.parse("/sdacrd/myfile");
intent.setData(uri);

如果我设置数据,则不会收到广播。

谁能解释为什么在 intent 上设置数据会阻止广播工作?

最佳答案

Android 不仅查看 ACTION,还查看数据和模式的类型。您应该告诉您的接收者可以通过调用 IntentFilter 上的 addDataSchema() 或 addDataType() 来接收此类型。如果只想发送 String,为什么不使用 extras?

关于android - Intent 上的 setData 阻止 sendBroadcast 工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5220256/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com