电视盒子必然取代有线电视,但是普遍广告太多、预装的APP太多、存储又小、看电视直播也有一定限制, 都不尽如人意。很多第三方rom、桌面也没比自带的好多少!“一气之下(闲的没事)”自己搞吧。
下面一步步介绍,用简单的方法,开发极简实用的电视盒子桌面。
必备条件,需要是个程序员,水平不用太高。但不会编程也没必要往下看了。
- Android Studio
- ADB
- Debloater
- 双头USB线
双头USB线,这个名称专业,看图说话吧
自己做也很简单,网上买也很便宜,这里不多说,随便那搜搜就有。
首先, Android Studio 新建项目
选择"TV", "Android TV Activity", "Next(下一步)"
项目名称,随你爱好,"Minimum API level" 建议选择 API22: android 5.1(Lollipop),很多盒子的系统都是基于Android 5.1系统的,如果选高本版兼容性有问题。
然后“Finish(完成)”,就完成了。
等待各种下载之后就可以运行了。
运行
没有改动任何编码,没有其他意外的情况下,用模拟器运行就是这个样子的,Android TV的原生界面。
这样装进盒子,就可以用,只是什么也看不了,也没有任何功能。
通过最简单改动,来实现最基本功能。
- 实现第一个功能,看“直播”
打开 Java -> 包名(我的项目 demo.tv.myapplication )-> MovieList 文件。
程序员一看就应该明白了!
去网上找直播源吧 :)
2.实现第二个功能,也是重要的功能,打开APP。
这个需要编点程序,到也很简单,直接贴段核心代码
public ArrayListgetAll(Context context) {
ArrayListall = new ArrayList ();
PackageManager pm = context.getPackageManager();
/**
* 返回所有
*/
ArrayListapplicationInfos = (ArrayList ) pm.getInstalledApplications(0);
for (ApplicationInfo info : applicationInfos) {
if ((info.flags & info.FLAG_SYSTEM) != 0) {
AppInfo app = new AppInfo();
ApplicationInfo appInfo;
try {
appInfo = context.getPackageManager().getApplicationInfo(info.packageName, PackageManager.GET_META_DATA);
String activityName = info.name;
String appName = appInfo.loadLabel(context.getPackageManager()) + "";
app.setTitle(appName);
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
// 图标
app.setIcon(info.loadIcon(pm));
app.setPackagename(info.packageName);
all.add(app);
}
}
return all;
}
在 AndroidManifest.xml文件中添加几项。
用到的权限别忘了
源码此文不详细介绍,能看明白的,自然能明白。之后有专门文章详细讲解真正有用的Android TV桌面开发。
至此,极简桌面核心功能就开发完成了。
通过“双头USB线”,链接盒子与电脑,打开盒子的开发模式,打开ADB调试,不同盒子具体方法不太一样,去搜索一下自己盒子的方法就可以。
正确连接后,电脑会自动安装驱动,如果盒子没有被识别,需要在电脑下载个手机助手之类的软件,一般就能正确驱动,之后再把手机助手删除。
运行环境 选择菜单
驱动成功后,Android Studio 运行环境菜单中,会有你的盒子的选项,选中后运行程序,APK也就安装进盒子了,不用单独打包后安装。
此时,大多数盒子会运行此程序,但是并未成为默认桌面应用,程序退出后,还是会回到自带的桌面。那么就用到了另一个软件 Debloater。
打开 Debloater(具体方法很简单,网上很多) , 链接成功后,你会看到非常多的应用, 会更讨厌这些盒子的厂商, 因为商业原因, 安装了非常多没用的、重复的应用。Debloater 是用来“冻结”(不删除)应用的,你可以把没用的应用都冻结,不过有风险,一些核心应用被冻结,你就要去恢复出厂设置,甚至刷机了。跟此文有关的,最重要的是冻结系统自带的桌面应用,根据自己盒子,搜一下哪个是吧,通过包名其实也能看出来。
自带的桌面被冻结后,盒子可能会黑屏一下,之后,你开发的桌面就显示出来了,而且再按返回桌面按钮或重启,都会进入你开发的桌面了。
此文简略介绍至此,在非root情况下最简单的Android TV桌面开发完成。已经是可用的,不过我也是很久前这样搞的,有些细节不详细,此文仅供参考。之后文章我会详细介绍完整的Android TV桌面开发。
推荐阅读:上海资讯网
-
盘盘在电视剧中有特殊含义的东西,你知道几个?
大多90后都深深的受到台湾偶像剧的茶毒,那时女生聚在一起时讨论的必然是其中的剧情、偶像,小编也不可避免的成为他们中的一份子,但是今天我们要说的不是偶像剧,是偶像...
2019-12-31 -
191231 代言人王一博上线发来新年祝福
代言人王一博上线营业带着安慕希一起向粉丝们发送新年祝福,希望大家都能够继续坚持自己的爱好与梦想!跟着一博对准安慕希扫2020,告诉一博你的愿望,把自己的目标变清...
2019-12-31 -
诗词大会送分题难倒清华才子,董卿不知说什么好
真正的好酒,哪怕历经岁月洗礼,也会愈久弥香;真正的好诗,哪怕时隔千年,也照样能惊艳世人。古诗词,就像一坛美酒,在近几年又开始被越来越多的人所喜爱。在木桌上用闪光...
2019-12-31 -
琅琊榜:梅长苏的密道没有封?萧景琰最后的眼神
琅琊榜:梅长苏的密道没有封?萧景琰最后的眼神,其实诠释了一切书接上文,关于苏宅的密道,其实这条密道在琅琊榜里面并没有显得那么受重视,毕竟这个时候,梅长苏萧景琰都...
2019-12-31 -
各家电视台跨年名单,均不见赵丽颖!疑因怼剧方
2019跨年在即,各家电视台早已在一周前就开始官宣跨年晚会的嘉宾阵容了,到目前为止除了黑料缠身的浙江卫视之外,其余电视台都已经公布完所有的跨年明星。值得注意的是...
2019-12-31 -
偶像陈绮贞却变老公外遇对象! 正宫怒丢光CD
图文/镜周刊林太太跟老公认识31年,结婚19年,但觉得他有外遇的这一年,无非还是希望可以回到过去,看在孩子份上维系和乐家庭。「但…有时他好不容易失踪又出现,我问...
2019-12-31