亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)方法和系統(tǒng)的制作方法

文檔序號:6441528閱讀:186來源:國知局
專利名稱:基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及計算機軟件開發(fā)領(lǐng)域,尤其涉及一種基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)方法和系統(tǒng)。
背景技術(shù)
一般軟件開發(fā)的分層結(jié)構(gòu)包含硬件層、操作系統(tǒng)層和應用程序?qū)?。硬件層接入硬件,應用程序?qū)油ㄟ^操作系統(tǒng)層與各硬件進行通信,獲取各種參數(shù)信息。目前終端設備上的安卓(android)操作系統(tǒng)并未針對不同廠商的不同硬件平臺提供統(tǒng)一的接口,而不同硬件平臺主要是不同廠商的硬件可能使用不同的芯片,不同芯片可能使用不同的指令集,所以對于不同硬件平臺的接口集合,可能使用不同shell命令。例如,硬件平臺A的接口集合為al、bl、cl,硬件平臺B的接口集合為a2、b2、c2,硬件平臺C的接口集合為a3、b3、c3。若所使用的硬件平臺為A,則應用軟件服務提供商在開發(fā)軟件程序時,應用程序?qū)颖仨毮芘c接口al、bl、cl進行通信,以獲取或設置相應的參數(shù);若所使用的硬件平臺為B,則應用軟件服務提供商在開發(fā)軟件程序時,應用程序?qū)颖仨毮芘c接口 a2、b2、c2進行通信,以獲取或設置相應的參數(shù)。對于硬件平臺C,同樣如此。因此應用軟件服務提供商就需要針對不同硬件廠商的不同硬件平臺在應用程序上做調(diào)整,以通過不同的接口與不同硬件進行通信,而在應用程序上做調(diào)整是相當復雜而且重復的工作,這給軟件開發(fā)帶來很大不便。

發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題在于,針對現(xiàn)有技術(shù)的上述應用軟件服務提供商需要針對不同硬件在應用程序上做調(diào)整以通過不同的接口與不同硬件進行通信的缺陷,提供一種能屏蔽硬件平臺之間的差異從而可實現(xiàn)跨硬件平臺的調(diào)用的基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)方法。本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:構(gòu)造一種基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)方法,包括:
501.預先將所有硬件平臺的接口集合進行合并,且不同硬件平臺的相同接口僅保留一個,從而得到統(tǒng)一接口集合,根據(jù)當前所使用的硬件平臺,從所述統(tǒng)一接口集合中抽象出屬于當前所使用的硬件平臺的接口集合;
502.應用程序客戶端在當前所使用的硬件平臺的接口集合的調(diào)用下,向所設置的代理服務器發(fā)送shell命令,代理服務器執(zhí)行shell命令,以獲取或設置系統(tǒng)參數(shù),并向應用程序客戶端發(fā)送shell命令的執(zhí)行結(jié)果,從而實現(xiàn)當前所使用的硬件平臺的接口。在本發(fā)明所述的基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)方法中,所述代理服務器與應用程序客戶端通過socket進行通信。在本發(fā)明所述的基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)方法中,在步驟S02中,通過安卓NDK編譯生成獨立的代理服務器。在本發(fā)明所述的基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)方法中,在步驟S02中,獲取或設置系統(tǒng)參數(shù)包括:獲取IP、設置DNS、設置系統(tǒng)時間、獲取/設置當前語言。本發(fā)明還構(gòu)造一種基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)系統(tǒng),包括:
硬件平臺接口確定模塊,用于預先將所有硬件平臺的接口集合進行合并,且不同硬件平臺的相同接口僅保留一個,從而得到統(tǒng)一接口集合,根據(jù)當前所使用的硬件平臺,從所述統(tǒng)一接口集合中抽象出屬于當前所使用的硬件平臺的接口集合;
硬件平臺接口實現(xiàn)模塊,用于應用程序客戶端在當前所使用的硬件平臺的接口集合的調(diào)用下,向所設置的代理服務器發(fā)送shell命令,代理服務器執(zhí)行shell命令,以獲取或設置系統(tǒng)參數(shù),并向應用程序客戶端發(fā)送shell命令的執(zhí)行結(jié)果,從而實現(xiàn)當前所使用的硬件平臺的接口。在本發(fā)明所述的基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)系統(tǒng)中,所述代理服務器與應用程序客戶端通過socket進行通信。在本發(fā)明所述的基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)系統(tǒng)中,通過安卓NDK編譯生成獨立的代理服務器。在本發(fā)明所述的基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)系統(tǒng)中,獲取或設置系統(tǒng)參數(shù)包括:獲取IP、設置DNS、設置系統(tǒng)時間、獲取/設置當前語言。實施本發(fā)明的技術(shù)方案,在不同的硬件平臺開發(fā)應用程序時,能根據(jù)所使用的硬件平臺抽取出相應的接口集合,然后應用程序客戶端在當前所使用的硬件平臺的接口集合的調(diào)用下,向所設置的代理服務器發(fā)送shell命令,代理服務器執(zhí)行shell命令,以獲取或設置系統(tǒng)參數(shù),并向應用程序客戶端發(fā)送shell命令的執(zhí)行結(jié)果,所以,能夠不需要根據(jù)不同的硬件平臺對應用程序做相應的調(diào)整,因此,屏蔽了硬件平臺之間的差異,減少了應用軟件的重復開發(fā)。


