android安卓学习笔记z

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Android学习笔记一.Activity的生命周期和状态?Activity是android的四大组件之一。是通过backstack(后台栈)来进行管理的,当一个Activity启动的时候,它会在栈顶,一个应用程序只有一个Activity在栈顶,也是和用户交互的界面。当另外一个Activity被启动的时候,此时启动的这个Activity就在栈顶,先前的Activity就会被新启动的Activity压在下面。当栈顶的Activity移除后,后面的Activity才会重新回到栈顶。第一种情况:当启动一个Activity会先执行oncreate,onstart,onresume。当调用finish()或者或者按下back键的时候会从栈顶移除,会执行onpause,onstop,ondestory。第二种情况:当一个正在栈顶的Activity,被完全被覆盖时,先前的Activity会执行onpause,onstart,继续在内存中保存着。等待召唤。当回到先前的Activity的时候会执行onrestart,onstrat,onresume。第三种情况:如果一个Activity处于暂定状态或者停止状态,系统可以通过要求它结束或者杀死它的进程,将它去出内存,系统会将它摧毁调用ondstory当它再次与用户可见的时候他只能完全重新启动并恢复到以前的状态。二.Service详解。Service是android的四大组件之一。是android的服务,与Activity不同,他不能和用户交互,也不能自己启动。需要用context.stratService();运行在后台。应用退出时,Serivce进程并没有退出它仍然在后台运行。比如音乐播放器,当界面退出时,音乐还是在一直播放。1.service的生命周期Oncreate();创建Srevice;OnStrat(Intentinten,intstartId)启动Service;OnDestory();销毁Service;OnBind();返回一个IBinder()接口对象给Service2.service的启动和停止;启动:stratService(Intentintent)来启动Service。这时Service自身会调用oncreate()的方法,接着就执行onstart();还需要在AndroidMainfest。Xml中申明Service的组件。停止:stopService(Intentintent)来停止Service。这时Service会调用Ondestory()方法;3.绑定Serivce;调用bindService(Intentservice,ServiceConnectconn,intflags)来绑定一个Service这时Service会调用自身的oncreate();接着调用onBind()方法反会回客户端的一个IBind的一个接口对象参数(1)Service:Intent对象。参数(2)coon:ServiceConnection对象,实现其onServiceconnected和onserviceDisconnected()在连接成功和断开连接是处理。参数(3)flags:Service创建快捷方式一般用Service.BIND_AUTO_CREATE表示绑定时自动创建。4.实现Service如果要实现一个自己Service需要继承系统的Service类,并且重写里面的回调函数,然后在里面实现自己的功能。主要的回调函数有:OnBind();在被绑定的时候调用。Oncreate();只在第一次创建Service的时候调用,OnStart();在启动Service的时候调用(如果多次启动则多次调用)。OnStartCommand():(在android2.0之后用于代替OnStart)。OnDestory();在Service被摧毁的时候调用。OnUnBind();在Service解除绑定的时候调用。三.BroadcastReceiver(Android广播机制)Broadcastreceiver是android的四大组件之一。1.用于异步接受广播Intent,广播Intent的发送是通过调用content,sendBoradcast();Context.sendOrdereBroadcast(),或者context.sendStickyBroadcast();来实现的。通常一个广播Intent可以被订阅了,此Intent的多个广播接收者所接收。广播接收器只能接受广播,对广播的通知做出相应的通知。广播接收器没有Activity,但是他可以通过接受到的消息启动一个Activity。2.BroadcastReceiver的两种注册方式1).静态注册方式:是在AndroidMainfest.xml的application里面定义receiver并设置要接收的action。2).动态注册方式:在Activity里面调用函数来注册和静态的注册方式差不多。一个形参是recriver,另外一个是IntentFilter,其中里面是要接受的action。3.BroadcastReceiver的生命周期广播接收器的生命周期在onreceiver执行期间,当这个方法返回后被销毁,下次执行又会重新创建一个接收对象。四.Contentprovider(内容提供者)Contentprovider是android的四大组件之一。可支持多个应用程序的存储和共享数据,也是跨应用的共享数据的唯一方式。为存储和共享提供统一的接口,比如:图片,音频,电话本。1).Contentprovider使用表的形式来组织数据2).Contentprovider的方法。Query();查询。Insert();插入。Update();更新。Delete();删除。Gettype();得到数据类型。Oncreate();创建数据是调用的回调函数。五.Android的五种存储方式;1.文件:文件存储方式是一种常见的存储方式,在Android写入和读取的方式和java中实现IO的程序完全一样。提供了openFilelnput()和openFileoutput()的方法来读取设备上面的文件内容。2.网络:利用HttpURLConnection对象,我们可以从网络中获取网页数据。3.Sqlite:是轻量级,嵌入式,关系型数据库。很多的移动该设备都在使用,Sqlite的移植性好,很容易使用,占用内存小,效率较高可靠。在使用中需要得到一个SqliteOpenHelper对象,而SqliteOpenHreper对象是一个抽象类用户需要继承这个类,并实现类中的一些方法。继承该类有两个方法;一:getReadableDatabase():创建或打开一个查询的数据库。二:getWriteableDatabase():创建或打开一个可写的数据库。4.Contentprovider:当应用继承Contentprovider类,并重写该类用于提供数据和数据共享的方法,就可以向其他的应用程序共享其内容。5.SharedPreference:它是Android提供用来存储一些配置简单的信息的一种机制,比如;用户登录的用户名,密码。用的是Map的结构来存储,以键值的方式来存储,可以简单的读和写。

1 / 3
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功