转载:
http://blog.csdn.net/getclass/archive/2010/03/05/5350740.aspx
==================================================================================
1.添加新的Activity
1) 新建一个继承Activity的类
2)在AndroidManifest.xml文件中添加:<activity android:name=".NewActivity" android:label="新activity的页面标题"/>
总结:
--android:name属性值的前面加了一个点 表示NewActivity是当前包cn.itcast.action下的类
2.打开新的Activity
1) 不传递参数:startActivity(new Intent(MainActivity.this, NewActivity.class));
2) 传递参数:
Intent intent = new Intent(MainActivity.this, NewActivity.class)
携带数据:Bundle bundle = new Bundle();
设置具体数 据:bundle.putString("name", "传智播客");
将数据添加到意图 中:intent.putExtras(bundle);
将意图通知操作系统:startActivity(intent);
3)接 收参数:
得到激活当前意图的意图:Bundle bundle = this.getIntent().getExtras();
String name = bundle.getString("name");
4)得到新打开Activity关闭后返回的数据
在调用端的 Activity:
startActivityForResult (new Intent(MainActivity.this, NewActivity.class), 1);
重写onActivityResult(int requestCode, int resultCode, Intent data)方法
在被调用端的Activity:
数据是使用Intent返 回:Intent intent = new Intent();
返回数据存入 Intent:intent.putExtra(“result”, “传智播客的学生很可爱”);
设置返回数 据:NewActivity.this.setResult(RESULT_OK, intent);
关闭 Activity:NewActivity.this.finish();
总结:
--显式意图:第一个参数为当前Activity类对象,第二个参数为你要打开的Activity类
-- 最后不要忘记将意图通知操作系统
--Bundle类用作携带数据,它类似于Map,用于存放key-value名值对形式的值
--传 递参数时可以不用Bundle类.intent.putExtras("name","传智播客");
--请求码:区分那个Activity的 哪个按钮的请求.
--结果码:区分是哪个Activity返回的结果.
3.Intent(意图)
总 结:
--Intent提供了一种通用的消息系统,为了减少耦合.
--Intent可以激活Android应用的三个核心组件:活动、 服务和广播接收器。
--Intent分成显式意图和隐式意图
--显式意图:明确指定Intent传递给哪个组件
--隐式意 图:Android系统根据隐式意图中设置的动作(action)、类别(category)、数据(URI和数据类型)找到最合适的组件来处 理这个意图。
4.Activity 生命周期
1)Activity三个状态:
运行状态:当前可以使用的Activity
暂停状态:能看到的Activity,但失去焦点.
停止状态:看不到的Activity,被别的Activity覆盖了.
2)Activity 中的7种方法:
void onCreate(Bundle savedInstanceState)
void onStart()
void onRestart()
void onResume()
void onPause()
void onStop()
void onDestroy()
3)Activity的完整生命周期自第一次调用onCreate()开始,直至调用onDestroy()为止。
4)Activity 的可视生命周期自onStart()调用开始直到相应的onStop()调用结束。
5)Activity的前台生命周期自 onResume()调用起,至相应的onPause()调用为止。
5.照相机的操作
总 结:
--照相机一定要记得,在不用的时候要释放.
6.广播接收者
1)继承BroadcastReceiver,并重写onReceive() 方法。
public class IncomingSMSReceiver extends BroadcastReceiver {
@Override public void onReceive(Context context, Intent intent) {
}
}
2)订阅感兴趣的广播Intent,订阅方法有两种:
-使用代码进行订阅
IntentFilter filter = new IntentFilter("android.provider.Telephony.SMS_RECEIVED");
IncomingSMSReceiver receiver = new IncomingSMSReceiver();
registerReceiver(receiver, filter);
-在AndroidManifest.xml文件中的<application>节点里进行订阅:
<receiver android:name=".IncomingSMSReceiver">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED"/>
</intent-filter>
</receiver>
3)接收电池电量变化广播Intent
-<action android:name="android.intent.action.BATTERY_CHANGED"/>
4)接收 开机启动广播Intent
-<action android:name="android.intent.action.BOOT_COMPLETED"/>
总结:
--广播接收者是用在异步接收广 播意图的.
--就是一个意图,可以被多地方接收.
--可以利用广播接收者监听短信
--当系统收到短信时,会发出一个action 名称为android.provider.Telephony.SMS_RECEIVED的广播Intent,该Intent存放了接收到的短信内容,使 用名称“pdus”即可从Intent中获取短信内容。
--通常一个BroadcastReceiver对象的生命周期不超过5秒
7.服务
1)继承 Service类:public class SMSService extends Service { }
2)在 AndroidManifest.xml文件中的<application>节点里对服务进行配置:
<service android:name=".SMSService" />
总结:
--服务一般没有用户操作界面,它运行于系统中不容易被用户发觉
--服务不能自己运行
分享到:
相关推荐
36_Activity生命周期.avi 所在项目:ActivityLife 37_采用广播接收者实现短信窃听器.avi 所在项目:SMSListener & Web端应用:web 38_采用广播接收者拦截外拔电话与其特性.avi 所在项目:SMSListener 39_采用Service...
4. **Android组件**:Android应用由多个组件构成,如活动、服务、广播接收器和内容提供者。了解这些组件的用途和交互方式是关键。 5. **事件监听与处理**:在Android中,用户交互通常通过事件监听来处理。课程会教...
1. **Activity生命周期**:Activity是Android应用中的核心组件,代表用户界面的一个屏幕。理解Activity的启动、暂停、恢复、停止和销毁等不同状态及其转换,对于优化用户体验和管理资源至关重要。 2. **Intent的...
**Activity生命周期**:Android应用中的Activity是用户交互的主要组件,了解它的启动、暂停、恢复、销毁等状态以及对应的回调方法,如onCreate()、onStart()、onResume()、onPause()、onStop()和onDestroy(),对于...
第六天 1> Activity的生命周期 2> 广播接收者(实现短信监听) 3> 服务与语音刻录(实现电话监听)、使用AIDL实现进程通信 4> 音乐播放器 5> 视频播放器 第七天 1> 拍照 2> 视频录制 3> 手势识别 4> 国际化(文字、图片...
在本课程"传智播客_Andorid_智慧北京视频_Day03视频"中,我们深入探讨了Android开发中的关键知识点,这是Android开发者进阶过程中不可或缺的一部分。这个压缩包包含的是Day03的教学视频,旨在帮助学习者掌握Android...
1. **Activity生命周期**:在Android应用开发中,Activity是用户界面的核心组件。第10天可能会深入讲解Activity的不同状态(如运行、暂停、停止、销毁)以及它们之间的转换,这有助于开发者理解如何妥善管理应用的...
2. **Activity生命周期**:Activity是Android应用的基本组件,用于展示用户界面。理解Activity的启动、暂停、恢复、销毁等不同状态及其转换是Android开发者的基础知识。在这一天的视频中,可能会详细讲解每个状态的...
在本课程"传智播客_Andorid_20天精通Android开发视频_第05天视频"中,我们深入探讨了Android应用开发的关键概念和技术。这个压缩包包含的资源是第五天的学习内容,旨在帮助学员掌握Android开发的核心技能。 在...
在本资源中,"传智播客_Andorid_20天精通Android开发视频_第17天视频_视频.zip" 是一个针对Android开发初学者的教程,由知名教育机构传智播客提供。这个压缩包包含的是第17天的课程视频,旨在帮助学员在20天内掌握...
在本课程"传智播客_Andorid_20天精通Android开发视频_第3天视频"中,我们将深入探讨Android开发的基础知识,这是一份针对初学者的详细教程,旨在帮助你快速掌握Android应用程序开发的核心技能。在这个第三天的学习...
2. **Activity生命周期**:讲解Activity如何启动、暂停、恢复和结束,以及如何在不同状态之间切换,这是Android应用开发的基础。 3. **布局设计**:介绍XML布局文件的编写,包括线性布局、相对布局、网格布局等,...
在本课程"传智播客_Andorid_20天精通Android开发视频_第06天视频"中,我们深入探讨了Android开发的关键概念和技术,旨在帮助初学者快速掌握Android应用开发的基础。这个课程的第06天视频,可能是整个学习路径中的一...
2. **基本组件**:Android应用由各种组件构成,如活动(Activity)、服务(Service)、广播接收器(BroadcastReceiver)和内容提供者(ContentProvider)。第四天的课程可能会深入讲解活动的生命周期,这是Android...
7. **生命周期**:理解Activity和Service的生命周期至关重要,因为它们决定了何时创建、更新、暂停、恢复和销毁组件,这对优化性能和避免内存泄漏至关重要。 8. **权限管理**:Android 6.0(API级别23)引入了运行...
这些资料往往详细介绍了课程中涉及的关键概念和技术,如Android应用架构、Activity生命周期、Intent传递、Service管理、BroadcastReceiver广播接收器、ContentProvider数据共享、多线程处理、AsyncTask异步任务以及...
在“传智播客_Andorid_20天精通Android开发视频_第2天视频”这一资源中,我们可以深入学习Android应用开发的基础知识。这个压缩包包含的是第二天的课程视频,意味着它将建立在第一天的基础之上,逐步引导初学者进入...