Android 测试入门篇

Android构架

1. Application 应用程序层:用Java语言编写的运行在虚拟机的程序

用户直接使用的功能,其基本应用比如:电话、联系人、短信、邮件等,还有无数第三方应用。

2. Application Framework 应用架构层:编写Google发布的核心应用程序的API框架

开发应用程序使用的基础组件,相当于供应用程序调用的API、Java开发,包括:丰富的界面控件、Content Provider,数据存储组件,应用程序可以通过Content Provider分项数据给其他应用,也可以访问其他程序的数据,A Resource Manager,资源管理器,帮助应用程序访问图片,布局文件等资源,A Notification Manager,提示信息管理器,An Activity Manager,主要负责管理应用程序的生命周期和调用栈等。

3. Android Runtime 系统运行库层:

包括两个部分,一是运行环境:应用程序的运行空间,包括一个实现Java语言大多数功能的核心库,以及一个类似Java虚拟机的Dalvik虚拟机,所有应用程序都是运行在虚拟机中。二是库文件界面:一系列的C/C++库,相当于Android系统在Linux核心系统上的功能扩展,为Application Framework层的许多功能提供支持。

4. Linux Kernel 核心层:

Linux 核心,Android的基础,基于2.6的版本,基本的操作系统组件,包括内存管理,进程管理,存储管理,网络栈,驱动模型等等。

Android建立在Linux内核之上,但是Android不是Linux,它没有支持本地窗口系统,没有支持glibc运行库,没有包含完整的Linux内核。

Android系统特点

1. 开放性

2. 应用程序无限性:Android上的应用程序可以通过标准API访问核心移动设备功能,通过互联网,应用程式可以声明它们的功能可供其他应用程序使用。

3. 应用程序是在平等条件下创建的:移动设备上的应用程序可以被替代或扩展。

4. 应用程序可以轻松嵌入网络

5. 应用程序可以并行运行:在后台运行时,应用程序可以生成通知来引起用户注意。

Linux文件系统结构

Android系统基于Linux,因此,做Android测试掌握一定的Linux知识是必要的。Linux文件系统结构是用户空间和内核中与文件系统相关的主要组件之间的关系:

用户空间包含一些应用程序和GUN C库,它们为文件系统调用提供用户接口。

VFS是底层文件系统的主要接口,这个组件导出一组接口,然后将它们抽象到各个文件系统。

有两个针对文件系统对象的缓存:inode cache 和 dentry,它们缓存最近使用过的文件系统对象。

缓冲区缓存会缓存文件系统和相关块设备之间的请求。

Linux文件系统采用阶层式树状目录结构,最上层是"/",然后再下边创建其他的目录,如/bin。

时间: 2024-08-02 09:02:53

Android 测试入门篇的相关文章

Android 测试入门篇_Android

Android构架 1. Application 应用程序层:用Java语言编写的运行在虚拟机的程序 用户直接使用的功能,其基本应用比如:电话.联系人.短信.邮件等,还有无数第三方应用. 2. Application Framework 应用架构层:编写Google发布的核心应用程序的API框架 开发应用程序使用的基础组件,相当于供应用程序调用的API.Java开发,包括:丰富的界面控件.Content Provider,数据存储组件,应用程序可以通过Content Provider分项数据给其

1、Android测试入门

编写和运行测试时Android APP开发周期中的重要的一环.好的测试可以让你非常容易的在开发过程中发现bug,提升你对自己代码的自信.使用Android Studio,你可以在物理设备或者虚拟机中运行本地单元测试或者仪表测试(instrumented tests)(仪表测试我自己发明的词汇),这样你就可以分析结果,在开发环境中更改你的代码. 本地单元测试是指无需访问Android Framework或者一台Android 设备,直接在你的开发机器中运行的测试. 仪表测试直接运行在你的设备或者虚

安卓手机Android开发入门篇 环境配置安装

去年下半年搞了三个多月Android开发,主要做手机端流媒体播放相关内容,涉及TCP.UDP网络通信.JSON传输数据.H.264解码播放等技术.万事开头难,做Android开发首先要把开发的环境搭建好,刚开始做安装Android开发环境的时候,阅读了一些技术博客,但是都是从操作上去书写,没能很好的让初学者理解,在搭建中如果遇到问题则不能很好的解决.下面我根据我的一些经验,讲解如何快速搭建Android开发环境: 一:软件准备 1.jdk(Java Development Kit),由于绝大多数

ASP漏洞全接触-入门篇

随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多.但是由于这个行业的入门门槛不高,程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患.用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的SQL Injection,即SQL注入. SQL注入是从正常的WWW端口访问,而且表面看起来跟一般的Web页面访问没什么区别,所以目前市面的防火墙都不会对SQL注入发出警报,如果

Flash动画基础教程①入门篇

flash动画|基础教程 這個教程是本人的一些經驗之談,為了初學者的入門教程,未經本人許可請勿轉載!謝謝 Flash动画基础教程--入门篇①首先我们来说说什么是Flash? Flash是Macromedia公司出品的软件,对于Flash是什么很多的描述,大致是"交互性矢量多媒体制作软件"的意思!首先,它是一种多媒体制作软件,Flash的产品往往都是一些"有声有色"给人视觉冲击的动画.其次,Flash是以矢量图为基础的,矢量图最大的特点就是它能无限的缩放,不会因为图像

Android开发入门(七)处理变化 7.4 设置活动的方向

偶尔地,你可能想要确保你的应用程序在某一个确定的方向上面显示,横屏模式或竖屏模式.例如,你可 能会开发一款只在横屏模式下面运行的游戏.在这种情况下,可以通过编写代码,强制把Activity的方向设 置为横向,这需要使用Activity类的setRequestOrientation()方法. import android.content.pm.ActivityInfo; @Override public void onCreate(Bundle savedInstanceState) { supe

Android测试教程(9):ApplicationTestCase示例

前面介绍了Android测试的一些理论知识,从本篇开始的几篇将结合ApiDemoTest示例来介绍Android测试的实例.在此之前可 以参照Android测试教程(3):测试项目 创建ApiDemos->tests 测试项目,本项目测试用来测试ApiDemos,主要目的是介绍 Android测试框架的使用方法. 当然要测试ApiDemos,事先要创建好项目ApiDemos.下图显示了创建好ApiDemos- >Tests后,ApiDemos->Tests中所含的Java类: Andro

Android测试教程(7):测试Content Provider

Content Provider 为不同的应用访问数据提供了统一的接口,本篇介绍Android测试包中用于测试Content Provider 的相关 知识. Android 测试包中用于测试Content Provider的基本类为ProviderTestCase2, 允许你在一个隔离环境下来测试 Content Provider. 并提供了一些Mock类如IsolatedContext ,MockContentResover 来辅助测试. 和其它测试一样,对 于Content Provide

【IPFS + 区块链 系列】 入门篇 - IPFS + Ethereum (上篇)-js-ipfs-api

孔壹学院:国内区块链职业教育引领品牌. 作者:黎跃春,孔壹学院创始人,区块链.高可用架构师 微信:liyc1215 区块链博客:http://liyuechun.org Ebay项目 基于以太坊Ethereum & IPFS的去中心化Ebay区块链项目详情链接 目录 1. 内容简介 2. IPFS-HTTP效果图 3. 实现步骤 3.1 安装create-react-app 3.2 React项目创建 3.3 运行React项目 3.4 浏览项目 3.5 安装ipfs-api 3.6 完成UI逻