这两个啥区别???求大神解答
11 个解决方案
#1
sendBroadcast是发送广播,跟启动Activity有什么关联
#2
贴代码,看不懂你说的
#3
从功能上讲,sendBroadcast也可以启动activity,不过需要设置newTask,实际用这种方法启动activity的不多。
从语义上说,broadcast更多的是用来监听一些事件,然后做一些处理。启动activity也算是处理的一种。
从语义上说,broadcast更多的是用来监听一些事件,然后做一些处理。启动activity也算是处理的一种。
#4
其實我想反問樓主這2個有什麼關聯?
#5
两个的作用完全不一样啊,一个是跳转界面,一个是处理事件分发,设计他们的目的不同
#6
楼主的意思我懂。同是小菜的我同病相怜啊,你们这些大神能否宽容点。
startactivity(intent),sendbroadcast(intent),这两个intent前一个是显式Intent,后一个是隐式Intent,在显式Intent消息中,决定目标组件的唯一要素就是组件名称,因此,如果你的Intent中已经明确定义了目标组件的名称,那么你就完全不用再定义其他Intent内容。直接指定activity的名称就行了,所以就用startactivity,多用于在应用程序内部传递消息;而对于隐式Intent则不同,由于没有明确的目标组件名称,所以必须由Android系统帮助应用程序寻找与Intent请求意图最匹配的组件。Android系统寻找与Intent请求意图最匹配的组件具体的选择方法 是:Android将Intent的请求内容和一个叫做IntentFilter的过滤器比较,IntentFilter中包含系统中所有可能的待选组件,通过sendbroadcast的方式,它更广泛地用于在不同应用程序之间传递消息。
startactivity(intent),sendbroadcast(intent),这两个intent前一个是显式Intent,后一个是隐式Intent,在显式Intent消息中,决定目标组件的唯一要素就是组件名称,因此,如果你的Intent中已经明确定义了目标组件的名称,那么你就完全不用再定义其他Intent内容。直接指定activity的名称就行了,所以就用startactivity,多用于在应用程序内部传递消息;而对于隐式Intent则不同,由于没有明确的目标组件名称,所以必须由Android系统帮助应用程序寻找与Intent请求意图最匹配的组件。Android系统寻找与Intent请求意图最匹配的组件具体的选择方法 是:Android将Intent的请求内容和一个叫做IntentFilter的过滤器比较,IntentFilter中包含系统中所有可能的待选组件,通过sendbroadcast的方式,它更广泛地用于在不同应用程序之间传递消息。
#7
没啥关系,楼主基础问题比较大
#8
startactivity也可以通过传入一个隐式Intent的方式来启动一个activity,这种方式就不需要broadcastreceiver了;如果用sendbroadcast的方式想启动一个activity,似乎不行,sendbroadcast要求有能够监听广播的broadcastreceiver,重写这个broadcastreceiver的onreceive函数,里面可以写一些操作,在这个onreceive函数再用startactivity启动activity应该可以,不过这就多此一举了
#9
broadcast可监听响应,调用activity,也就这么个关系.
#10
我刚入手Android,求大神饶命
#11
正解!!!!!!!!!!!!!!
#1
sendBroadcast是发送广播,跟启动Activity有什么关联
#2
贴代码,看不懂你说的
#3
从功能上讲,sendBroadcast也可以启动activity,不过需要设置newTask,实际用这种方法启动activity的不多。
从语义上说,broadcast更多的是用来监听一些事件,然后做一些处理。启动activity也算是处理的一种。
从语义上说,broadcast更多的是用来监听一些事件,然后做一些处理。启动activity也算是处理的一种。
#4
其實我想反問樓主這2個有什麼關聯?
#5
两个的作用完全不一样啊,一个是跳转界面,一个是处理事件分发,设计他们的目的不同
#6
楼主的意思我懂。同是小菜的我同病相怜啊,你们这些大神能否宽容点。
startactivity(intent),sendbroadcast(intent),这两个intent前一个是显式Intent,后一个是隐式Intent,在显式Intent消息中,决定目标组件的唯一要素就是组件名称,因此,如果你的Intent中已经明确定义了目标组件的名称,那么你就完全不用再定义其他Intent内容。直接指定activity的名称就行了,所以就用startactivity,多用于在应用程序内部传递消息;而对于隐式Intent则不同,由于没有明确的目标组件名称,所以必须由Android系统帮助应用程序寻找与Intent请求意图最匹配的组件。Android系统寻找与Intent请求意图最匹配的组件具体的选择方法 是:Android将Intent的请求内容和一个叫做IntentFilter的过滤器比较,IntentFilter中包含系统中所有可能的待选组件,通过sendbroadcast的方式,它更广泛地用于在不同应用程序之间传递消息。
startactivity(intent),sendbroadcast(intent),这两个intent前一个是显式Intent,后一个是隐式Intent,在显式Intent消息中,决定目标组件的唯一要素就是组件名称,因此,如果你的Intent中已经明确定义了目标组件的名称,那么你就完全不用再定义其他Intent内容。直接指定activity的名称就行了,所以就用startactivity,多用于在应用程序内部传递消息;而对于隐式Intent则不同,由于没有明确的目标组件名称,所以必须由Android系统帮助应用程序寻找与Intent请求意图最匹配的组件。Android系统寻找与Intent请求意图最匹配的组件具体的选择方法 是:Android将Intent的请求内容和一个叫做IntentFilter的过滤器比较,IntentFilter中包含系统中所有可能的待选组件,通过sendbroadcast的方式,它更广泛地用于在不同应用程序之间传递消息。
#7
没啥关系,楼主基础问题比较大
#8
startactivity也可以通过传入一个隐式Intent的方式来启动一个activity,这种方式就不需要broadcastreceiver了;如果用sendbroadcast的方式想启动一个activity,似乎不行,sendbroadcast要求有能够监听广播的broadcastreceiver,重写这个broadcastreceiver的onreceive函数,里面可以写一些操作,在这个onreceive函数再用startactivity启动activity应该可以,不过这就多此一举了
#9
broadcast可监听响应,调用activity,也就这么个关系.
#10
我刚入手Android,求大神饶命
#11
正解!!!!!!!!!!!!!!