- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
【Android开发Wiki】进阶篇TV应用设计(三)—在电视上处理不支持的功能
eoe 移动开发者社区 /
原文链接:/training/tv/unsupported-features-tv.html
电视远比其他安卓设备复杂:
电视不是手机.
和手机的使用习惯有所区别,用户看电视,很少(像手机那样)和电视交互(例如触摸).
即使交互也会远距离交互(例如遥控器).
因为电视和其他安卓设备用途不同,通常有很多硬件功能上的差异,种种原因,安卓电视就
不支持如下功能:
通过讲解如下两点,你会学到怎么在没有某些功能的情况下对安卓电视编程:
针对安卓电视不支持的功能的解决办法
运行时检测功能的可用性,从而让系统只执行那些和设备支持的功能相对应的代码。
针对安卓电视不支持的功能的解决办发法
安卓电视不提供触摸屏接口,大部分电视都没有触摸屏,像(电视机和人相距)10尺的距离,
让任何电视使用触摸的方式也不现实,所以,我们一般使用遥控器和电视交互,考虑到这点,
就得确保应用中的所有控制都可以用方向键完成。关于优化电视布局和导航布局的话题的相
关细节可以参考前两节课。安卓系统是默认设备带有触摸屏的,所以如果系统在电视上运行,
就得在配置文件mainfest配置一下,不需要触摸屏:
uses-feature android:namefalse
1/
即使电视没有摄像头,我们仍然可以在安卓电视里一个图像处理程序,不过此程序只供用户
查看和编辑图片,拍照功能禁用就可以了。下一段将讲解怎么启用或禁用一些基于运行时设
备类型检测的特殊功能。
因为电视固定的、室内设备,所以没有内置GPS。如果你的程序需要用到地理位置信息,要
么让用户(联网)查询,要么使用static location provider 得到这些信息,这种方式是
eoe 移动开发者社区 /
通过查询邮编完成的。
LocationManager locationManager = (LocationManager) this.getSystemService(Context.LOCAT
ION_SERVICE);
1
Location location = locationManager.getLastKnownLocation(static);
2
Geocoder geocoder = new Geocoder(this);
3
Address address = null;
4
5
try {
6
address = geocoder.getFromLocation(location.getLatitude(), location.getLongitude(),
7
1).get(0);
8
Log.d(Zip code, address.getPostalCode());
9
10
} catch (IOException e) {
11
Log.e(TAG, Geocoder error, e);
12
}
安卓电视果断也不支持麦克风,但是我们可以在安卓电视上运行一个语音控制的小程序,然
后再在手机上运行一个接受语音输入的小程序,这样安卓电视就可以远程控制手机了。
运行时检测功能的可用性
如果想查询哪些功能是否可用,调用方法hasSystemFeature(String) . 该方法就一个参数,
String类型,表示你想查询的功能类型,例如,传参 FEATURE_TOUCHSCREEN,返回(设备)
是否支持触屏功能。
以下代码片段演示了如何在程序运行时检测设备类型,这种检测基于设备支持的功能(根据
支持的功能给设备分个类):
// Check if android.hardware.telephony feature is available.
1if (getPackageManager().hasSystemFeature(android.hardware.telephony)) {
2 Log.d(Mobile Test, Running on phone);
3// Check if android.hardware.touchscreen feature is available.
4} else if (getPackageManager().hasSy
您可能关注的文档
最近下载
- 2025年舞蹈教师资格证考试模拟试卷:舞蹈教学法与课程设计案例分析.docx VIP
- 学校食品安全事故应急演练实施方案(含演练脚本).docx
- 湖南省师德师风教育读本.pptx VIP
- 2025秋教科版(2024)科学三年级上册第一单元天气《2.docx VIP
- ISO∕IEC 20000-1:2018《信息技术服务管理第一部分:服务管理体系要求》之17-“8.1运行的策划与控制”理解与应用指导材料.docx VIP
- 验收标准内装 .pdf VIP
- 像医生一样思考(完全版).pptx VIP
- 北大附中学生家长写给高二同学的一封信导论.doc VIP
- 2025年白酒酿造工试题题库.pdf VIP
- 关于进一步加强公司在职员工学历提升的通知(专业完整模板).docx VIP
文档评论(0)