本發(fā)明涉及電臺廣播技術領域,尤其涉及一種電臺廣播方法和設備。
背景技術:
隨著人們生活水平的不斷提高,汽車成為普通民眾生活中的必需品。經(jīng)常開車的用戶有這么一個習慣:邊開車邊聽音樂,或者邊開車邊聽電臺廣播。
在現(xiàn)實生活中,汽車通過配置的車載多媒體設備實現(xiàn)聽電臺廣播或者音樂的目的。但是,在實際應用中,車載多媒體設備通過電臺頻率搜索電臺,并將搜索到電臺節(jié)目進行廣播,然而,由于在不同區(qū)域中同一個電臺的電臺頻率不同,在駕車行駛的過程中,經(jīng)常發(fā)生正在廣播的電臺節(jié)目突然沒有了,轉換成了其他電臺節(jié)目,導致用戶體驗比較差。
技術實現(xiàn)要素:
有鑒于此,本發(fā)明實施例提供了一種電臺廣播方法和設備,用于解決現(xiàn)有技術中因位置發(fā)生變化導致的電臺節(jié)目播放不連續(xù)的問題。
一種電臺廣播方法,包括:
車載多媒體設備在確定車輛的當前位置區(qū)域發(fā)生變化時,根據(jù)位置區(qū)域與電臺節(jié)目對應的電臺信號的信號頻率之間的預設關系,確定當前正在廣播的所述電臺節(jié)目在變化后的位置區(qū)域內對應的電臺信號的信號頻率;
車載多媒體設備根據(jù)確定的所述信號頻率進行搜索,切換廣播搜索到的所述電臺信號,以實現(xiàn)廣播選擇的所述電臺節(jié)目的連續(xù)性。
可選地,車載多媒體設備在確定當前車輛的位置區(qū)域發(fā)生變化之前,所述方法還包括:
車載多媒體設備確定車輛當前所在位置,并搜索在所述位置上覆蓋的至少一個電臺信號,其中,不同的所述電臺信號對應的信號頻率不同;
所述車載多媒體設備根據(jù)電臺信號與電臺節(jié)目單之間的映射關系,確定搜索到的每一個所述電臺信號對應的電臺節(jié)目單,并將確定的所述電臺節(jié)目單顯示在所述車載多媒體設備的顯示器中;
所述車載多媒體設備接收用戶選擇的電臺節(jié)目,并廣播選擇的所述電臺節(jié)目。
可選地,車載多媒體設備確定車輛當前所在位置,包括:
車載多媒體設備與車載導航設備建立通信連接,并接收所述車載導航設備通過lbs定位方式得到車輛當前所在位置。
可選地,車載多媒體設備確定車輛當前所在位置,包括:
車載多媒體設備與移動終端設備建立通信連接,并接收所述移動終端設備通過gps/基站定位方式得到車輛當前所在位置。
可選地,所述車載多媒體設備廣播選擇的所述電臺節(jié)目,包括:
所述車載多媒體設備接收移動終端設備發(fā)送的選擇的所述電臺節(jié)目對應的電臺信號;
所述車載多媒體設備在確定接收到的所述電臺信號的強度大于搜索到選擇的所述電臺節(jié)目對應的電臺信號的強度時,使用接收到的所述電臺信號,廣播選擇的所述電臺節(jié)目。
可選地,所述方法還包括:
所述車載多媒體設備在確定接收到的所述電臺信號的強度小于搜索到選擇的所述電臺節(jié)目對應的電臺信號的強度時,切換使用搜索到的所述電臺信號,繼續(xù)廣播選擇的所述電臺節(jié)目。
可選地,通過以下方式建立電臺信號與電臺節(jié)目單之間的映射關系:
確定每一個電臺在不同時間的電臺節(jié)目單以及每一個電臺在不同位置的電臺信號;
建立位置信息、電臺信號與所述電臺信號在不同時間的電臺節(jié)目單之間的映射關系。
一種電臺廣播設備,包括:
確定單元,用于在確定車輛的當前位置區(qū)域發(fā)生變化時,根據(jù)位置區(qū)域與電臺節(jié)目對應的電臺信號的信號頻率之間的預設關系,確定當前正在廣播的所述電臺節(jié)目在變化后的位置區(qū)域內對應的電臺信號的信號頻率;
切換單元,用于根據(jù)確定的所述信號頻率進行搜索,切換廣播搜索到的所述電臺信號,以實現(xiàn)廣播選擇的所述電臺節(jié)目的連續(xù)性。
可選地,所述電臺廣播設備還包括:位置確定單元、搜索單元、顯示單元和廣播單元,其中:
所述位置確定單元,用于在確定當前車輛的位置區(qū)域發(fā)生變化之前,確定車輛當前所在位置;
所述搜索單元,用于搜索在所述位置上覆蓋的至少一個電臺信號,其中,不同的所述電臺信號對應的信號頻率不同;
所述顯示單元,用于根據(jù)電臺信號與電臺節(jié)目單之間的映射關系,確定搜索到的每一個所述電臺信號對應的電臺節(jié)目單,并將確定的所述電臺節(jié)目單顯示在所述車載多媒體設備的顯示器中;
所述廣播單元,用于接收用戶選擇的電臺節(jié)目,并廣播選擇的所述電臺節(jié)目。
可選地,所述位置確定單元確定車輛當前所在位置,包括:
與車載導航設備建立通信連接,并接收所述車載導航設備通過lbs定位方式得到車輛當前所在位置。
可選地,所述位置確定單元確定車輛當前所在位置,包括:
與移動終端設備建立通信連接,并接收所述移動終端設備通過gps/基站定位方式得到車輛當前所在位置。
可選地,所述廣播單元廣播選擇的所述電臺節(jié)目,包括:
接收移動終端設備發(fā)送的選擇的所述電臺節(jié)目對應的電臺信號;
在確定接收到的所述電臺信號的強度大于搜索到選擇的所述電臺節(jié)目對應的電臺信號的強度時,使用接收到的所述電臺信號,廣播選擇的所述電臺節(jié)目。
可選地,所述切換單元,還用于在確定接收到的所述電臺信號的強度小于搜索到選擇的所述電臺節(jié)目對應的電臺信號的強度時,切換使用搜索到的所述電臺信號,繼續(xù)廣播選擇的所述電臺節(jié)目。
可選地,所述顯示單元通過以下方式建立電臺信號與電臺節(jié)目單之間的映射關系:
確定每一個電臺在不同時間的電臺節(jié)目單以及每一個電臺在不同位置的電臺信號;
建立位置信息、電臺信號與所述電臺信號在不同時間的電臺節(jié)目單之間的映射關系。
本發(fā)明有益效果如下:
本發(fā)明實施例車載多媒體設備在確定車輛的當前位置區(qū)域發(fā)生變化時,根據(jù)位置區(qū)域與電臺節(jié)目對應的電臺信號的信號頻率之間的預設關系,確定當前正在廣播的所述電臺節(jié)目在變化后的位置區(qū)域內對應的電臺信號的信號頻率;根據(jù)確定的所述信號頻率進行搜索,切換廣播搜索到的所述電臺信號,以實現(xiàn)廣播選擇的所述電臺節(jié)目的連續(xù)性。這樣,車載多媒體設備在發(fā)現(xiàn)車輛的當前位置區(qū)域發(fā)生變化時,可以根據(jù)位置區(qū)域與電臺節(jié)目對應的電臺信號的信號頻率之間的預設關系來確定當前正在廣播的所述電臺節(jié)目在變化后的位置區(qū)域內對應的電臺信號的信號頻率,進而根據(jù)搜索到的新的電臺信號的信號頻率,切換廣播搜索到的新的電臺信號,這樣就能保證廣播電臺節(jié)目的連續(xù)性,提升用戶體驗。
附圖說明
為了更清楚地說明本發(fā)明實施例中的技術方案,下面將對實施例描述中所 需要使用的附圖作簡要介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域的普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實施例提供一種電臺廣播方法的流程示意圖;
圖2為本發(fā)明實施例提供一種電臺廣播方法的流程示意圖;
圖3為本發(fā)明實施例提供的車載多媒體設備顯示節(jié)目單的示意圖;
圖4為本發(fā)明實施例提供的一種電臺廣播設備的結構示意圖;
圖5為本發(fā)明實施例提供的一種電臺廣播設備的結構示意圖。
具體實施方式
為了實現(xiàn)本發(fā)明的目的,本發(fā)明實施例提供了一種電臺廣播方法和設備,車載多媒體設備在確定車輛的當前位置區(qū)域發(fā)生變化時,根據(jù)位置區(qū)域與電臺節(jié)目對應的電臺信號的信號頻率之間的預設關系,確定當前正在廣播的所述電臺節(jié)目在變化后的位置區(qū)域內對應的電臺信號的信號頻率;根據(jù)確定的所述信號頻率進行搜索,切換廣播搜索到的所述電臺信號,以實現(xiàn)廣播選擇的所述電臺節(jié)目的連續(xù)性。這樣,車載多媒體設備在發(fā)現(xiàn)車輛的當前位置區(qū)域發(fā)生變化時,可以根據(jù)位置區(qū)域與電臺節(jié)目對應的電臺信號的信號頻率之間的預設關系來確定當前正在廣播的所述電臺節(jié)目在變化后的位置區(qū)域內對應的電臺信號的信號頻率,進而根據(jù)搜索到的新的電臺信號的信號頻率,切換廣播搜索到的新的電臺信號,這樣就能保證廣播電臺節(jié)目的連續(xù)性,提升用戶體驗。
下面結合說明書附圖對本發(fā)明各個實施例作進一步地詳細描述。顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其它實施例,都屬于本發(fā)明保護的范圍。
圖1為本發(fā)明實施例提供一種電臺廣播方法的流程示意圖。所述方法可以如下所示。
步驟101:車載多媒體設備在確定車輛當前的位置區(qū)域發(fā)生變化時,根據(jù)位置區(qū)域與電臺節(jié)目對應的電臺信號的信號頻率之間的預設關系,確定當前正在廣播的所述電臺節(jié)目在變化后的位置區(qū)域內對應的電臺信號的信號頻率。
步驟102:所述車載多媒體設備根據(jù)確定的所述信號頻率進行搜索,切換廣播搜索到的所述電臺信號,以實現(xiàn)廣播選擇的所述電臺節(jié)目的連續(xù)性。
在步驟102中,由于地域性的限制,同一個電臺在不同區(qū)域的電臺頻率不同,那么當車輛從一個區(qū)域進入另一個區(qū)域時,可能導致原來正在收聽的廣播斷了,為了保證電臺廣播的連續(xù)性,所述車載多媒體設備在確定車輛當前的位置區(qū)域發(fā)生變化時,需要進一步確定當前正在廣播的所述電臺節(jié)目在變化后的位置區(qū)域內對應的電臺信號的信號頻率,進而實現(xiàn)廣播選擇的所述電臺節(jié)目的連續(xù)性。
需要說明的是,本發(fā)明實施例中所記載的車載多媒體設備并不是集成在汽車上的設備,而是獨立與汽車的設備,該車載多媒體設備可以通過汽車點煙器與汽車的控制設備之間建立連接,并由汽車點煙器為其提供電能;還可以通過無線方式與汽車的控制設備之間建立無線連接,這樣,既可以應用在存量汽車之上,也可以應用在新研發(fā)的智能汽車之上。該車載多媒體設備具備導航、電臺廣播、音視頻播放等多種功能。此外,本發(fā)明實施例中所記載的車載多媒體設備的操作系統(tǒng)可以是android系統(tǒng)。android系統(tǒng)是一種基于linux的自由及開放源代碼的操作系統(tǒng),本發(fā)明實施例中所記載的車載多媒體設備的操作系統(tǒng)支持android5.0版本,并可以利用android5.0版本提供的接口與移動終端設備、汽車自帶的其他設備之間建立通信連接。
不管是在車輛的位置區(qū)域如何變化,車載多媒體設備還可以提供電臺廣播方法,車載多媒體設備根據(jù)車輛當前所在位置,搜索在所述位置上覆蓋的至少一個電臺信號,不同的所述電臺信號對應的信號頻率不同;根據(jù)電臺信號與電臺節(jié)目單之間的映射關系,確定搜索到的每一個所述電臺信號對應的電臺節(jié)目單,并將確定的所述電臺節(jié)目單顯示在所述車載多媒體設備的顯示器中;所述 車載多媒體設備接收用戶選擇的電臺節(jié)目,并廣播選擇的所述電臺節(jié)目。這種方式可以在位置區(qū)域尚未發(fā)生變化時執(zhí)行,也可以是在位置區(qū)域發(fā)生變化之后執(zhí)行。
下面詳細描述車載多媒體設備如何根據(jù)車輛當前所在位置實現(xiàn)電臺廣播。
圖2為本發(fā)明實施例提供的一種電臺廣播方法的流程示意圖。所述方法可以如下所述。
步驟201:車載多媒體設備確定車輛當前所在位置,并搜索在所述位置上覆蓋的至少一個電臺信號。
其中,不同的所述電臺信號對應的信號頻率不同。
在步驟201中,由于實際中應用的廣播電臺一般采用調頻廣播,在不同區(qū)域,同一個廣播電臺的電臺頻率是不同的,那么車輛在行駛時,不同位置所覆蓋的電臺信號也不同。
為了保證駕駛員收聽廣播電臺的質量,由車載多媒體設備根據(jù)車輛當前所在位置搜索在該位置上覆蓋的電臺信號,這里的電臺信號不止一個,可以是多個。
具體地,車載多媒體設備確定當前車輛所在位置,包括:
第一種方式:
車載多媒體設備與車載導航設備建立通信連接,并接收所述車載導航設備通過lbs定位方式得到車輛當前所在位置。
在實際應用中,車載導航設備越來越多,本發(fā)明實施例中車載多媒體設備可以與車載導航設備之間建立通信連接,利用車載導航設備的定位功能確定車輛當前所在位置。
此外,本發(fā)明實施例中所記載的車載多媒體設備也可以具備導航功能,這樣,車載多媒體設備可以利用自身的導航功能定位車輛當前所在位置。
第二種方式:
車載多媒體設備與移動終端設備建立通信連接,并接收所述移動終端設備 通過gps/基站定位方式得到車輛當前所在位置。
在實際應用中,移動終端設備中可以安裝不同的導航軟件,也具備定位功能,那么在本發(fā)明實施例中車載多媒體設備可以與移動終端設備之間建立通信,利用移動終端設備的定位功能確定車輛當前所在位置。
需要說明的是,利用移動終端設備的定位功能可以利用移動終端設備的基于位置服務(lbs)功能實現(xiàn)定位;也可以利用移動終端設備內部的gps定位模塊實現(xiàn)定位;還可以利用移動終端設備所支持的基站定位方式實現(xiàn)定位,這里不做具體限定。
步驟202:所述車載多媒體設備根據(jù)電臺信號與電臺節(jié)目單之間的映射關系,確定搜索到的每一個所述電臺信號對應的電臺節(jié)目單,并將確定的所述電臺節(jié)目單顯示在所述車載多媒體設備的顯示器中。
在步驟202中,所述車載多媒體設備可以預先存儲電臺信號與電臺節(jié)目單之間的映射關系,也可以是用戶根據(jù)個人習慣標注的電臺信號與電臺節(jié)目單之間的映射關系,這里不做限定。
可選地,通過以下方式建立電臺信號與電臺節(jié)目單之間的映射關系:
確定每一個電臺在不同時間的電臺節(jié)目單以及每一個電臺在不同位置的電臺信號;
建立位置信息、電臺信號與所述電臺信號在不同時間的電臺節(jié)目單之間的映射關系。
例如:北京交通廣播電臺,可以預先確定該廣播電臺在不同時間的電臺節(jié)目單,以及該電臺在不同位置的電臺信號,即可建立位置信息、電臺信號與所述電臺信號在不同時間的電臺節(jié)目單之間的映射關系。
表1為a電臺的電臺節(jié)目單與電臺信號之間的映射關系的示意表:
表1
從表1中可以看出,在不同位置坐標對應的電臺頻率不同,在不同時間段,電臺所播報的電臺節(jié)目的內容不同,在相同時間段內,電臺在不同電臺頻率上所播報的電臺節(jié)目內容相同。
具體地,所述車載多媒體設備在步驟101中確定車輛當前所在位置后,可以根據(jù)上述記載的映射關系,確定該位置上所覆蓋的電臺信號對應的電臺節(jié)目單,并將確定的電臺節(jié)目單顯示給用戶。
圖3為本發(fā)明實施例提供的車載多媒體設備顯示節(jié)目單的示意圖。
從圖3中可以看出,車載多媒體設備顯示節(jié)目單可以采用列表的方式顯示,也可以采用其他方式顯示,這里不做限定。
需要說明的是,在顯示時,可以將用戶經(jīng)常選擇的電臺節(jié)目單顯示在整個列表的前面,方便用戶查找。
步驟203:所述車載多媒體設備接收用戶選擇的電臺節(jié)目,并廣播選擇的所述電臺節(jié)目。
在步驟203中,假設所述車載多媒體設備通過車載多媒體設備的顯示器接收用戶選擇的電臺節(jié)目,那么廣播選擇的所述電臺節(jié)目。
假設所述車載多媒體設備在步驟201中已與移動終端設備建立通信連接,還可以將搜索到的每一個所述電臺信號對應的電臺節(jié)目單發(fā)送給移動終端設備,將該電臺節(jié)目單顯示在移動終端設備中。
可選地,若用戶通過移動終端設備確定選擇的電臺節(jié)目,此時,所述車載多媒體設備接收移動終端設備發(fā)送的選擇的所述電臺節(jié)目對應的電臺信號。
此時,車載多媒體設備將接收到的所述電臺信號與搜索到的選擇的所述電臺節(jié)目對應的電臺信號的強度進行比較;
所述車載多媒體設備在確定接收到的所述電臺信號的強度大于搜索到選擇的所述電臺節(jié)目對應的電臺信號的強度時,使用接收到的所述電臺信號,廣 播選擇的所述電臺節(jié)目。
所述車載多媒體設備在確定接收到的所述電臺信號的強度不大于搜索到選擇的所述電臺節(jié)目對應的電臺信號的強度時,使用搜索到的所述電臺信號,廣播選擇的所述電臺節(jié)目。
在廣播選擇的所述電臺節(jié)目的過程中,一旦發(fā)現(xiàn),廣播電臺信號質量不差時,再次將接收到的所述電臺信號與搜索到的選擇的所述電臺節(jié)目對應的電臺信號的強度進行比較。
所述車載多媒體設備在確定接收到的所述電臺信號的強度小于搜索到選擇的所述電臺節(jié)目對應的電臺信號的強度時,切換使用搜索到的所述電臺信號,繼續(xù)廣播選擇的所述電臺節(jié)目。
通過本發(fā)明實施例提供的方案,車載多媒體設備在確定車輛的當前位置區(qū)域發(fā)生變化時,根據(jù)位置區(qū)域與電臺節(jié)目對應的電臺信號的信號頻率之間的預設關系,確定當前正在廣播的所述電臺節(jié)目在變化后的位置區(qū)域內對應的電臺信號的信號頻率;根據(jù)確定的所述信號頻率進行搜索,切換廣播搜索到的所述電臺信號,以實現(xiàn)廣播選擇的所述電臺節(jié)目的連續(xù)性。這樣,車載多媒體設備在發(fā)現(xiàn)車輛的當前位置區(qū)域發(fā)生變化時,可以根據(jù)位置區(qū)域與電臺節(jié)目對應的電臺信號的信號頻率之間的預設關系來確定當前正在廣播的所述電臺節(jié)目在變化后的位置區(qū)域內對應的電臺信號的信號頻率,進而根據(jù)搜索到的新的電臺信號的信號頻率,切換廣播搜索到的新的電臺信號,這樣就能保證廣播電臺節(jié)目的連續(xù)性,提升用戶體驗。
圖4為本發(fā)明實施例提供的一種電臺廣播設備的結構示意圖。所述設備包括:確定單元41和切換單元42,其中:
確定單元41,用于在確定車輛的當前位置區(qū)域發(fā)生變化時,根據(jù)位置區(qū)域與電臺節(jié)目對應的電臺信號的信號頻率之間的預設關系,確定當前正在廣播的所述電臺節(jié)目在變化后的位置區(qū)域內對應的電臺信號的信號頻率;
切換單元42,用于根據(jù)確定的所述信號頻率進行搜索,切換廣播搜索到的 所述電臺信號,以實現(xiàn)廣播選擇的所述電臺節(jié)目的連續(xù)性。
在本發(fā)明的另一實施例中,所述電臺廣播設備還包括:位置確定單元43、搜索單元44、顯示單元45和廣播單元46,如圖5所示,為本發(fā)明實施例提供的一種電臺廣播設備的結構示意圖,其中:
所述位置確定單元43,用于在確定當前車輛的位置區(qū)域發(fā)生變化之前,確定車輛當前所在位置;
所述搜索單元44,用于搜索在所述位置上覆蓋的至少一個電臺信號,其中,不同的所述電臺信號對應的信號頻率不同;
所示顯示單元45,用于根據(jù)電臺信號與電臺節(jié)目單之間的映射關系,確定搜索到的每一個所述電臺信號對應的電臺節(jié)目單,并將確定的所述電臺節(jié)目單顯示在所述車載多媒體設備的顯示器中;
所示廣播單元46,用于接收用戶選擇的電臺節(jié)目,并廣播選擇的所述電臺節(jié)目。
在本發(fā)明的另一實施例中,所述位置確定單元43確定車輛當前所在位置,包括:
與車載導航設備建立通信連接,并接收所述車載導航設備通過lbs定位方式得到車輛當前所在位置。
在本發(fā)明的另一實施例中,所述位置確定單元43確定車輛當前所在位置,包括:
與移動終端設備建立通信連接,并接收所述移動終端設備通過gps/基站定位方式得到車輛當前所在位置。
在本發(fā)明的另一實施例中,所述廣播單元46廣播選擇的所述電臺節(jié)目,包括:
接收移動終端設備發(fā)送的選擇的所述電臺節(jié)目對應的電臺信號;
在確定接收到的所述電臺信號的強度大于搜索到選擇的所述電臺節(jié)目對應的電臺信號的強度時,使用接收到的所述電臺信號,廣播選擇的所述電臺節(jié) 目。
在本發(fā)明的另一實施例中,所述切換單元42,還用于在確定接收到的所述電臺信號的強度小于搜索到選擇的所述電臺節(jié)目對應的電臺信號的強度時,切換使用搜索到的所述電臺信號,繼續(xù)廣播選擇的所述電臺節(jié)目。
在本發(fā)明的另一實施例中,所述顯示單元45通過以下方式建立電臺信號與電臺節(jié)目單之間的映射關系:
確定每一個電臺在不同時間的電臺節(jié)目單以及每一個電臺在不同位置的電臺信號;
建立位置信息、電臺信號與所述電臺信號在不同時間的電臺節(jié)目單之間的映射關系。
需要說明的是,本發(fā)明實施例提供的電臺廣播設備可以通過軟件方式實現(xiàn),將功能集成在車載多媒體設備中;也可以通過硬件方式實現(xiàn),在車載多媒體設備中增加切換單元,這里不做限定。
車載多媒體設備在發(fā)現(xiàn)車輛的當前位置區(qū)域發(fā)生變化時,可以根據(jù)位置區(qū)域與電臺節(jié)目對應的電臺信號的信號頻率之間的預設關系來確定當前正在廣播的所述電臺節(jié)目在變化后的位置區(qū)域內對應的電臺信號的信號頻率,進而根據(jù)搜索到的新的電臺信號的信號頻率,切換廣播搜索到的新的電臺信號,這樣就能保證廣播電臺節(jié)目的連續(xù)性,提升用戶體驗。
本發(fā)明另一實施例提供了一種獲得車載多媒體設備進程列表的方法,所述設備安裝內具有android操作系統(tǒng),該android操作系統(tǒng)可以為android5.0版本或android5.0以下的版本(例如:android4.2、或android4.4等等)。
本實施例提供的一種獲得進程列表的方法,包括:
步驟s101:執(zhí)行進程查看命令,并獲取進程查看命令的輸出結果。
在具體實施過程中,所述進程查看命令即為linux下的ps命令,所述進程查看命令的輸出結果即為ps命令的輸出結果,其中包含當前運行的全部進 程的進程信息。
在linux系統(tǒng)中,要對進程進行監(jiān)測和控制,首先必須要了解當前進程的情況,也就是需要查看當前進程,而ps命令就是最基本同時也是非常強大的進程查看命令。使用ps命令可以確定有哪些進程正在運行和運行的狀態(tài)、進程是否結束、進程有沒有僵死、哪些進程占用了過多的資源等等??傊蟛糠中畔⒍际强梢酝ㄟ^執(zhí)行ps命令得到的。
而andorid是基于linux開發(fā)的,也支持ps命令,所以在本實施例中,通過執(zhí)行ps命令,并獲得ps命令的標準輸出結果,即可獲得當前進程的情況。在ps的標準輸出結果中包含很多行和很多列信息,其中每一行對應一個進程,每一行中的每一列為一個字段,用于描述對應進程的一個特征(例如:進程名稱、進程用戶、進程id,等等),但是在ps的標準輸出結果中包含大量的實際不需要的信息(例如:某些無效的系統(tǒng)進程的進程信息),而本申請的核心之處是要構造出和andoid5.0以下的版本中對象runningapprocessinfo一樣的進程列表,所以需要進一步執(zhí)行步驟s102-s105。
步驟s102:基于一過濾規(guī)則,對輸出結果中的全部進程信息進行過濾。
在具體實施過程中,過濾的原則是留下用戶進程的進程信息,剔除某些無效的系統(tǒng)進程的進程信息,同時又需要保留某些系統(tǒng)進程(例如:系統(tǒng)預裝app)的進程信息。具體過濾規(guī)則如下:
(1)如果第一進程信息中的進程用戶(即:user)是以第一預設字符串開頭的用戶,則保留所述第一進程信息;其中,第一進程信息為輸出結果中的全部進程信息中的任一進程信息,第一預設字符串為“u0_”、或“u1_”、或“app_”。也就是說,如果某一進程信息的user的名稱是“u0_”、“u1_”、“app_”開頭的,則對應的進程肯定是用戶app進程或大多數(shù)內置app的進程,所以需要保留該進程信息。
(2)如果第一進程信息中的進程用戶(即:user)為system,且第一進程息的進程名稱中包含第一預設字符但不包含第二預設字符也不包含第二預 設字符串,則保留所述第一進程信息;其中,第一進程信息為輸出結果中的全部進程信息中的任一進程信息,第一預設字符為“.”,第二預設字符為“/”,第二預設字符串為“system_”。也就是說,對于user是system的進程信息,則排除掉進程名稱中含有“/”(例如:/system/)和“system_”(例如:system_server)和進程名稱中沒有“.”的進程信息。例如:進程名稱為com.android.systemui的進程信息符合要求,保留;進程名稱為/system/bin/su、或zygote的進程信息不符要求,排除。
(3)如果第一進程信息的進程用戶(即:user)不是system也不是以第一預設字符串開頭的用戶,且第一進程信息的進程名稱中包含第一預設字符但不包含第二預設字符,則保留所述第一進程信息;其中,第一進程信息為輸出結果中的全部進程信息中的任一進程信息,第一預設字符串為“u0_”、或“u1_”、或“app_”,第一預設字符為“.”,第二預設字符為“/”。也就是說,如果進程信息中的user是其它情況(例如:root、nfc等),則排除掉進程名中含有“/”但沒有“.”的進程信息。例如:進程名稱為com.android.phone的進程信息符合要求,保留;進程名稱為radio的進程信息不符要求,排除。
步驟s103:對過濾后的每條進程信息進行解析,獲得過濾后的每條進程信息包含的全部字段。
作為一種可選的實施例,在執(zhí)行步驟s103時,可以直接使用string.split方法,對過濾后的每條進程信息進行解析。但是,string.split內部使用了正則表達式實現(xiàn),效率較低。經(jīng)測試,使用string.split解析需要的時間長達200多毫秒。
作為一種優(yōu)選的實施例,在執(zhí)行步驟s103時,由于ps命令的輸出結果是一列一列的字段,所以可以掃描過濾后的每條進程信息,記下過濾后的每條進程信息中的每一個從空字符變化為非空字符的位置(即:確定了一個字段的開始位置),并將每一個從空字符變化為非空字符的位置存為數(shù)組array;利用數(shù)組的索引,截取每一個從空字符變化為非空字符的位置之后的字符串,從而獲 得過濾后的每條進程信息中包含的全部字段。經(jīng)測試,使用本方法解析需要的時間僅需70多毫秒,效率較高,可以滿足實際需求。
步驟s104:從所述過濾后的每條進程信息包含的全部字段中提取預設字段。
在具體實施過程中,需要構造出在andorid5.0以下版本中的對象runningapprocessinfo,所以此處提取的預設字段即為對象runningapprocessinfo中包含的字段,包括:進程名稱(即:processname)、進程用戶(即:user)、進程id(即:pid)、用戶id(即:uid)、進程使用的包名列表(即:pkglist)、進程重要性信息(即:importance)。
在具體實施過程中,可以從過濾后的每條進程信息中的第一列,提取進程用戶(即:user)字段;可以從過濾后的每條進程信息中的第二列,提取進程id(即:pid)字段;可以從過濾后的每條進程信息中的最后第一列,提取進程名稱(即:processname)字段。
在具體實施過程中,可以調用android.os.process.getuidforname函數(shù),獲得過濾后的每條進程信息中的用戶id(即:uid)字段。
在具體實施過程中,可以基于過濾后的每條進程信息所在的包,確定過濾后的每條進程信息中的進程使用的包名列表(即:pkglist)字段。也就是說,pkglist默認就是本進程所在的包。
步驟s105:基于過濾后的每條進程信息中的預設字段,構造一進程列表。
在具體實施過程中,如表一所示,該進程列表與對象runningapprocessinfo提供的進程列表相同,包括以下字段:進程名稱(即:processname)字段、進程用戶(即:user)字段、進程id(即:pid)字段、用戶id(即:uid)字段、進程使用的包名列表(即:pkglist)字段、進程重要性信息(即:importance)字段。
表一
在本實施例中,通過步驟s101~步驟s105,實現(xiàn)了在android5.0版本的系統(tǒng)中,獲得和在android5.0以下版本中的runningapprocessinfo對象一樣的進程列表的技術效果。安全類app可以基本實施例中的技術方案獲得信息比較全面的進程列表,從而保證了進程清理和病毒查殺的效果。且全過程不利用android5.0版本提供的appstaksmanager接口,無需用戶手動開啟權限,也不用擔心其他app將權限關閉,從而大大提高了成功獲得進程列表的概率。同時,本實施例中的技術方案兼容android5.0以下版本。
作為一種可選的實施例,在步驟s105之后,還包括:基于進程列表進行進程清理。
在具體實施過程中,在獲得進程列表后,可以基于該進程列表中記錄的進程信息,確定需要清理的進程,并進行進程清理,從而提高android系統(tǒng)的的運行速度。由于本實施例中,可以在android5.0版本的系統(tǒng)中,獲得和在android5.0以下版本中的runningapprocessinfo對象一樣的進程列表,該進程列表中包含比較全面的進程信息,所以基于該進程列表進行進程清理,可以保證進程清理的效果,并提高進程清理的效率。
作為一種可選的實施例,在步驟s105之后,還包括:基于進程列表,對應用權限進行管理,或進行病毒查殺,或利用主動防御模塊執(zhí)行一些程序的監(jiān)管功能。
在具體實施過程中,在獲得進程列表后,可以繼續(xù)獲取一黑名單,并判斷進程列表中的每個進程是否被記載在黑名單中,若某一進程被記載在該黑名單中,則確定該進程對應的應用程序為病毒程序,并將該病毒程序進行清除,從而保證系統(tǒng)安全。由于該進程列表中包含比較全面的進程的相關信息,所以基本實施例中的技術方案獲得信息比較全面的進程列表進行病毒查殺,可以保證病毒查殺的效果,提高病毒查殺效率。
在具體實施過程中,可以利用基于進程列表,監(jiān)控應用獲取運營商信息、apn操作、通知欄廣告操作、獲取手機識別碼操作、創(chuàng)建快捷方式、電話拔打操作、短信插入或刪除操作、聯(lián)系人插入或刪除操作、url訪問操作、子進程侵入操作、應用加載操作、命令操作、衍生物操作、激活設備管理器操作。
在具體實施過程中,在安裝一應用程序時,可以基于進程列表確定正在安裝的應用程序,并判斷正在安裝的應用程序是否安全,從而對正在安裝的應用程序進行進一步處理。
舉例來講,云端服務器可以為應用程序的安全級別設定黑、灰、白三種級別,分別代表不同危險程度,并設定對應的處理規(guī)則。例如,黑應用禁止安裝,灰應用由用戶自行選擇,白應用則可徑行安裝。當然,可以進一步簡化為灰、白兩種,或者簡化為黑、白兩種。本領域技術人員熟悉服務器的這種云端控制技術,將在后續(xù)進一步概要揭示。無論如何,本發(fā)明將從本機遠程規(guī)則庫接口中獲得云端服務器有關這些應用的處理規(guī)則的反饋,利用反饋結果做出相應的后續(xù)處理。具體而言,當針對當前目標應用返回黑應用標識時,可以隨即停止該目標應用的安裝;當標識為白應用或灰應用時,則可放行安裝。出于交互性的考慮,當完成遠程判斷后,本發(fā)明將向用戶界面彈窗提醒用戶有關判斷結果,并顯示相應的處理建議,詢問用戶是否確定對當前新裝應用建構主動防御環(huán)境,用戶從中確定對當前新裝目標應用進行主動防御的標識后,即確定了該目標應用。
同理,用戶確定該目標應用之后,本發(fā)明會將該目標應用的安裝包存放至所述的指定目錄中。另外,出于本發(fā)明后續(xù)將為該已確定的目標應用建構主動防御環(huán)境的考慮,本發(fā)明會立即停止該目標應用的安裝,停止安裝的操作既可以發(fā)明在用戶確定該目標應用之前也可以發(fā)生在之后。
此外,如果當前應用屬于黑應用,而用戶仍然希望安裝該應用,則仍可允許用戶在建立主動防御環(huán)境的前提下保留該已安裝應用程序,或者允許相應的新裝應用繼續(xù)安裝。
根據(jù)所述一種獲得進程列表的方法及裝置,執(zhí)行進程查看命令,并獲取進程查看命令的輸出結果;基于一過濾規(guī)則,對輸出結果中的全部進程信息進行過濾;對過濾后的每條進程信息進行解析,獲得過濾后的每條進程信息包含的全部字段;從過濾后的每條進程信息包含的全部字段中提取預設字段;基于過濾后的每條進程信息中的預設字段,構造一進程列表。其中,所述u個預設字段為在andoid5.0以下的版本中對象runningapprocessinfo所提供的進程信息中的字段。本發(fā)明基于ps命令獲得當前運行的全部進程的進程信息,并經(jīng)過過濾,最后構造出和andoid5.0以下的版本中對象runningapprocessinfo一樣的進程列表,從而獲得了更加全面的進程信息,且無需用戶手動開啟權限,進而效地解決了現(xiàn)有技術中在android5.0版本中,需要用戶手動開啟權限才能獲得進程列表,且獲取到的進程列表中的信息不全面的技術問題。
本領域的技術人員應明白,本發(fā)明的實施例可提供為方法、裝置(設備)、或計算機程序產品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器、cd-rom、光學存儲器等)上實施的計算機程序產品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、裝置(設備)和計算機程序產品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設備的處理器以產生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設備的處理器執(zhí)行的指令產生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中 的指令產生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設備上,使得在計算機或其他可編程設備上執(zhí)行一系列操作步驟以產生計算機實現(xiàn)的處理,從而在計算機或其他可編程設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
盡管已描述了本發(fā)明的優(yōu)選實施例,但本領域內的技術人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例作出另外的變更和修改。所以,所附權利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明范圍的所有變更和修改。
顯然,本領域的技術人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權利要求及其等同技術的范圍之內,則本發(fā)明也意圖包含這些改動和變型在內。