电视/盒子应用开发指南

欢迎加入小米电视应用开发,与我们一起创造客厅娱乐的未来,在着手开发或者适配前,请确保您已经认真阅读小米应用商店应用审核指南,因为触犯上述条款中的任何内容将会导致您的应用无法通过审核,或者被我们进行下线处理。

特别注意事项

不论小米电视还是小米盒子,都归论为电视设备,所以在androidmanifest.xml中要将android.hardware.type定义为television以便应用商店正确将其归类。如果没有正确定义应用的设备类型,将无法通过审核。

概述

目前小米电视应用商店运行在MiBox1,MiBox1S和MiTV上,也就是说小米电视应用商店上的应用程序是暂时面向以上三款设备发行的,当然随着小米电视平台新产品的推出,应用商店的应用将会面向更多的设备。下面是目前三款设备的配置参数:

项目

MiBox1

MiBox1S

MiTV

屏幕尺寸

/

/

47英寸(LG)/48英寸(三星)

分辨率

1280*720

1280*720

1920*1080

CPU

Cortex-A9

Cortex-A9

高通骁龙 600 MPQ8064

800MHz

双核1.5GHz

四核1.7GHz

GPU

Mali-400

Mali-400 双核

Adreno320

内存

1024MB

1024MB

2048MB

WiFi

2.4GHz

2.4GHz/5GHz

2.4GHz/5GHz

802.11a/b/g/n

802.11a/b/g/n

802.11a/b/g/n 2x2MIMO

蓝牙

/

BT4.0

BT4.0

3D成像

偏振式(需外接设备支持)

偏振式(需外接设备支持)

偏振式

系统版本

Android 4.1.2

Android 4.2.2

Android 4.1.2

系统存储

4GB

4GB

8GB

音频解码

支持Dolby Digital Plus、DTS

视频解码

H.264、VC-1、WMV、MPEG1/2/4最大至 1080P@30帧/秒;real7/8/9最大至720P@30帧/秒

视频格式

支持RM、FLV、MOV、AVI、MKV、TS、MP4

无线传屏

Miracast、WiDi

智能分享

支持 AirPlay™、DLNA 协议的图像、音频和视频推送

1. 选择目标设备

首先小米电视平台产品,不论小米电视还是小米盒子,都归论为电视设备,所以在androidmanifest.xml中要将android.hardware.type定义为television以便应用商店正确将其归类。没有定义为television的应用将不会进入电视应用审核。以下说明来自google:

Television

android.hardware.type.television

The application is designed for a television user experience.

This feature defines “television” to be a typical living room television experience: displayed on a big screen, where the user is sitting far away and the dominant form of input is something like a d-pad, and generally not through touch or a mouse/pointer-device.

您可以自行选择您的应用所面向发行的小米电视平台设备种类,当然面向的设备种类越多,就意味着更高的潜在下载量。当您面向多种设备发行时,一个应用要同时支持您选择的所有目标设备,一定要确保您的应用可以在目标设备上正常显示,且所有目标设备上的显示保持一致,关于如何开发适配多种显示尺寸的应用请参考Supporting Multiple Screens。发布多个相同内容的应用分别支持不同目标设备的行为是不允许的,将导致您的应用无法通过审核。

以下是小米电视设备的显示参数,小米在2013年12月已经推出符合谷歌显示标准的MiTV系统升级包(2014年3月末会推出盒子版本),已经售出的设备将逐步升级到谷歌标准(新发售的设备已经使用谷歌标准),但是系统升级是用户自愿行为,所以应用对于目标设备的新旧显示标准都需要支持。两种显示的不同之处已用红字标出。开发者可以根据以下参数来适配相应的目标设备。

小米电视设备旧规格

设备

MiBox1, MiBox1S

MiTV

Screen size

xlarge(1280dpx720dp)

xlarge(1280dpx720dp)

sw720dp

sw720dp

Pix:1280×720

Pix:1920×1080

Screen pixel density(dpi)

mdpi

hdpi

Orientation

land

land

Aspect ratio

long

long

谷歌对安卓电视设备的显示标准

设备

MiBox1, MiBox1S

