[发明专利]一种基于安卓平台的开机自启动APK的方法及终端有效
申请号: | 201410416451.3 | 申请日: | 2014-08-21 |
公开(公告)号: | CN104199691B | 公开(公告)日: | 2017-06-23 |
发明(设计)人: | 周军 | 申请(专利权)人: | 康佳集团股份有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 北京品源专利代理有限公司11332 | 代理人: | 胡彬,路凯 |
地址: | 518053 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 平台 开机 启动 apk 方法 终端 | ||
技术领域
本发明涉及智能电视领域,尤其涉及一种基于安卓平台的开机自启动APK的方法及终端。
背景技术
如图1所示,现有的基于Android系统平台的电视,系统在启动时会自动运行名为launcher的桌面启动器,从而进入一个静态的UI界面等待用户的操作,实现人机交互。在现有技术中,如果希望开机启动对应的APK(AndroidPackage的缩写,即Android安装包),则只能先经过启动launcher的过程,launcher启动后发出BOOT_COMPLETE广播后,才能启动对应的APK。即如果希望Android电视开机自启动对应的APK,那就需要等进入Launcher后,对应APK的onReceive()函数接收到BOOT_COMPLETE广播后,该APK才启动。这样给用户造成的影响包括:一定要闪现一下Launcher界面后才能打开对应APK,用户需要等待一定的时间;或者当进入Launcher时出错,等待的时间就会很久,甚至导致APK打开受阻,影响用户体验。
为了克服该缺陷,现有技术通过修改Android源码里面的Provision.APK源码,以定制开机向导实现在Launcher之前启动对应的APK。然而由于默认情况下Provision.apk只会在系统第一次开机(或者用户复位系统后)才会被加载,后续开机时系统就不会再加载Provision.apk,而是直接进入Launcher。因此,通过该方式用户无法在下次开机或者第N次开机的时候在Launcher之前启动对应的APK。
发明内容
本发明的目的在于提出一种基于安卓平台的开机自启动APK的方法及终端,能够实现Android系统开机的时候在Launcher之前启动对应的APK。
为达此目的,本发明采用以下技术方案:
一种基于安卓平台的开机自启动APK的方法,包括:
预先定制开机自启动的APK;
开机时,在等待系统主要服务加载完成后、Launcher加载前判断是否有定制的开机自启动APK需启动;
若是,启动所述开机自启动APK,并阻塞Launcher的加载。
其中,所述启动所述开机自启动APK,阻塞Launcher的加载之后,包括:
当所述开机自启动APK退出时,启动Launcher的加载。
其中,所述当所述开机自启动APK退出时,启动Launcher的加载,包括:
当所述定制的APK退出时,若系统为首次启动,加载Provision.APK之后,启动Launcher的加载。
其中,所述判断是否有定制的APK需启动之前,还包括:
修改Android源码中framework文件夹里面的SystemServer.java文件,在ActivityManagerService.self().systemReady(new Runnable(){})的方法里面,Watchdog.getInstance().start()启动之后,添加判断条件以判断是否有定制的APK需在Launcher加载前启动。
其中,所述添加判断条件以判断是否有定制的APK需在Launcher加载前启动,包括:
添加PackageManager以判断是否存在定制的APK;
若是,通过cursor读取该定制的APK的信息,判断该APK是否需在Launcher加载前启动。
其中,所述启动所述开机自启动APK之后,包括:
将该APK对应的设置参数以SQLite方式写入指定的数据库中,为该数据库创建一个对外共享数据的ContentProvider类接口。
其中,所述开机时,在等待系统主要服务加载完成后、Launcher加载前判断是否有定制的APK需启动,包括:
开机时,若为首次开机,在等待系统主要服务加载完成后、Launcher加载前,通过PackageManager判断是否存在定制的开机自启动APK,若是,通过cursor读取该APK的信息,判断该APK是否需在Launcher加载前启动;若非首次开机,在等待系统主要服务加载完成后、Launcher加载前,在开机加载SystemServer时,利用Cursor通过所述ContentProvider类接口来读取所述指定数据库中该APK对应的设置数值,判断该APK是否允许在Launcher加载前启动。
其中,所述启动所述开机自启动APK,阻塞Launcher的加载,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于康佳集团股份有限公司,未经康佳集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410416451.3/2.html,转载请声明来源钻瓜专利网。