gpt4 book ai didi

android - Intent 和广播接收器

转载 作者:行者123 更新时间:2023-11-29 22:31:50 25 4
gpt4 key购买 nike

我开始学习android开发,所以目前我的知识真的很有限。我正在尝试播放广播,但我被卡住了,我不明白我做错了什么。我想要做的只是从广播接收器显示一个简单的 Toast。

Intent 是 list 中定义的自定义 Intent :

<receiver android:name=".receiver.SendReceiver" android:enabled="true">
<intent-filter>
<action android:name="com.android.terralink.sem.SOCCIA"></action>
</intent-filter>
</receiver>

接收者定义如下:

public class SearchReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent){
Toast.makeText(context, "asasa", Toast.LENGTH_SHORT).show();
}
}

在从应用程序调用的第一个操作中,我这样做:

Intent i2 = new Intent(this, SearchReceiver.class);
i2.setAction(CUSTOM_INTENT);
sendBroadcast(i2);

我检查过 Toast 代码在 Activity 中有效,但在广播中无效。是因为Toast不能显示在receiver context中?

另外,还有一个关于android应用程序结构的问题。如果在我的 Activty 中,我允许用户在文本框中插入一个字符串并提交(按钮绑定(bind)),并且我希望应用程序在后台进行搜索并在结果准备好后通知用户,是否正确执行以下操作?1)带有搜索框的主要 Activity 2)启动获取数据的服务,发送广播3) 接收者通知用户并打开一个显示结果的Activity

这样做有意义吗?或者通知应该在服务完成之前由服务本身完成?

谢谢

最佳答案

当我注册接收器时,我发现问题出在 list 中。实际上,可以毫无问题地在接收器中显示 Toast。干杯

关于android - Intent 和广播接收器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3748035/

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