MiTV

Screen size

large(960dpx540dp)

large(960dpx540dp)

sw540dp

sw540dp

Pix:1280×720

Pix:1920×1080

Screen pixel density(dpi)

tvdpi

xhdpi

Orientation

land

land

Aspect ratio

long

long

如果您的应用是从安卓手机应用移植而来,我们强烈建议您参照Optimize your layouts for larger screens重新优化应用的UI已使其充分利用大尺寸显示的空间,给用户带来适合大屏设备的观看体验。如果您的应用已经适配了安卓平板电脑且符合谷歌的设计指导,它将更容易适配到小米电视平台。

2. 适配小米遥控器

小米电视平台标配的人机交互方式为小米遥控器,所有应用必须适配小米遥控器,也就是说使用小米遥控器可以浏览应用的所有内容,实现应用的所有功能。小米遥控器为小米电视平台设备通用,也就是说一个遥控器可以支持所有小米电视平台设备。除了小米遥控器之外,有线或无线的游戏手柄,鼠标,键盘等其他外设也是支持的,在适配小米遥控器的基础上,开发者可以自愿添加对于其他附件的支持,在此不予详述。下面是小米遥控器的键值。

按键

键值

说明

Power

KeyEvent.KEYCODE_POWER

在任意画面按下后设备休眠,当前应用在前台暂停运行;设备唤醒后(依然通过power键),应用恢复运行,或者保持暂停状态由用户选择是否恢复(对于视频播放也可以退出播放回到播放前画面)。

Home

KeyEvent.KEYCODE_HOME

MiTV:功能与安卓标准Home键一致。在任意画面按下后切换到系统主页,当前应用切换到后台暂停运行,再次点击应用图标恢复运行。

MiBox1和MiBox1S:在任意画面按下后切换到系统主页,同时系统将当前应用自动关闭。

Back

KeyEvent.KEYCODE_BACK

功能与安卓标准Back键一致。在应用主页按下后不得直接退出应用,应该给用户适当提示,由用户确认是否退出。

Menu

KeyEvent.KEYCODE_MENU

功能与安卓标准Menu键一致。

Volume Down

KeyEvent.KEYCODE_VOLUME_DOWN

MiBox1的标配遥控器无此按键,在MiBox1上有声应用需要自行实现应用音量调节,无法实现的有声应用不能在MiBox1上发行。

Volume Up

KeyEvent.KEYCODE_VOLUME_UP

MiBox1的标配遥控器无此按键,在MiBox1上有声应用需要自行实现应用音量调节,无法实现的有声应用不能在MiBox1上发行。

Left

KeyEvent.KEYCODE_DPAD_LEFT

Right

KeyEvent.KEYCODE_DPAD_RIGHT

Up

KeyEvent.KEYCODE_DPAD_UP

Down

KeyEvent.KEYCODE_DPAD_DOWN

OK/Center

KeyEvent.KEYCODE_DPAD_CENTER/KeyEvent.KEYCODE_ENTER

两个键值都要支持,以满足未来系统需求。

补充材料:
Android HOME键那些事:http://blog.csdn.net/imyfriend/article/details/8293399

3. 广告与支付

可以使用页内广告,广告内容必须与应用本身相关,禁止发布与应用无关的第三方广告。不要使用非页内广告。

由于小米支付系统尚未实施,请不要使用任何第三方支付平台以及虚拟货币,小米支付系统上线后,会统一开始应用接入工作。目前支付方式建议:1. 实体商品货到付款。2. 扫描二维码在移动设备端完成支付。3. 银行卡或信用卡直接支付。

4. 应用安装与调试

  1. 通过外部存储设备安装:将存放有目标apk的U盘或移动硬盘与小米电视或小米盒子连接(小米盒子需要OTG线),使用最新系统自带的高清播放器即可访问存储设备,安装apk。
  2. 通过adb命令安装调试(小米盒子以及电视默认支持通过USB连接进行adb调试,网络adb没有开启):