下面將結(jié)合附圖及實施例對本發(fā)明作進一步說明,附圖中:
圖1是本發(fā)明基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)方法實施例一的流程 圖2是本發(fā)明基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)系統(tǒng)實施例一的邏輯圖。
具體實施例方式首先說明的是,由于安卓操作系統(tǒng)的內(nèi)核是Linux2.6,所以安卓系統(tǒng)上面的應用程序開發(fā)跟Linux有著千絲萬縷的關(guān)系,對于跨硬件平臺上的安卓系統(tǒng)來說,其中系統(tǒng)設置尤其重要,例如,設置以太網(wǎng)/無線網(wǎng)/PPPOE (撥號上網(wǎng))等的網(wǎng)絡參數(shù)、設置系統(tǒng)時間、設置UI等。圖1示出了本發(fā)明基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)方法實施例一的流程圖,該軟件開發(fā)方法包括以下步驟:
501.預先將所有硬件平臺的接口集合進行合并,且不同硬件平臺的相同接口僅保留一個,從而得到統(tǒng)一接口集合,根據(jù)當前所使用的硬件平臺,從所述統(tǒng)一接口集合中抽象出屬于當前所使用的硬件平臺的接口集合;
502.應用程序客戶端在當前所使用的硬件平臺的接口集合的調(diào)用下,向所設置的代理服務器發(fā)送shell命令,代理服務器執(zhí)行shell命令,以獲取或設置系統(tǒng)參數(shù),并向應用程序客戶端發(fā)送shell命令的執(zhí)行結(jié)果,從而實現(xiàn)當前所使用的硬件平臺的接口。其中,獲取或設置系統(tǒng)參數(shù)可包括:獲取IP、設置DNS、設置系統(tǒng)時間、獲取/設置當前語言。在該步驟中,應說明的是,應用程序?qū)荧@取或設置與硬件相關(guān)的參數(shù)一般情況下是通過應用程序?qū)訄?zhí)行shell命令來實現(xiàn),但應用程序?qū)釉趫?zhí)行shell命令時存在權(quán)限問題,因此設置了獨立的代理服務器(proxy),該代理服務器解決了在應用程序?qū)訄?zhí)行shell命令時出現(xiàn)的權(quán)限限制,為后續(xù)的獲取或設置與硬件相關(guān)的參數(shù)信息提供基礎服務。另一方面,所設置的代理服務器可執(zhí)行與統(tǒng)一接口集合中所有接口相關(guān)的shell命令。例如,共有三個硬件平臺A、B、C,其中,硬件平臺A的接口集合為al、bl、cl,硬件平臺B的接口集合為a2、b2、c2,硬件平臺C的接口集合為a3、b3、c3。若接口 bl與接口 b2相同,接口 cl與接口 c3相同,則統(tǒng)一接口集合即為&1、131、01、&2、02、&333。若當前所使用的硬件平臺為A,則所抽取的接口集合為al、bl、cl ;若當前所使用的硬件平臺為B,則所抽取的接口集合為a2、bl、c2 ;若當前所使用的硬件平臺為C,則所抽取的接口集合為a3、b3、cl。這樣可減少重復的開發(fā),節(jié)省工作量。而設置的代理服務器,一方面解決了應用程序?qū)?JAVA層)執(zhí)行shell命令時的權(quán)限問題,另一方面作為應用程序?qū)拥姆斩耍蓤?zhí)行與統(tǒng)一接口集合al、bl、Cl、a2、c2、a3、b3相關(guān)的shell命令。若當前所使用的硬件平臺為A,應用程序客戶端在該硬件平臺A的接口集合al、bl、Cl的調(diào)用下,向代理服務器發(fā)送相應的shell命令,代理服務器執(zhí)行與接口集合al、bl、cl相關(guān)的shell命令,并將結(jié)果返回至應用程序客戶端,該硬件平臺A的接口集合al、bl、cl可調(diào)用相關(guān)的shell命令的執(zhí)行結(jié)果;若當前所使用的硬件平臺為B,應用程序客戶端在該硬件平臺B的接口集合a2、bl、c2的調(diào)用下,向代理服務器發(fā)送相應的shell命令,代理服務器執(zhí)行與接口集合為a2、bl、c2相關(guān)的shell命令,并將結(jié)果返回至應用程序?qū)?該硬件平臺A的接口集合al、bl、cl可調(diào)用相關(guān)的shell命令的執(zhí)行結(jié)果;若當前所使用的硬件平臺為C,應用程序客戶端在該硬件平臺C的接口集合a3、b3、Cl的調(diào)用下,向代理服務器發(fā)送相應的shell命令,代理服務器執(zhí)行與接口集合為a3、b3、cl相關(guān)的shell命令,并將結(jié)果返回至應用程序?qū)?,該硬件平臺C的接口集合a3、b3、cl可調(diào)用相關(guān)的shell命令的執(zhí)行結(jié)果。實施該實施例的技術(shù)方案,預先將所有硬件平臺的接口集合進行合并,且不同硬件平臺的相同接口僅保留一個,從而得到統(tǒng)一接口集合。在不同的硬件平臺開發(fā)應用程序時,能根據(jù)所使用的硬件平臺抽取出相應的接口集合,然后應用程序客戶端在當前所使用的硬件平臺的接口集合的調(diào)用下,向所設置的代理服務器發(fā)送shell命令,代理服務器執(zhí)行shell命令,以獲取或設置系統(tǒng)參數(shù),并向應用程序客戶端發(fā)送shell命令的執(zhí)行結(jié)果,所以,能夠不需要根據(jù)不同的硬件平臺對應用程序做相應的調(diào)整,因此,屏蔽了硬件平臺之間的差異,減少了應用軟件的重復開發(fā)。在上述步驟S02中,優(yōu)選地,可優(yōu)選通過安卓NDK (Native Development Kit,本機開發(fā)工具包)編譯生成一個獨立的代理服務器(proxy)。在該步驟中,還應當說明的是,應用程序?qū)?即JAVA層)相對于代理服務器作為客戶端,負責與代理服務器之間進行通信,優(yōu)選socket通信,指示代理服務器實現(xiàn)shell命令的執(zhí)行;代理服務器優(yōu)選由NDK編譯的socket服務端進程,用于在安卓系統(tǒng)上執(zhí)行shell命令,并將結(jié)果返回給應用程序?qū)?。應用程序?qū)雍痛矸掌髦g通過socket進行通信,就是考慮到socket在跨平臺方面的優(yōu)勢,這樣對所有的安卓操作系統(tǒng)都能夠使用。當然,這只是其中一個實施例,在其它實施例中,應用程序?qū)雍痛矸掌髦g的通信方式還可采用其它的IPC (Inter-ProcessCommunication,進程間通信)的方式,例如,消息隊列+共享內(nèi)存。圖2是本發(fā)明基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)系統(tǒng)實施例一的邏輯圖,該基于安卓系統(tǒng)的軟件開發(fā)系統(tǒng)包括依次連接的硬件平臺接口確定模塊10、硬件平臺接口實現(xiàn)模塊20。其中,硬件平臺接口確定模塊10用于預先將所有硬件平臺的接口集合進行合并,且不同硬件平臺的相同接口僅保留一個,從而得到統(tǒng)一接口集合,根據(jù)當前所使用的硬件平臺,從所述統(tǒng)一接口集合中抽象出屬于當前所使用的硬件平臺的接口集合;硬件平臺接口實現(xiàn)模塊20用于應用程序客戶端在當前所使用的硬件平臺的接口集合的調(diào)用下,向所設置的代理服務器發(fā)送shell命令,代理服務器執(zhí)行shell命令,以獲取或設置系統(tǒng)參數(shù),并向應用程序客戶端發(fā)送shell命令的執(zhí)行結(jié)果,從而實現(xiàn)當前所使用的硬件平臺的接口,獲取或設置系統(tǒng)參數(shù)包括:獲取IP、設置DNS、設置系統(tǒng)時間、獲取/設置當前語言。在上述實施例中,優(yōu)選地,代理服務器與應用程序?qū)油ㄟ^socket進行通信。另外,代理服務器優(yōu)選通過安卓NDK在應用程序?qū)雍筒僮飨到y(tǒng)層之間生成獨立的代理服務器。以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的權(quán)利要求范圍之內(nèi)。
權(quán)利要求
1.一種基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)方法,其特征在于,包括: 501.預先將所有硬件平臺的接口集合進行合并,且不同硬件平臺的相同接口僅保留一個,從而得到統(tǒng)一接口集合,根據(jù)當前所使用的硬件平臺,從所述統(tǒng)一接口集合中抽象出屬于當前所使用的硬件平臺的接口集合; 502.應用程序客戶端在當前所使用的硬件平臺的接口集合的調(diào)用下,向所設置的代理服務器發(fā)送shell命令,代理服務器執(zhí)行shell命令,以獲取或設置系統(tǒng)參數(shù),并向應用程序客戶端發(fā)送shell命令的執(zhí)行結(jié)果,從而實現(xiàn)當前所使用的硬件平臺的接口。
2.根據(jù)權(quán)利要求1所述的基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)方法,其特征在于,所述代理服務器與應用程序客戶端通過socket進行通信。
3.根據(jù)權(quán)利要求1所述的基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)方法,其特征在于,在步驟S02中,通過安卓NDK編譯生成獨立的代理服務器。
4.根據(jù)權(quán)利要求1所述的基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)方法,其特征在于,在步驟S02中,獲取或設置系統(tǒng)參數(shù)包括:獲取IP、設置DNS、設置系統(tǒng)時間、獲取/設置當前語目。
5.一種基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)系統(tǒng),其特征在于,包括: 硬件平臺接口確定模塊,用于預先將所有硬件平臺的接口集合進行合并,且不同硬件平臺的相同接口僅保留一個,從而得到統(tǒng)一接口集合,根據(jù)當前所使用的硬件平臺,從所述統(tǒng)一接口集合中抽象出屬于當前所使用的硬件平臺的接口集合; 硬件平臺接口實現(xiàn)模塊,用于應用程序客戶端在當前所使用的硬件平臺的接口集合的調(diào)用下,向所設置的代理服務器發(fā)送shell命令,代理服務器執(zhí)行shell命令,以獲取或設置系統(tǒng)參數(shù),并向應用程序客戶端發(fā)送shell命令的執(zhí)行結(jié)果,從而實現(xiàn)當前所使用的硬件平臺的接口。
6.根據(jù)權(quán)利要求5所述的基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)系統(tǒng),其特征在于,所述代理服務器與應用程序客戶端通過socket進行通信。
7.根據(jù)權(quán)利要求5所述的基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)系統(tǒng),其特征在于,通過安卓NDK編譯生成獨立的代理服務器。
8.根據(jù)權(quán)利要求5所述的基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)系統(tǒng),其特征在于,獲取或設置系統(tǒng)參數(shù)包括:獲取IP、設置DNS、設置系統(tǒng)時間、獲取/設置當前語言。
全文摘要
本發(fā)明公開了一種基于安卓系統(tǒng)的跨硬件平臺的應用程序開發(fā)方法和系統(tǒng),該方法包括S01.預先將所有硬件平臺的接口集合進行合并,且不同硬件平臺的相同接口僅保留一個,從而得到統(tǒng)一接口集合,根據(jù)當前所使用的硬件平臺,從所述統(tǒng)一接口集合中抽象出屬于當前所使用的硬件平臺的接口集合;S02.應用程序客戶端在當前所使用的硬件平臺的接口集合的調(diào)用下,通過應用程序客戶端向所設置的代理服務器發(fā)送shell命令,代理服務器執(zhí)行shell命令,以獲取或設置系統(tǒng)參數(shù),并向應用程序客戶端發(fā)送shell命令的執(zhí)行結(jié)果,從而實現(xiàn)當前所使用的硬件平臺的接口。本發(fā)明的技術(shù)方案屏蔽了硬件平臺之間的差異,減少了應用軟件的重復開發(fā)。
文檔編號G06F9/44GK103164207SQ20111042289
公開日2013年6月19日 申請日期2011年12月16日 優(yōu)先權(quán)日2011年12月16日
發(fā)明者邱榮華, 陳宗高 申請人:深圳市快播科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1