Android测试入门篇
Android构架
1.Application应用程序层:用Java语言编写的运行在虚拟机的程序
用户直接使用的功能,其基本应用比如:电话、联系人、短信、邮件等,还有无数第三方应用。
2.ApplicationFramework应用架构层:编写Google发布的核心应用程序的API框架
开发应用程序使用的基础组件,相当于供应用程序调用的API、Java开发,包括:丰富的界面控件、ContentProvider,数据存储组件,应用程序可以通过ContentProvider分项数据给其他应用,也可以访问其他程序的数据,AResourceManager,资源管理器,帮助应用程序访问图片,布局文件等资源,ANotificationManager,提示信息管理器,AnActivityManager,主要负责管理应用程序的生命周期和调用栈等。
3.AndroidRuntime系统运行库层:
包括两个部分,一是运行环境:应用程序的运行空间,包括一个实现Java语言大多数功能的核心库,以及一个类似Java虚拟机的Dalvik虚拟机,所有应用程序都是运行在虚拟机中。二是库文件界面:一系列的C/C++库,相当于Android系统在Linux核心系统上的功能扩展,为ApplicationFramework层的许多功能提供支持。
4.LinuxKernel核心层:
Linux核心,Android的基础,基于2.6的版本,基本的操作系统组件,包括内存管理,进程管理,存储管理,网络栈,驱动模型等等。
Android建立在Linux内核之上,但是Android不是Linux,它没有支持本地窗口系统,没有支持glibc运行库,没有包含完整的Linux内核。
Android系统特点
1.开放性
2.应用程序无限性:Android上的应用程序可以通过标准API访问核心移动设备功能,通过互联网,应用程式可以声明它们的功能可供其他应用程序使用。
3.应用程序是在平等条件下创建的:移动设备上的应用程序可以被替代或扩展。
4.应用程序可以轻松嵌入网络
5.应用程序可以并行运行:在后台运行时,应用程序可以生成通知来引起用户注意。
Linux文件系统结构
Android系统基于Linux,因此,做Android测试掌握一定的Linux知识是必要的。Linux文件系统结构是用户空间和内核中与文件系统相关的主要组件之间的关系:
用户空间包含一些应用程序和GUNC库,它们为文件系统调用提供用户接口。
VFS是底层文件系统的主要接口,这个组件导出一组接口,然后将它们抽象到各个文件系统。
有两个针对文件系统对象的缓存:inodecache和dentry,它们缓存最近使用过的文件系统对象。
缓冲区缓存会缓存文件系统和相关块设备之间的请求。
Linux文件系统采用阶层式树状目录结构,最上层是"/",然后再下边创建其他的目录,如/bin。
相关文章
- Android carservice架构及启动流程
- Android + Appium 自动化测试完整的环境配置及代码详解
- robotium android,Robotium 测试Android apk安装包
- Android FFmpeg系列06--音频可视化
- android调用相册并显示图片_Android获取相册列表
- Android Services Library_android freeware
- 解决android studio 无法更新插件的问题(某些)
- Android HAL 与 HIDL 开发笔记
- 【Android RTMP】RTMP 数据格式 ( FLV 视频格式分析 | 文件头 Header 分析 | 标签 Tag 分析 | 视频标签 Tag 数据分析 )
- 【Android 性能优化】应用启动优化 ( 启动白屏问题 | 应用启动时间测量 | 冷启动 | 热启动 | 应用启动时间计算源码分析 )
- 【Android 电量优化】电量优化特性 ( Doze 低电耗模式 | Standby 应用待机模式 | 白名单设置 | 白名单添加系统设置界面 | 指定应用的白名单添加界面 | 测试应用 )
- 【Android Protobuf 序列化】Protobuf 性能测试 ( fastjson 序列化与反序列化 | gson 序列化与反序列化 | 三种序列化与反序列化性能对比 )
- 【错误记录】编译 Android 版本的 ijkplayer 报错 ( You must define ANDROID_NDK before starting. | 下载指定版本 NDK )
- 【ijkplayer】编译 Android 版本的 ijkplayer ② ( 切换到 k0.8.8 分支 | 执行 init-android.sh 脚本进行初始化操作 )
- 【ijkplayer】编译 Android 版本的 ijkplayer ③ ( 执行 compile-ffmpeg.sh clean 命令 | 下载并配置 android-ndk-r10e )
- Android开发中遇到的问题(三)——eclipse创建android项目无法正常预览布局文件详解手机开发
- Android开发中遇到的问题(二)——新建android工程的时候eclipse没有生成MainActivity和layout布局详解手机开发
- [android] 测试的相关概念详解手机开发
- 关于Android的UI测试详解手机开发
- android中使用afinal一行代码显示网络图片详解编程语言
- 倒数日·Days Matter 正式推出 Android 官方免费版
- 前 Sun 公司 CEO 作证 Android 没有授权问题
- 使用Android实现连接MySQL数据库:实现快速数据交互与管理(android连接mysql数据库)
- 解析后台进程对Android性能影响的详解
- Android基础之Fragment与Activity交互详解
- android暂停或停止其他音乐播放器的播放实现代码
- android开发教程之用命令启动android模拟器并设置其内存大小
- android多行标签热点示例