一種機(jī)頂盒嵌入android系統(tǒng)構(gòu)架的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及dvb機(jī)頂盒技術(shù)領(lǐng)域,尤其涉及一種機(jī)頂盒嵌入android系統(tǒng)構(gòu)架的方法。
【背景技術(shù)】
[0002]隨著android系統(tǒng)日益普及互聯(lián)網(wǎng)機(jī)頂盒也快速發(fā)展,機(jī)頂盒運(yùn)行andoird系統(tǒng)技術(shù)成熟,單互聯(lián)網(wǎng)機(jī)頂盒主要用于播放網(wǎng)絡(luò)視頻,不能播放廣電有線視頻。如果能將andoird中嵌入有線數(shù)字dvb模塊,那么既滿足觀看網(wǎng)絡(luò)視頻又能滿足觀看有線數(shù)字電視
-H-* 口
Τ Ν ο
[0003]現(xiàn)有技術(shù)中公開了一種“具有雙系統(tǒng)的機(jī)頂盒及雙系統(tǒng)通信方法”,見(jiàn)公開號(hào)為:CN103533435A,公開日為:2014-01-22的中國(guó)專利,該發(fā)明方法包括:S1:Android系統(tǒng)接收并分析控制設(shè)備發(fā)送的控制請(qǐng)求,得到分析結(jié)果;S2:當(dāng)所述分析結(jié)果為請(qǐng)求Android系統(tǒng)功能時(shí),執(zhí)行步驟S3,當(dāng)所述分析結(jié)果為請(qǐng)求DVB系統(tǒng)功能時(shí),執(zhí)行步驟S4到S6 ;S3:所述Android系統(tǒng)根據(jù)所述分析結(jié)果完成Android系統(tǒng)功能;S4:所述Android系統(tǒng)向DVB系統(tǒng)發(fā)送所述分析結(jié)果;S5:所述DVB系統(tǒng)的主模塊解析所述分析結(jié)果,得到控制命令;S6:所述主模塊判斷所述控制命令是否符合預(yù)設(shè)規(guī)則,若是根據(jù)所述控制命令執(zhí)行相應(yīng)的子模塊并返回執(zhí)行結(jié)果,否則返回錯(cuò)誤信息。該發(fā)明雖然在Linux系統(tǒng)上設(shè)計(jì)同時(shí)運(yùn)行的DVB系統(tǒng)和Android系統(tǒng),能夠在機(jī)頂盒上同時(shí)實(shí)現(xiàn)DVB功能和Android系統(tǒng)功能,但是該發(fā)明的實(shí)現(xiàn)的技術(shù)方案跟本發(fā)明的并不相同。
【發(fā)明內(nèi)容】
[0004]本發(fā)明要解決的技術(shù)問(wèn)題,在于提供一種機(jī)頂盒嵌入android系統(tǒng)構(gòu)架的方法,將andoird系統(tǒng)嵌入有線數(shù)字DVB模塊實(shí)現(xiàn)了機(jī)頂盒既滿足觀看網(wǎng)絡(luò)視頻,又能滿足觀看有線數(shù)字電視節(jié)目。
[0005]本發(fā)明是這樣實(shí)現(xiàn)的:一種機(jī)頂盒嵌入android系統(tǒng)構(gòu)架的方法,
[0006]將android系統(tǒng)運(yùn)行到linux平臺(tái)的機(jī)頂盒硬件上,同時(shí)將DVB模塊經(jīng)過(guò)重新構(gòu)建裁剪嵌入到android系統(tǒng)中;
[0007]通過(guò)android系統(tǒng)控制linux平臺(tái)機(jī)頂盒硬件,來(lái)實(shí)現(xiàn)DVB模塊的各個(gè)功能。
[0008]進(jìn)一步的,所述將android系統(tǒng)運(yùn)行到linux平臺(tái)的機(jī)頂盒硬件上,同時(shí)將DVB模塊經(jīng)過(guò)重新構(gòu)建裁剪嵌入到android系統(tǒng)中;具體為:
[0009]在機(jī)頂盒中設(shè)定7個(gè)so庫(kù)、1個(gè)jar包以及1個(gè)可執(zhí)行Bin文件,所述7個(gè)so庫(kù)分別是dvb內(nèi)核初始化庫(kù)libdvbfyfmain.so、底層驅(qū)動(dòng)接口庫(kù)libdvbfyfprt.so、中間件內(nèi)核庫(kù)libdvbfyfmid.so、策略庫(kù)libdvbfyfcfg.so、模塊管理客戶端庫(kù)libtvmanager.so、模塊管理服務(wù)庫(kù) libtvmanagerservice.so、管理庫(kù) jni 層 libtvmanager_jn1.so、l 個(gè)jar包為中間件業(yè)java接口庫(kù)DVBMidWareAp1.jar ;1個(gè)可執(zhí)行Bin文件為:DVB服務(wù)進(jìn)程TvosMainService.bin,其中 DVBMidWareAp1.jar 包用于 android 機(jī)頂盒上 DVB 模塊功能應(yīng)用的開發(fā),所述 libdvbfyfmain.so、libdvbfyfprt.so、libdvbfyfmid.so、ibdvbfyfcfg.so四個(gè)庫(kù)由linux平臺(tái)上的中間件DVB模塊經(jīng)裁剪后嵌入到android上,負(fù)責(zé)實(shí)現(xiàn)DVB模塊所需要的所有驅(qū)動(dòng)功能;
[0010]所述libtvmanager.so、libtvmanagerservice.so 庫(kù)負(fù)責(zé)將底層 DVB 驅(qū)動(dòng)功能向上封裝,實(shí)現(xiàn)跨進(jìn)程調(diào)用;所述libtvmanagerservice.so庫(kù)為機(jī)頂盒binder中的服務(wù)端對(duì)接機(jī)頂盒驅(qū)動(dòng)層;1 ibtvmanager.so庫(kù)為機(jī)頂盒binder的客戶端對(duì)接機(jī)頂盒應(yīng)用層;所述libtvmanager_jn1.so庫(kù)負(fù)責(zé)將libtvmanager封裝到機(jī)頂盒java層,所述libtvmanager_jn1.so庫(kù)向下對(duì)接客戶端的libtvmanager.so庫(kù),向上對(duì)接機(jī)頂盒Java層的DVBMidWareAp1.jar包;而DVBMidWareAp1.jar包向機(jī)頂盒應(yīng)用層提供java接口用于DVB模塊的APP開發(fā);所述TvosMainService.bin可執(zhí)行文件為linux平臺(tái)上的一個(gè)可執(zhí)行bin文件,該文件執(zhí)行開機(jī)服務(wù)并且開機(jī)服務(wù)在異常中止后能夠自動(dòng)重啟服務(wù)而無(wú)需重新開機(jī);該文件服務(wù)負(fù)責(zé)管理linux層級(jí)的所有DVB模塊功能;上層應(yīng)用所有對(duì)DVB模塊功能的操作都最終會(huì)通過(guò)binder通信機(jī)制與該文件進(jìn)行交互,從而實(shí)現(xiàn)對(duì)DVB模塊功能的控制。
[0011]進(jìn)一步的,所述DVB模塊的功能劃分為如下幾個(gè)模塊:節(jié)目排序BAT服務(wù)管理模塊、條件接收CA服務(wù)管理模塊、頻道服務(wù)管理模塊、電子節(jié)目指南Epg服務(wù)管理模塊、播放服務(wù)管理模塊、預(yù)約服務(wù)管理模塊、搜索服務(wù)管理模塊、信號(hào)服務(wù)管理模塊、定時(shí)器服務(wù)管理模塊、以及服務(wù)管理總模塊;所述服務(wù)管理總模塊負(fù)責(zé)管理其他所有子模塊,所有應(yīng)用都需要通過(guò)服務(wù)管理總模塊獲取到各個(gè)子模塊才能對(duì)相應(yīng)的API接口進(jìn)行調(diào)用。
[0012]本發(fā)明具有如下優(yōu)點(diǎn):本發(fā)明將android系統(tǒng)運(yùn)行到linux平臺(tái)的機(jī)頂盒硬件上,同時(shí)將DVB模塊經(jīng)過(guò)重新構(gòu)建裁剪嵌入到android系統(tǒng)中;通過(guò)android系統(tǒng)控制linux平臺(tái)機(jī)頂盒硬件,來(lái)實(shí)現(xiàn)DVB模塊的各個(gè)功能;實(shí)現(xiàn)了機(jī)頂盒既滿足觀看網(wǎng)絡(luò)視頻,又能滿足觀看有線數(shù)字電視節(jié)目。
【附圖說(shuō)明】
[0013]圖1為本發(fā)明方法流程示意圖。
[0014]圖2為本發(fā)明方法中軟件包的結(jié)構(gòu)框架圖。
【具體實(shí)施方式】
[0015]請(qǐng)參閱圖1和圖2所示,本發(fā)明的一種機(jī)頂盒嵌入android系統(tǒng)構(gòu)架的方法,
[0016]將android系統(tǒng)運(yùn)行到linux平臺(tái)的機(jī)頂盒硬件上,同時(shí)將DVB模塊經(jīng)過(guò)重新構(gòu)建裁剪嵌入到android系統(tǒng)中;
[0017]通過(guò)android系統(tǒng)控制linux平臺(tái)機(jī)頂盒硬件,來(lái)實(shí)現(xiàn)DVB模塊的各個(gè)功能。
[0018]其中,所述將android系統(tǒng)運(yùn)行到linux平臺(tái)的機(jī)頂盒硬件上,同時(shí)將DVB模塊經(jīng)過(guò)重新構(gòu)建裁剪嵌入到android系統(tǒng)中;具體為:
[0019]在機(jī)頂盒中設(shè)定7個(gè)so庫(kù)、1個(gè)jar包以及1個(gè)可執(zhí)行Bin文件,所述7個(gè)so庫(kù)分別是dvb內(nèi)核初始化庫(kù)libdvbfyfmain.so、底層驅(qū)動(dòng)接口庫(kù)libdvbfyfprt.so、中間件內(nèi)核庫(kù)libdvbfyfmid.so、策略庫(kù)libdvbfyfcfg.so、模塊管理客戶端庫(kù)libtvmanager.so、模塊管理服務(wù)庫(kù) libtvmanagerservice.so、管理庫(kù) jni 層 libtvmanager_jn1.so、l 個(gè)jar包為中間件業(yè)java接口庫(kù)DVBMidWareAp1.jar ;1個(gè)可執(zhí)行Bin文件為:DVB服務(wù)進(jìn)程TvosMainService.bin,其中 DVBMidWare