小米电视(黑色U口为调试用):

  1. 主页->小米电视设置->账户与安全
  2. 允许安装未知来源应用,允许ADB调试。
  3. 主页->应用商店->应用管理->系统应用->设置->开发者选项
  4. 打开开发者选项(右上角开关)。
  5. 勾选“USB调试”
  6. 将电脑与小米电视通过USB线连接,即可通过adb命令安装应用以及调试。

小米盒子:

  1. 设置->系统设置->账户与安全
  2. 允许安装未知来源应用。
  3. 将电脑与小米盒子通过USB线连接,即可通过adb命令安装应用以及调试。

 

5. 版本号规范

小米电视应用商店对于在其中发布的应用的版本号有统一的规范,版本号应该为三位,每位只能有一个数字,且不能包含任何字母,例如:1.0.1或3.0.2。以下版本号都为错误示范:1.0.0.1,v2.0.2,1.0.12。除此之外您还要确保在所涉及的各方面应用所显示的版本号都是一致的,例如应用说明,应用内相关信息以及androidmanifest.xml内。

6. 应用图标规范

  • 如何设计符合小米视觉规范的应用图标:

小米盒子应用图标视觉规范请参考:小米盒子应用商店_iconvisual guide_v1.1

小米电视应用图标视觉规范请参考:小米TV应用商店_iconvisual guide_v1.1

  • 如何保证应用图标在目标设备上正确显示:

在apk的res文件夹下应该有drawable-mdpi,drawable-tvdpi,drawable-hdpi,drawable-xhdpi文件夹,将符合小米盒子视觉规范的应用图标放入drawable-mdpi和drawable-tvdpi;将符合小米电视视觉规范的应用图标放入drawable-hdpi和drawable-xhdpi。当然您可以根据面向的目标设备进行取舍,例如只在小米盒子上发行的话可以没有hdpi和xhdpi文件夹。

注:对于应用图标的显示,小米盒子会先从应用商店下载对应应用的图标,如果商店没有对应图标则显示apk内封装的图标,所以在你的应用上线之前,你在小米盒子上看到的应用图标不会以全尺寸显示,即使它是符合规范的。这是正常的现象,只需要确保你的图标符合小米规范,那么上线后自然会在盒子上正常显示;对于小米电视来说,应用图标是直接从apk中读取的,上线前后不会有区别。

 

7. 应用说明及宣传材料

应用说明可以使用户在下载安装前了解您的应用,有助于您的应用获得更多的用户,但请如实描述您的应用,避免过分的夸大和过度宣传。请按照以下模板提供您的应用信息:

小米TV应用商店-应用信息规范

小米盒子应用商店-应用信息规范

注:针对小米TV发布的应用别忘记按照以上要求同时提供应用截图。

推荐位是小米电视应用商店特有的推广方式,可以使您的应用更直接的展现给用户以提高下载量,为了使您的应用可以被我们推荐,请您按照以下要求提供推荐位素材。

小米TV应用商店-推荐位图片素材规范

8. Recovery模式

双系统

有时出于开发原因可能需要手动升级一些小米盒子和小米电视的系统版本,这时需要用到Recovery模式http://bbs.xiaomi.cn/thread-8323439-1-1.html:

手动升级版本步骤:

  1. 将版本放入U盘根目录下。
  2. 将U盘与设备连接。
  3. 进入recovery模式,升级自动开始。

除此以外recovery模式还提供恢复出厂设置的功能。

9. MiBox1S内存

MiBox1S上系统内存与显存是共享的,所以要注意显存的占用,过多的占用显存会导致系统内存不足,干扰系统正常工作。

