08 2014 档案
摘要:Bound Services CS架构,其中C是调用组件,S是Bound Services; C通过bindService来绑定,这个方法立即返回,没有返回值,C需要实现ServiceConnection里面的onServiceConnected和onServiceDisconnected接口。 多个C绑定同一个S时,S只调用一次onBind返回IBinder,后续来绑定S的C,直接得到同一...
阅读全文
摘要:Services Services:可在后台长时间运行,无UI界面。 Started: Services通过其他组件调用startService启动,能在后台一直运行,即使启动它的组件已经销毁。一般这种服务执行特定的操作而且没有返回值,比如通过网络下载或上传一个文件,一旦操作结束,服务需要停止自己。 Bound: Service通过其他组件调用bindService绑定,提...
阅读全文
摘要:Tasks and Back Stack 一个app一般包含多个activities,每个activity执行不同任务。 Task是与用户交互执行一系列任务的activities集合,这些activities以打开顺序排列在一个栈列表中。 用户点击主页面的图标或者快捷方式,如果此应用从未被执行过,那么会创建一个新的task,主界面activity作为这个task的根activity,当根ac...
阅读全文
摘要:Loaders 在activity或者fragment更加容易的异步加载数据,Loaders有如下特性: 所有activity和fragment都可以使用 异步加载数据 监控数据并分发数据更新结果 配置发生变化时,会自动重连上一次的数据Cursor,不需要重新查询。 API汇总 Class/Interface Desc...
阅读全文
摘要:Activities 生命周期 本质上来说,activity A有三种状态: Resumed:A在最前面并且拥有用户焦点,这种状态一般也称为running Paused:activity B在最前面并且拥有用户焦点,但是A仍然可见,也就是说B要么是透明的,要么没有把后面的A完全覆盖。此状态的activity对象仍在内存,维持着所有状态和成员信息,并且仍附着window mana...
阅读全文
摘要:Intents 和 Intent Filters (Intent译为意图,让人比较费解,实际上解释为“消息”更加合理,干脆就不翻译了) Intent是能在app组件间传递的消息体,基本使用方式有如下三种: 启动activity startActivity:intent描述需要启动的activity和必须的数据 startActivityForRe...
阅读全文
摘要:系统权限 安全架构 app在独立进程沙盒中运行,互不影响。app静态定义所需要的权限,系统安装时提醒用户是否给app授权。 应用签名 所有应用必须用证书签名,证书由开发者管理,它们是开发者的唯一标识。 用户ID和文件访问 1、同样的shareUserId和签名,才能在同一个进程中共用一个用户ID 2、在创建新文件时,可以通过MODE_WORLD_READABLE 或 MODE_WOR...
阅读全文
摘要:设备兼容性 手机--平板--电视,Android需要广泛兼容。开发者需要灵活适配多种不同的屏幕。 何为兼容性? 设备兼容性:Android兼容,Android compatibility program && CTS app兼容性:app对于潜在的设备是兼容的 控制app兼容性 大部分情况下,你可以运行时禁用部分特性,或者为不同配置的设备提供适配资源。 如有必要,可以通过Google...
阅读全文
摘要:应用基础 app用Java语言编写,以apk为后缀。 apk运行在自身安全的沙盒中: Android是多用户Linux系统,每个app就是一个不同的用户 默认的,系统给每个app分配唯一的Linux用户ID,并设置访问权限 每个进程有自己的虚拟机VM 默认的,每个app运行在自己的Linux进程 android系统实行最小权限原则。 然后,有两种方式可以...
阅读全文
浙公网安备 33010602011771号