Android的介绍
1. Android是什么?
Android是一个平台,主要包括Linux微内核,中间件(SQLite等),关键应用(电话本、邮件、短消息、GoogleMap、浏览器等),提供的Java框架,以及Android中的JVM。
2.Android特点之关键类
视图,ContentProviders(应用交互管理类)、ResourceManager非编码资源管理类、NotificationManager(通告管理类)、ActivityManager(生命周期管理类)。
3.Android特点之界面开发
这一块主要讨论了Android的界面开发机制,可以讲组件的初始化抽取出来放到配置文件中,组件更新用编码方式来处理。
4.应用构成
Android的应用一般由以下四个关键部分构成Activity、IntentReceiver、Service、ContentProvider。其中Activity是必要部分。
应用场合:
Activity每个应用都是必须得,Activity代表一个应用的一个具体的界面管理类,其本身并不显示。
IntentReceiver可使应用对外部事件做出响应,比如,当应用正在执行,突然有了来电,这个时候可使用IntentReceiver做出处理是应用更健壮。
Service Android应用的生命周期是由Android系统来决定的,不由具体的应用的线程左右。当应用要求在没有界面显示的情况还能正常运行,(要求有后台线程,而后台线程是不会被系统回收,直到线程结束)这个时候就需要用到Service
ContentProvider 可以说ContentProvider封装很多Android当中的上下文环境,包括SQLite,这就使得在不同应用之间交互成为可能。
5.Android特点之布局管理
FrameLayout:左上角只显示一个组件。
LinearLayout:线性布局管理器,分为水平和垂直俩中,只能进行单行布局。
TableLayout:任意行和列的表格布局管理器。其中TableRow代表一行,TableRow的每一个视图组件代表一个单元格。
AbsoluteLayout:绝对布局管理器,坐标轴的方式,左上角是(0,0)点,往右x轴递增,往下Y轴递增。
RelativeLayout:相对布局管理器,更具最近一个视图组件,或是顶层父组件来确定下一个组件的位置。
6.Activity交互
Intent方式:Intent其实就是用来在Activity之间做交互用的,需要说明的是Intent有个意图说明,值得用深究,举个简单的例子,有种叫Intent.ACTION_CALL,可直接拨打电话。
SharedPreferences是Android平台上一个轻量级的存储类,主要是保存一些常用的配置。SharedPreferences类似过去Windows系统上的ini配置文件,但是它分为多种权限,可以全局共享访问,最终是以xml方式来保存,效率不如Intent,但是由于可以共享,所有可以再Acitivity之间交互。但其效率比SQLite要高。
SQLite也就是数据库,这种方式不推介,因为其效率问题,如果是在不同应用之间交互,可以考虑SQLite。或是永久存储的情况下。
7.Android特点之生命周期
理解Android生命周期非常重要,主要有以下几点
每一个Android应用都是以一个进程的方式运行的,其生命周期不是有自身控制,而是由系统根据运行的应用的一些特征来决定。
所有理解好Android生命周期对你的应用什么时候会被系统回收很重要。
理解好生命周期可提高应用的健壮性。比如应用的初始化应该放到onCreate方法中,应用暂停的时候应用重写onPause方法来保存当前应用操作结果。
8. SQLite
SQLite是Android中提供的内置数据库,据说比MySql更轻巧。SQLite也是开源产品。数据库的操作方式主要有以下俩中:
SQL语句直接操作,插入、更新、删除都可以直接写SQL语句,调用execSQL()就可以,而查询需要使用rawQuery()来完成,查询结果返回是一个可滚动的结果集,Cursor在对Cursor操作前,需要将其游标移动到第一位,每取一个结果向下移一位。
9.Android实际开发经验分享
1 自定义组件的显示问题,在写自定义View的时候经常要对视图的X、Y调整,以达到预期的理想位置。可以讲每个组件的X、Y坐标值画到组件旁边,这样很直观,一看就知道该怎样调整。
2 使用Log来打印日志和进行调试。
3 使用LogCat视图,在showView中有LogCat视图,LogCat视图会显示一些Android仿真器打印出的堆栈信息,对应用的调试非常有帮助,另外Log打印的日志也在这边显示。
4 使用Emulator Control视图,Emulator Control可以完成一些简单的设备操作,比如,模拟来电,短消息。
5 活用tools目录下的工具,该目录在Android SDK中都有提供,通过这些工具可以操作Android仿真器,比如,创建一个虚拟SD卡,将系统中的文件移动到虚拟SD中,Android都有提供相应的工具,相关命令可以上网查阅。
综上,由于两者的开放性,使得兼容性比较好。同时可以节省成本和缩短研发时间,这就是睿虎G7平板电脑采用ARM+ Google Android架构的原因。
Android的介绍相关推荐
- android AsyncTask介绍(转)
android AsyncTask介绍 AsyncTask和Handler对比 1 ) AsyncTask实现的原理,和适用的优缺点 AsyncTask,是android提供的轻量级的异步类,可以直接 ...
- Android类库介绍
Android类库介绍 GPhone开发包Android SDK含了很多丰富的类库: android.util 涉及系统底层的辅助类库 android.os 提供了系统服务.消息传输.IPC管道 an ...
- 1.android体系结构介绍
一.Android的介绍 android介绍见百度百科:Android的介绍,度娘把Android介绍的这么清楚,如果谷歌是Android的爹,那度娘就是娘了. 二.Android的架构图 andro ...
- 【转】Android bluetooth介绍(三): 蓝牙扫描(scan)设备分析
原文网址:http://blog.csdn.net/xubin341719/article/details/38584469 关键词:蓝牙blueZ A2DP.SINK.sink_connect.s ...
- 作业Android自我介绍
***Android自我介绍***
- Android HIDL 介绍学习之客户端调用
应上一篇文章Android HIDL 介绍学习_Super Jang的博客-CSDN博客_安卓hidl读者的要求,本文更新客户端调用方法. hidl的客户端调用相比服务端的实现要简单很多,本次我们通过 ...
- Android开发介绍
Android开发介绍 这个教程设计是帮助你学习基础的Android开发和快速搭建您的开发环境.这个是在我的Window 7上编写的,当然它也支持Linux(uBuntu).Mac OS其他支持And ...
- android 模拟器的使用(Android模拟器介绍及创建)
做了这么久的android开发,一直想把在开发过程中积累的经验或问题总结一下,可是都没有时间,现在有一点点空闲,所以慢慢把我在android中遇到的问题整理一下写出来,供自己以后参考,也希望和大家一起 ...
- Android bluetooth介绍(一):基本概念及硬件接口
关键词:蓝牙硬件接口 UART PCM blueZ 版本:基于android4.2之前版本 bluez 内核:linux/linux3.08 系统:android/android4.1.3.4 ...
- Android bluetooth介绍(二): android 蓝牙代码架构及其uart 到rfcomm流程
关键词:蓝牙blueZ UART HCI_UART H4 HCI L2CAP RFCOMM 版本:基于android4.2之前版本 bluez内核:linux/linux3.08 系统:an ...
最新文章
- Intent Flag介绍 intent.addFlags()
- java 组件 未显示出来_java – 自定义组件未显示
- matlab sort descend,详解Matlab中 sort 函数用法
- idea 创建多模块项目子模块为灰色
- 去掉博客复制下来的代码的行号
- 合并两个LMDB文件
- windows下桌面便签小工具简单使用技巧
- rufus中gpt和mrb磁盘_Rufus镜像ISO系统文件写入工具,支持GPT和MBR,轻松创建USB启动盘...
- vs2019配置glfw、glad等环境
- 2020年信创产品测试结果
- 刷票投票的自动运行脚本
- Sequencer和Sequence
- 【论文阅读术语】benchmark、baseline、backbone、ground truth
- 4g硬盘可以装Linux 么,eeepc 900a 4g ssd硬盘予装了linux操作系统是否能改装xp
- 学计算机可以考小学数学的教师编吗,入编说丨小学数学考编经验
- Maven(保姆级全详)新手入门
- 关于《基于eclipse的android项目实战—博学谷》的问题,为了这个差点疯了
- python在数学方面的应用_Python在小学数学应用中的可行性研究
- 2.latch之oracle latch
- final修饰的Map集合可以被修改