小米应用开发者文档(标注需要注意的地方)相关推荐

  1. 各大手机厂商开发者文档网址

    各大手机厂商开发者文档网址 小米官方文档 华为官方文档 三星官方文档 OPPO官方文档 VIVO官方文档 魅族官方文档 小米官方文档 https://dev.mi.com/console/doc/ 华 ...

  2. 苹果开发者_苹果,你的开发者文档写得烂透了

    作者丨小智 策划丨赵钰莹 苹果的 App Store 审核之严格,大家都有所耳闻.但在苹果公司的平台上写代码,似乎却不是那么一件令人身心愉快的事儿.本文主人公 Chris Krycho 是一位前端开发 ...

  3. apple开发者文档关于KVC和KVO文档的一些渣翻——这里是原地址

    apple开发者文档关于KVC和KVO文档的一些渣翻--这里是原地址 Key-Value Coding Programming Guide KVC编程介绍 介绍 本文档用来描述NSKeyValueCo ...

  4. 推特开发者账号【推特开发者文档系列3】——推特标准接口API的请求频率限制说明

    本系列是对推特开发者文档进行的翻译,以便帮助开发人员使用API接口,难免有些地方存在不足,还请谅解. 关于推特开发者账号 elevated academic 请看此贴: 推特开发者账号申请权限 或 搜 ...

  5. Twitter开发者账号【推特开发者文档系列10】——API参考索引

    本系列是对推特开发者文档进行的翻译,以便帮助开发人员使用API接口,难免有些地方存在不足,还请谅解. 关于推特开发者账号 elevated academic 请看此贴: 推特开发者账号申请权限 或 搜 ...

  6. Twitter开发者账号【Twitter开发者文档系列3】——推特标准接口API的请求频率限制说明

    文章转自:https://www.jianshu.com/p/7071fc888dc9 本系列是对推特开发者文档进行的翻译,以便帮助开发人员使用API接口,难免有些地方存在不足,还请谅解. 关于如何获 ...

  7. 【LayIM】开发者文档

    webim[LayIM]开发者文档 在WebIM似乎已被打入冷宫的今天,LayIM正试图重新为网页带来一些社交想象.作为一款Web即时通讯前端解决方案(服务端需自写),LayIM提供了全方位接口支撑, ...

  8. 微信|公众平台开发者文档

    微信|公众平台开发者文档 http://mp.weixin.qq.com/wiki/3/ecfed6e1a0a03b5f35e5efac98e864b7.html 爱父母项目(提示用户名,密码在项目文 ...

  9. Twitter开发者账号申请被拒【推特开发者文档系列6】——Twitter IDs(snowflake)

    文章转自:https://www.jianshu.com/p/c199f8767d19 本系列是对推特开发者文档进行的翻译,以便帮助开发人员使用API接口,难免有些地方存在不足,还请谅解. 关于如何获 ...

最新文章

  1. java maven centos7 yum安装
  2. laravel excel迁移到lumen
  3. dojo还有人用吗_我的Dojo中有一个Mojo(如何编写Maven插件)
  4. 壁纸背景墙/头像/动态壁纸小程序源码-支持用户投稿-带部分采集功能+搭建教程
  5. Snabbdom(虚拟dom-5-patch函数)
  6. MySQL 之 约束 (主键、唯一、非空、自增、外键)
  7. 一直困扰我的String判空这回终于有解决办法了
  8. tomcat6.0启动报错
  9. 如何在Mac OS X上安装 Ruby运行环境
  10. 单片机延时函数移植问题
  11. Python漫画下载器
  12. 【渝粤教育】广东开放大学 中国文化与中国文学 形成性考核 (46)
  13. 油相CdSe/ZnS量子点溶液 硒化镉/硫化锌量子点介绍及阐述
  14. django自动生成问卷表的软件的设计与实现毕业设计源码291138
  15. restore,recover的区别
  16. 新的时间处理工具joda
  17. 应用性能管理APM巅峰对决:skywalking P.K. Pinpoint
  18. 高等数学阶段复习, 函数极限, 连续, 导数,微分
  19. java memcached incr_Memcached incr 与 decr 命令
  20. DirectShow2

热门文章

  1. java自动生成word,java动态生成word解决方案
  2. 系统架构师论文-论软件设计模式的应用
  3. PMP章节练习—项目经理的角色
  4. 函数——哥德巴赫猜想
  5. 三值的排序 Sorting a Three-Valued Sequence(洛谷 P1459)
  6. Android输入汉字得到拼音
  7. Mysql笔试+面试题积累(实时更新)
  8. 【图像处理 -1图像恢复】非线性过滤器修复图像
  9. 2016-12-28 迪米特法则+依赖倒转原则+里氏替换原则
  10. unity中的2D虚拟摇杆和3D虚拟摇杆