【Android】完善Android学习(二:API 2.3.4)
备注:之前Android入门学习的书籍使用的是杨丰盛的《Android应用开发揭秘》,这本书是基于Android 2.2API的,目前Android已经到4.4了,更新了很多的API,也增加了很多的新组件,一直没有系统的学习过。现在开始这个“完善Android学习”系列,将2.2以后的新知识做一个概览。概览来自:http://developer.android.com/about/versions/android-2.3.4.html
API 2.3.4和2.3.3的API一样,没有变化。
不过引入了一项新的功能:Open Accessory。其作用是整合与谷歌设备相连的外围设备和设备上的Android应用。这项功能是基于USB数据线的。这个比较虚,实际可以看该文章:[图]Google发布Android Open Accessory API 可控制机械设备运转
关于Open Accessory的API是在Android 3.1中被集成进去的,但是运行Android 2.3.4的设备也可以通过一个可选的库——Open Accessory Library使用该功能。该库暴露了API接口以便于让应用发现、管理用USB数据和Android设备相连的外围设备并且与它们交互。另外这个库也额外暴露了一些Android 2.3.4没有开放的接口。
Open Accessory Library在设备上是可选的,设备制造商可以选择是否包含该库。在Android3.1上,该库则是默认被编译进去的。在Android2.3.4中提供的API接口是基于Android3.1提供的接口的,大部分情况下你可以在两个API Level上使用相同的技术和API,但是,在API 2.3.4上,在下面两点上和标准的USB API是不一样的:
1)获取UsbManager对象——使用库,我们使用如下代码:
UsbManager manager = UsbManager.getInstance(this);
使用的方法是getInstance()而不是getSystemService();
2)从Filter Intent得到一个UsbAccessory对象——当一个设备或者附件连接到设备的时候,应用会接受到一个Intent,UsbAccessory就包含在Intent中,如果你是使用的库,可以使用以下方式获得UsbAccessory对象:
UsbAccessory accessory = UsbManager.getAccessory(intent)
3)不支持Android设备作为USB主设备——Android2.3.4和Open Accessory Library不支持USB主设备模式(比如,使用接口UsbDevice),该模式在Android3.1中被支持。运行在API 2.3.4上的设备不能作为USB主设备,只能作为从设备,而连接上去的辅助设备则可以作为主设备(Android设备使用UsbAccessory)
为了使用Open Accessory Library,你需要:
1)最新的SDK开发工具版本;
2)最新的API版本,包括该库;
3)一个运行Android2.3.4或者Android3.1并且支持USB Accessory的Android设备,用于测试;
具体的开发细节查看开发文档USB Host and Accessory
另外,如果需要监听设备的连接,需要在manifest中添加以下内容:
<uses-feature
android:name="android.hardware.usb.accessory"
android:required="true">
【Android】完善Android学习(二:API 2.3.4)的更多相关文章
- android 开源项目学习<二>
roottools: RootTools gives Rooted developers easy access to common rooted tools... https://code.g ...
- Android Afinal框架学习(二) FinalActivity 一个IOC框架
框架地址:https://github.com/yangfuhai/afinal 相应的源代码: net.tsz.afinal.annotation.view.* FinalActivity Fina ...
- Hibernate框架学习(二)——api详解
一.Configuration对象 功能:配置加载类,用于加载主配置,orm元数据加载. //1.创建,调用空参构造(还没有读配置文件) Configuration conf=new Configur ...
- 【Android】完善Android学习(六:API 4.0)
备注:之前Android入门学习的书籍使用的是杨丰盛的<Android应用开发揭秘>,这本书是基于Android 2.2API的,目前Android已经到4.4了,更新了很多的API,也增 ...
- 【Android】完善Android学习(三:API 3.0)
备注:之前Android入门学习的书籍使用的是杨丰盛的<Android应用开发揭秘>,这本书是基于Android 2.2API的,目前Android已经到4.4了,更新了很多的API,也增 ...
- 【Android】完善Android学习(一:API 2.3.3)
备注:之前Android入门学习的书籍使用的是杨丰盛的<Android应用开发揭秘>,这本书是基于Android 2.2API的,目前Android已经到4.4了,更新了很多的API,也增 ...
- android移动开发学习笔记(二)神奇的Web API
本次分两个大方向去讲解Web Api,1.如何实现Web Api?2.如何Android端如何调用Web Api?对于Web Api是什么?有什么优缺点?为什么用WebApi而不用Webservice ...
- 【Android】完善Android学习(七:API 4.0.3)
备注:之前Android入门学习的书籍使用的是杨丰盛的<Android应用开发揭秘>,这本书是基于Android 2.2API的,目前Android已经到4.4了,更新了很多的API,也增 ...
- 【Android】完善Android学习(五:API 3.2)
备注:之前Android入门学习的书籍使用的是杨丰盛的<Android应用开发揭秘>,这本书是基于Android 2.2API的,目前Android已经到4.4了,更新了很多的API,也增 ...
随机推荐
- Docker学习记录3: 搭建 Private Registry
恩, Private Registry 特别好搭建, 只要依照官方文档, 很容易安装... https://docs.docker.com/registry/deploying/ 5000是个常用的端 ...
- 六: Image Viewer 离线镜像查看器
参考:http://hadoop.apache.org/docs/r2.6.3/hadoop-project-dist/hadoop-hdfs/HdfsImageViewer.html 离线镜像查 ...
- HDU 5816 Hearthstone 概率dp
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5816 Hearthstone Time Limit: 2000/1000 MS (Java/Othe ...
- XDA-University: Getting Started
XDA-University: Getting Started A while back, we introduced XDA-University to the world, an ongoing ...
- lintcode-171-乱序字符串
171-乱序字符串 给出一个字符串数组S,找到其中所有的乱序字符串(Anagram).如果一个字符串是乱序字符串,那么他存在一个字母集合相同,但顺序不同的字符串也在S中. 注意事项 所有的字符串都只包 ...
- lol佐伊美图
心血来潮,分享一波从各个网站上搜集到的佐伊美图,持续更新!(最近更新日期:2019/03/17) Section1 暮光星灵 2018/11/16 2019/02/15 2019/03/17 Se ...
- lol人物模型提取(七)
9月13号我就把上了贴图的模型文件发了过去,到9月18号他们那的颜色就上好了,一个叫"3d打印旗舰店"的人加了我微信并拍了几张照片发了给我,效果图如下: 第一眼看上去我还是 ...
- 基本数据类型(int,bool,str)
目录: 1.int 数字类型 2.bool 布尔值 3.str 字符串类型 一.整型(int) 在python3中所有的整数都是int类型.但在python2中如果数据量 ...
- Java接口成员变量
定义接口 使用interface来定义一个接口.接口定义同类的定义类似,也是分为接口的声明和接口体,当中接口体由常量定义和方法定义两部分组成.定义接口的基本格式例如以下: [修饰符] inter ...
- nginx 反向代理 ,入门
入门:http://www.cnblogs.com/jjzd/p/6691500.html 启动,重新加载:http://blog.csdn.net/zhongguozhichuang/article ...