`

Android学习笔记之7Intent和Broadcast

阅读更多

IntentBroadcast

11.1Intent

Intent是一次即将执行操作的抽象描述。实现策略有3种:

通过startActivity()启动Intent

通过Broadcast Intent将一个Intent发给任何对这个Intent感兴趣的BroadcastReceiver

通过startService(Intent)bindService(Intent, ServiceConnection, int)和后台的Service交互。

 

第一种方式

Intent最常用的用途是链接一个应用中各个Activity

启动特定的Activity

Intent intent= new Intent(A.this, B.class);

startActivity(intent);

 

启动未定的Activity

不关心启动哪个Activity,只将启动的Activity的描述信息放到Intent中,让系统寻找合适的Activity来启动。

Intent intent= new Intent(Intent.参数,”描述信息”);

startActivity(intent);

 

处理Activity的返回值

StartActivityForResult()启动一个Activity,新的Activity执行完毕后(setResult(),finish()),原Activity执行回调函数onActivityResult(),系统自动调用该方法。

 

一个Intent里边包含的内容有:

对执行动作的描述Action

动作相关的数据Data

数据类型type

执行动作附加信息的描述:类别category

附加信息的描述:extras

目标组件的描述:component

 

系统自定义的Action常见的有:ACTION_MAIN(标记为应用程序的入口)ACTION_VIEW(显示给用户)、ACTION_DIAL(打电话)、ACTION_PICK(数据选择)、ACTION_EDIT(编辑数据)ACTION_DELETE(删除数据)。

 

Android用指向数据的URL来表示数据data

 

11.2Broadcast

Intent还可以作为不同进程间传递数据的媒介。

广播Broadcast方法:

New Intent后,设置sendBroadcast(intent);

 

BroadcastReceiver来接受广播的Intent,需要设置Intent Filter制定对哪些Intent监听。

 

需要继承BroadcastReceiver,实现onReceive接口。

注册的BroadcastReceiver并非一直在后台运行,而是事件或相关的Intent来临时才被系统调用。

 

BroadcastReceiver的注册:

1.AndroidManifest.xml中进行轻量级注册。

<receiver android:name=”类名”>

<intent-filter>

<action android:name=”接受谁的广播Intent的绝对路径名”>

</intent-filter>

</receiver>

2.在代码中注册

NewBroadcastReceiverIntent Filter,调用registerReceiver()实现。

unRegisterReceiver()注销注册的BroadcastReceiver

分享到:
评论

相关推荐

    android 很好的学习笔记

    【Android学习笔记详解】 在移动应用开发领域,Android操作系统占据着重要的地位,为开发者提供了丰富的平台和无限的可能性。"Android很好的学习笔记"是一份专为初学者设计的资源,旨在帮助那些想要踏入Android开发...

    很好的android学习笔记

    这个“很好的android学习笔记”包含了作者在学习Android开发过程中积累的宝贵经验,旨在帮助初学者或有一定基础的学习者更好地理解和掌握Android开发的核心概念和技术。 一、Android系统架构 Android系统的层次结构...

    Android学习笔记.zip

    Android学习笔记是一个全面涵盖Android应用开发的资源集合,旨在帮助初学者和有经验的开发者深入理解和掌握Android平台的各个方面。这个压缩包可能包含了详细的教程、示例代码、项目实践以及相关的学习指南,以促进...

    android 学习笔记

    "Android学习笔记"是一个集合了从网络上收集并整理的学习资料,旨在帮助开发者或者对Android有兴趣的人深入理解和掌握这个平台。 Android开发教程通常涵盖以下几个核心知识点: 1. **环境配置**:开始Android开发...

    Android学习笔记–Activity中使用Intent传值示例代码

    在这个“Android学习笔记–Activity中使用Intent传值示例代码”的主题中,我们将深入理解Intent的工作原理以及如何在不同Activity之间传递数据。 首先,Intent是一个对象,它描述了一次操作的意图,包括操作类型...

    Android学习笔记

    在Android学习笔记中,作者分享了自己深入学习Android开发的过程,旨在帮助初学者构建系统性的学习路径,并通过实践提升技能。Android是一种广泛应用于移动设备的操作系统,由Google主导开发,支持丰富的应用程序...

    全网最全Android开发笔记.zip

    笔记包含了大量的实例代码、技术解析和实战经验,对于想要深入学习Android开发的程序员来说,是一份宝贵的资源。 一、Android系统架构 Android系统由五大部分组成:Linux内核、硬件抽象层(HAL)、库、应用程序框架...

    Android study notes 安卓学习笔记

    【Android学习笔记】是针对Android开发者的详尽学习资源,涵盖了Android开发的基础到高级概念,旨在帮助初学者和有经验的开发者深入理解Android操作系统的工作原理和应用开发技术。以下是一些核心知识点的概述: 1....

    Android 学习笔记

    【Android 学习笔记】 Android 是一款开源的操作系统,主要用于移动设备,如智能手机和平板电脑。它是Google主导的开放手机联盟开发的,以其开放性和可定制性吸引了大量的开发者和用户。学习Android开发对于想要...

    Android应用开发_学习笔记.doc

    【Android应用开发学习笔记】 Android应用开发是移动设备软件开发的重要组成部分,主要涉及四大组件、UI设计以及系统交互。本文将深入探讨这些关键知识点。 **一、Android四大组件** 1. **Activity(活动)** - ...

    android学习笔记2--BroadcastReceiver

    BroadcastReceiver是Android四大组件之一,它是应用程序接收系统或其它应用广播事件的重要机制。BroadcastReceiver作为一个全局监听器,即使目标程序没有运行,也能接收到广播并作出响应,这大大增强了应用程序的...

    [电子书][Android]Android开发教程笔记完全版.zip

    【Android开发教程笔记完全版】是一份全面的Android开发学习资料,旨在帮助新手小白和有一定经验的程序员深入理解和掌握Android应用开发技术。这份资源包含了从基础到进阶的多个层次的知识点,对于想要踏入Android...

    android高级编程学习笔记

    ### Android高级编程学习笔记 #### 1. Android安全性 Android安全性是高级开发中非常重要的一环。安全性主要由底层的Linux内核提供,并且涉及到应用程序之间的数据隔离与通信控制。 ##### 1.1 Linux内核安全 每...

    Android 系统知识总结+培训课程+笔记

    这个“Android系统知识总结+培训课程+笔记”包含了一系列深入学习Android开发的重要资料,涵盖了从基础到高级的各种主题,适合Android开发者或者对Android系统有兴趣的学习者使用。这份资料可能与在青岛巴黎春天广场...

    Android2.1消息应用(Messaging)源码学习笔记.pdf

    Android 消息应用(Messaging)源码学习笔记 在 Android 操作系统中,应用程序(APK)是由多个组件构成的,包括 Activity、Service、Receiver 和 ContentProvider。其中,AndroidManifest.xml 文件是 APK 的打包...

    Android程序开发学习笔记(手电筒软件设计).doc

    【Android程序开发学习笔记(手电筒软件设计)】 Android是一种开放源代码的移动操作系统,由Google领导的Open Handset Alliance开发,旨在提供一个统一且先进的移动设备平台。它的历史可以追溯到2008年,当时首款...

    Android开发教程笔记完全版.rar

    这份"Android开发教程笔记完全版"的压缩包文件包含了全面的学习资料,对于初学者和有一定经验的开发者来说,都是宝贵的资源。下面我们将深入探讨其中可能涵盖的知识点。 1. **Android系统架构**:Android系统分为...

Global site tag (gtag.js) - Google Analytics