您的位置:首页 > 移动开发 > Android开发

Android 之 应用程序和Activity

2016-03-18 01:36 344 查看
每一个Android 应用程序都运行在自己的Dalvik 虚拟机实例的独立进程中

Activity是所有用户界面的基础

Android应用程序由松散耦合的组件组成,并使用应用程序Mainfest 绑定在一起;

应用程序Mainfest描述了每一个组件和他们之间的交互方式,还用于指定应用程序元数据、其硬件和平台要求、外部库以及必须的权限

应用程序的基本结构模块:

Activity 应用程序的表示层 应用程序中的每一个UI都是通过Activiy 类的一个或多个扩展实现的

Service 应用程序中不可见 用于更新数据源和activity、触发通知和广播Intent 被用来执行一些运行时间长的任务或不需要和用户交互的任务

Content Provider 一个可共享持久数据的存储器 Content Provider 用来管理和持久化应用程序数据 通常与SQL数据库交互 可通过Content Provider 访问其他

应用程序共享的数据,也可以配置自己的Content Provider 允许其他应用程序访问

Intent 一个强大的 应用程序之间消息传递框架 Intent 可以启动和停止Activity和service,还可以在系统范围内向Activity、service 和broadcast Receiver 广播消息

以及请求对特定的一条数据执行操作 分为显式Intent 隐式Intent 和广播Intent

Broadcast Receiver 侦听Intent Broadcast Recevier 使应用程序可以监听到那些匹配指定的过滤标准的Intent标准 会自动启动应用程序来响应某个收到的Intent

Widget 可用于创建动态的交互式应用程序组件,用户可以把这些组件添加到他们的主屏幕

Notification 允许向用户 发送信号

Mainfest 他包含组成应用程序的每一个Activity 、service 、Content Provider 、Broadcast Recevier 的节点、并使用Intent filter 和权限来确定这些组件之间

以及这些组件和其他应用程序来交互的

应用程序的元数据 包括 图标 版本号 或主题

根mainfest 标签 【项目包 的package属性、xmlns:android 属性提供文件内使用的某些系统属性、versionCode 当前应用程序版本号、versionName定义显示给用户

的公共版本号

installLocation 指定是否允许应用程序安装到外部存储器而不是内部存储器 如果不指定则安装在内部存储器 用户则无法将应用程序移动到外部存储器

参数分为 preferExternal 或auto 使用前者只要有可能就将程序安装在外部存储器、后者则由系统自己决定

不适合安装到外部存储器的应用程序:

输入法引擎 IME 安装到外部存储器会被禁用

提供不中断服务的应用程序

设备管理器 DeviceAdminRecevier及其管理能力将被禁用

具有widget 、live wallpaper和live folder 的应用程序 将从主屏幕移除 系统重启前可能不再可用

uses-sdk 定义应用程序可用的 sdk版本号 使用minSDKVersion maxSDKVersion 和targetSDKVersion 来定义

targetSDKVersion 目标SDK版本 设为最新的平台版本 最佳实践

没有必要设置最高版本号 即设置maxSDKVersion

uses-configuration 使用uses-configuration 节点可以指定应用程序支持的每个输入机制的组合,一般对游戏特别有用

uses-feature 指定应用程序需要的每个硬件功能 为保证兼容性,对权限的需求暗含着相应功能的需求。通过添加一个required属性并把它设置为false,可以覆盖这些暗含的需求
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: