解决方案 »

  1.   

    sendBroadcast是发送广播,跟启动Activity有什么关联
      

  2.   

    从功能上讲,sendBroadcast也可以启动activity,不过需要设置newTask,实际用这种方法启动activity的不多。
    从语义上说,broadcast更多的是用来监听一些事件,然后做一些处理。启动activity也算是处理的一种。
      

  3.   

    楼主的意思我懂。同是小菜的我同病相怜啊,你们这些大神能否宽容点。
    startactivity(intent),sendbroadcast(intent),这两个intent前一个是显式Intent,后一个是隐式Intent,在显式Intent消息中,决定目标组件的唯一要素就是组件名称,因此,如果你的Intent中已经明确定义了目标组件的名称,那么你就完全不用再定义其他Intent内容。直接指定activity的名称就行了,所以就用startactivity,多用于在应用程序内部传递消息;而对于隐式Intent则不同,由于没有明确的目标组件名称,所以必须由Android系统帮助应用程序寻找与Intent请求意图最匹配的组件。Android系统寻找与Intent请求意图最匹配的组件具体的选择方法 是:Android将Intent的请求内容和一个叫做IntentFilter的过滤器比较,IntentFilter中包含系统中所有可能的待选组件,通过sendbroadcast的方式,它更广泛地用于在不同应用程序之间传递消息。
      

  4.   

    startactivity也可以通过传入一个隐式Intent的方式来启动一个activity,这种方式就不需要broadcastreceiver了;如果用sendbroadcast的方式想启动一个activity,似乎不行,sendbroadcast要求有能够监听广播的broadcastreceiver,重写这个broadcastreceiver的onreceive函数,里面可以写一些操作,在这个onreceive函数再用startactivity启动activity应该可以,不过这就多此一举了
      

  5.   

    broadcast可监听响应,调用activity,也就这么个关系.