本發(fā)明涉及智能終端技術(shù)領(lǐng)域,尤其涉及一種更新通知處理方法和裝置。
背景技術(shù):
目前,當(dāng)終端上的應(yīng)用程序有可更新版本時,應(yīng)用程序一般通過對話框或通知欄提示的方式向用戶展示更新通知,從而提醒用戶對應(yīng)用程序進(jìn)行更新。然而,當(dāng)終端處于第一網(wǎng)絡(luò)狀態(tài)下時,由于第一網(wǎng)絡(luò)資費(fèi)昂貴,用戶往往不愿意在第一網(wǎng)絡(luò)狀態(tài)下對應(yīng)用程序進(jìn)行更新,此時向用戶展示的更新通知不僅無法起到提醒用戶更新應(yīng)用程序的作用,而且給用戶的使用造成干擾。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供了一種更新通知處理方法和裝置,能夠避免終端在第一網(wǎng)絡(luò)狀態(tài)下向用戶輸出更新通知,減少更新通知給用戶使用造成的干擾。
本發(fā)明實(shí)施例提供的一種更新通知處理方法,包括:
監(jiān)聽終端上應(yīng)用程序的更新通知;
若監(jiān)聽到所述更新通知并且所述終端處于第一網(wǎng)絡(luò)狀態(tài)下,則禁止所述終端輸出所述更新通知。
可選地,所述更新通知處理方法還包括:
將被禁止輸出的更新通知保存至通知暫存列表;
若監(jiān)聽到所述終端從第一網(wǎng)絡(luò)切換至第二網(wǎng)絡(luò),則輸出所述通知暫存列表中的更新通知。
可選地,在將被禁止輸出的更新通知保存至通知暫存列表之前,還包括:
判斷所述通知暫存列表中是否存在對應(yīng)的應(yīng)用程序與所述被禁止輸出的更新通知對應(yīng)的應(yīng)用程序相同的更新通知;
若是,則丟棄所述被禁止輸出的更新通知,或者執(zhí)行將被禁止輸出的更新通知保存至通知暫存列表的步驟并且丟棄所述通知暫存列表中對應(yīng)的應(yīng)用程序判斷結(jié)果相同的所述更新通知;
若否,則執(zhí)行將所述被禁止輸出的更新通知保存至通知暫存列表的步驟。
可選地,在輸出所述通知暫存列表中的更新通知之后,還包括:
清空所述通知暫存列表。
可選地,所述監(jiān)聽終端上應(yīng)用程序的更新通知具體為:
監(jiān)聽終端上正在運(yùn)行的應(yīng)用程序在啟動后前預(yù)設(shè)時長內(nèi)發(fā)出的更新通知。
可選地,所述更新通知處理方法還包括:
若監(jiān)聽到所述終端上正在運(yùn)行的應(yīng)用程序被關(guān)閉,則刪除所述通知暫存列表中與被關(guān)閉的所述應(yīng)用程序?qū)?yīng)的更新通知。
本發(fā)明實(shí)施例提供的一種更新通知處理裝置,包括:
更新通知監(jiān)聽模塊,用于監(jiān)聽終端上應(yīng)用程序的更新通知;
禁止通知輸出模塊,用于若監(jiān)聽到所述更新通知并且所述終端處于第一網(wǎng)絡(luò)狀態(tài)下,則禁止所述終端輸出所述更新通知。
可選地,所述更新通知處理裝置還包括:
更新通知保存模塊,用于將被禁止輸出的更新通知保存至通知暫存列表;
更新通知輸出模塊,用于若監(jiān)聽到所述終端從第一網(wǎng)絡(luò)切換至第二網(wǎng)絡(luò),則輸出所述通知暫存列表中的更新通知。
可選地,所述更新通知處理裝置還包括:
判斷模塊,用于判斷所述通知暫存列表中是否存在對應(yīng)的應(yīng)用程序與所述被禁止輸出的更新通知對應(yīng)的應(yīng)用程序相同的更新通知;
第一處理模塊,用于若所述判斷模塊的判斷結(jié)果為是,則丟棄所述被禁止輸出的更新通知,或者觸發(fā)所述更新通知保存模塊并且丟棄所述通知暫存列表中對應(yīng)的應(yīng)用程序判斷結(jié)果相同的所述更新通知;
第二處理模塊,用于若所述判斷模塊的判斷結(jié)果為否,則觸發(fā)所述更新通知保存模塊。
可選地,所述更新通知監(jiān)聽模塊具體用于監(jiān)聽終端上正在運(yùn)行的應(yīng)用程序在啟動后前預(yù)設(shè)時長內(nèi)發(fā)出的更新通知;
所述更新通知處理裝置還包括:
更新通知刪除模塊,用于若監(jiān)聽到所述終端上正在運(yùn)行的應(yīng)用程序被關(guān)閉,則刪除所述通知暫存列表中與被關(guān)閉的所述應(yīng)用程序?qū)?yīng)的更新通知。
從以上技術(shù)方案可以看出,本發(fā)明實(shí)施例具有以下優(yōu)點(diǎn):
本發(fā)明實(shí)施例中,監(jiān)聽終端上應(yīng)用程序的更新通知;然后,若監(jiān)聽到所述更新通知并且所述終端處于第一網(wǎng)絡(luò)狀態(tài)下,則禁止所述終端輸出所述更新通知。從而,可以避免終端在第一網(wǎng)絡(luò)狀態(tài)下向用戶輸出更新通知,減少更新通知給用戶使用造成的干擾。
附圖說明
圖1為本發(fā)明實(shí)施例中一種更新通知處理方法一個實(shí)施例流程圖;
圖2為本發(fā)明實(shí)施例中一種更新通知處理裝置一個實(shí)施例結(jié)構(gòu)圖。
具體實(shí)施方式
本發(fā)明實(shí)施例提供了一種更新通知處理方法和裝置,用于解決終端在第一網(wǎng)絡(luò)狀態(tài)下向用戶輸出更新通知,給用戶使用造成干擾的問題。
為使得本發(fā)明的發(fā)明目的、特征、優(yōu)點(diǎn)能夠更加的明顯和易懂,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,下面所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而非全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
請參閱圖1,本發(fā)明實(shí)施例中一種更新通知處理方法一個實(shí)施例包括:
101、監(jiān)聽終端上應(yīng)用程序的更新通知;
本實(shí)施例中,首先可以監(jiān)聽終端上應(yīng)用程序的更新通知。具體地,可以是監(jiān)聽終端上應(yīng)用程序的通知信息,然后判斷這些應(yīng)用程序的通知信息中是否存在更新通知。
本實(shí)施例中,上述的應(yīng)用程序的更新通知可以通過系統(tǒng)的Dialog和Notification進(jìn)行判斷,在系統(tǒng)framework的Dialog.java和Notification.java中的show()方法中,通過提取通知信息的標(biāo)題和內(nèi)容,判斷該標(biāo)題或內(nèi)容中是否包含關(guān)鍵字“更新”,若是,則可以確定該通知信息為更新通知,否則,則該通知信息不是應(yīng)用程序的更新通知。另外,可以理解的是,本實(shí)施中的應(yīng)用程序的更新通知不僅可以是應(yīng)用程序自身發(fā)出的,也可以由第三方程序發(fā)出,甚至可以是終端系統(tǒng)檢測后發(fā)出,對此不作具體限定。
所述通知信息包括應(yīng)用程序的推送信息,例如新聞、話題、廣告等,也包括了應(yīng)用程序的更新通知,比如某應(yīng)用程序的新版本更新通知,用戶可以通過直接點(diǎn)擊該更新通知來對應(yīng)用程序進(jìn)行更新。
進(jìn)一步地,具體可以監(jiān)聽終端上正在運(yùn)行的應(yīng)用程序在啟動后前預(yù)設(shè)時長內(nèi)發(fā)出的更新通知。可以理解的是,應(yīng)用程序一般在啟動后一定時間內(nèi)發(fā)出更新通知,例如手機(jī)上某APP在啟動10秒之內(nèi)彈出更新通知提示,但超過了這個預(yù)設(shè)時長后,應(yīng)用程序不會再發(fā)出更新通知,因此為了避免不必要的判斷,節(jié)省監(jiān)聽資源,可以只監(jiān)聽?wèi)?yīng)用程序啟動后的前預(yù)設(shè)時長內(nèi)發(fā)出的更新通知中是否存在更新通知,超過這個時間則不對這個應(yīng)用程序進(jìn)行監(jiān)聽。、
本實(shí)施例中所述的終端可以包括智能手機(jī)、平板電腦、個人計(jì)算機(jī)、可穿戴設(shè)備等智能設(shè)備。
102、若監(jiān)聽到所述更新通知并且所述終端處于第一網(wǎng)絡(luò)狀態(tài)下,則禁止所述終端輸出所述更新通知。
本實(shí)施例中,若監(jiān)聽到所述更新通知并且所述終端處于第一網(wǎng)絡(luò)狀態(tài)下,則可以禁止所述終端輸出所述更新通知。
優(yōu)選地,上述的第一網(wǎng)絡(luò)具體可以是移動網(wǎng)絡(luò),例如2G、3G、4G,甚至5G網(wǎng)絡(luò),與第一網(wǎng)絡(luò)相對應(yīng)的第二網(wǎng)絡(luò)則具體可以為非移動網(wǎng)絡(luò),例如WIFI網(wǎng)絡(luò)、有線網(wǎng)絡(luò)等。通常,移動網(wǎng)絡(luò)的數(shù)據(jù)流量資費(fèi)要遠(yuǎn)高于非移動網(wǎng)絡(luò)的數(shù)據(jù)流量資費(fèi),因此用戶常常希望在非移動網(wǎng)絡(luò)狀態(tài)下更新應(yīng)用程序。另外,第一網(wǎng)絡(luò)和第二網(wǎng)絡(luò)還可以均為移動網(wǎng)絡(luò),例如雙卡雙待的移動終端上,第一網(wǎng)絡(luò)為3G網(wǎng)絡(luò),第二網(wǎng)絡(luò)為4G網(wǎng)絡(luò),該移動終端所屬用戶希望通過4G網(wǎng)絡(luò)來更新應(yīng)用程序,則可以在其將移動終端從第一網(wǎng)絡(luò)切換至第二網(wǎng)絡(luò),也即從3G網(wǎng)絡(luò)切換至4G網(wǎng)絡(luò)時,輸出所述更新通知,從而便于用戶在第二網(wǎng)絡(luò)狀態(tài)下進(jìn)行應(yīng)用程序的更新。
本實(shí)施例中,可以在系統(tǒng)framework的Dialog.java和Notification.java中添加廣播接收器來監(jiān)聽?wèi)?yīng)用程序的開始運(yùn)行情況以及終端當(dāng)前的網(wǎng)絡(luò)狀態(tài)(第一網(wǎng)絡(luò)或第二網(wǎng)絡(luò))。
上述禁止所述終端輸出所述更新通知可以是指禁止所述終端顯示該更新通知對用戶進(jìn)行提示,從而避免在第一網(wǎng)絡(luò)狀態(tài)下用戶看到終端上彈出這些應(yīng)用程序的更新通知,對用戶的使用造成干擾。
進(jìn)一步地,所述更新通知處理方法還可以包括:將被禁止輸出的更新通知保存至通知暫存列表;若監(jiān)聽到所述終端從第一網(wǎng)絡(luò)切換至第二網(wǎng)絡(luò),則輸出所述通知暫存列表中的更新通知??梢岳斫獾氖?,在實(shí)際應(yīng)用場景下,往往可能出現(xiàn)以下這種情況:用戶打開終端的應(yīng)用程序,此時終端處于第一網(wǎng)絡(luò)狀態(tài)下,應(yīng)用程序彈出了更新通知,但由于用戶不希望通過第一網(wǎng)絡(luò)來下載應(yīng)用程序的安裝包,于是用戶想著回到住所等終端連接上WIFI后再進(jìn)行更新。然而,當(dāng)用戶回到住所后,用戶卻忘記了該應(yīng)用程序需要更新這回事,因此沒有對其進(jìn)行更新。結(jié)果下一次用戶在第一網(wǎng)絡(luò)狀態(tài)下打開該應(yīng)用程序時,應(yīng)用程序又進(jìn)行了一次更新通知提示……本實(shí)施例為了克服上述應(yīng)用場景下的缺點(diǎn),讓用戶可以在終端切換到第二網(wǎng)絡(luò)時及時得到應(yīng)用程序的更新提醒,在終端處于第一網(wǎng)絡(luò)狀態(tài)下時,將應(yīng)用程序發(fā)出的更新通知保存到通知暫存列表中,當(dāng)監(jiān)聽到所述終端從第一網(wǎng)絡(luò)切換至第二網(wǎng)絡(luò)時,則輸出所述通知暫存列表中的更新通知,從而讓用戶第一時間得到這些更新通知的提示,對需要更新的應(yīng)用程序進(jìn)行更新,不僅提高了應(yīng)用程序的更新時效,而且提升了用戶的使用體驗(yàn)。
本實(shí)施例中,上述的通知暫存列表可以在終端開機(jī)時建立,該通知暫存列表可以包括應(yīng)用程序的程序名、保存的更新通知的標(biāo)題和內(nèi)容等相關(guān)的關(guān)鍵字。
更進(jìn)一步地,在將被禁止輸出的更新通知保存至通知暫存列表之前,本實(shí)施例中的更新通知處理方法還包括:
判斷所述通知暫存列表中是否存在對應(yīng)的應(yīng)用程序與所述被禁止輸出的更新通知對應(yīng)的應(yīng)用程序相同的更新通知;
若是,則丟棄所述被禁止輸出的更新通知,或者執(zhí)行將被禁止輸出的更新通知保存至通知暫存列表的步驟并且丟棄所述通知暫存列表中對應(yīng)的應(yīng)用程序判斷結(jié)果相同的所述更新通知;
若否,則執(zhí)行將所述被禁止輸出的更新通知保存至通知暫存列表的步驟。
可以理解的是,由于某些應(yīng)用程序可能長期在終端的后臺運(yùn)行,或者某些應(yīng)用程序會在短時間內(nèi)進(jìn)行兩次版本更新,若將應(yīng)用程序的每次被禁止輸出的更新通知均保存至通知暫存列表中,通知暫存列表中很可能存在兩條甚至多條更新通知對應(yīng)的應(yīng)用程序是同一個應(yīng)用程序的情況。因此,在將被禁止輸出的更新通知保存至通知暫存列表之前,可以先判斷該通知暫存列表中是否已存在該應(yīng)用程序的更新通知,若是,則只需保留其中一條更新通知即可,否則,才將該被禁止輸出的更新通知保存至通知暫存列表中。
其中,在保留其中一條更新通知時,可以選擇保留已保存在通知暫存列表中的“舊”的更新通知,也可以選擇保留“新”的被禁止輸出的更新通知,而刪除通知暫存列表中已有的更新通知。
更進(jìn)一步地,在輸出所述通知暫存列表中的更新通知之后,還可以清空所述通知暫存列表,避免通知暫存列表中的相同的更新通知反復(fù)被輸出,造成系統(tǒng)資源的浪費(fèi)。
更進(jìn)一步地,本實(shí)施例中,若監(jiān)聽到所述終端上正在運(yùn)行的應(yīng)用程序被關(guān)閉,則可以刪除所述通知暫存列表中與被關(guān)閉的所述應(yīng)用程序?qū)?yīng)的更新通知。具體地,可以在監(jiān)聽到所述終端上正在運(yùn)行的應(yīng)用程序被關(guān)閉(或清理)之后,在通知暫存列表中的各個更新通知中搜索該被關(guān)閉的應(yīng)用程序的程序名,找到包含該程序名的更新通知,然后將找到的該更新通知刪除??梢岳斫獾氖?,當(dāng)某個程序被徹底關(guān)閉后再次打開基本上都會再次檢測是否需要更新,這個時候就會出現(xiàn)更新通知,而不再需要進(jìn)行額外的通知。
在本實(shí)施例中,可以理解的是,若監(jiān)聽到的所述通知信息為應(yīng)用程序的更新通知,但是所述終端處于第二網(wǎng)絡(luò)狀態(tài)下時,則應(yīng)當(dāng)采用正常方式處理該更新通知,比如可以直接輸出該更新通知以提示用戶。
本實(shí)施例中,監(jiān)聽終端上應(yīng)用程序的更新通知;然后,若監(jiān)聽到所述更新通知并且所述終端處于第一網(wǎng)絡(luò)狀態(tài)下,則禁止所述終端輸出所述更新通知。從而,可以避免終端在第一網(wǎng)絡(luò)狀態(tài)下向用戶輸出更新通知,減少更新通知給用戶使用造成的干擾。
上面主要描述了一種更新通知處理方法,下面將對一種更新通知處理裝置進(jìn)行詳細(xì)描述。
圖2示出了本發(fā)明實(shí)施例中一種更新通知處理裝置一個實(shí)施例結(jié)構(gòu)圖。
本實(shí)施例中,一種更新通知處理裝置包括:
更新通知監(jiān)聽模塊201,用于監(jiān)聽終端上應(yīng)用程序的更新通知;
禁止通知輸出模塊202,用于若監(jiān)聽到所述更新通知并且所述終端處于第一網(wǎng)絡(luò)狀態(tài)下,則禁止所述終端輸出所述更新通知。
進(jìn)一步地,所述更新通知處理裝置還可以包括:
更新通知保存模塊,用于將被禁止輸出的更新通知保存至通知暫存列表;
更新通知輸出模塊,用于若監(jiān)聽到所述終端從第一網(wǎng)絡(luò)切換至第二網(wǎng)絡(luò),則輸出所述通知暫存列表中的更新通知。
進(jìn)一步地,所述更新通知處理裝置還可以包括:
判斷模塊,用于判斷所述通知暫存列表中是否存在對應(yīng)的應(yīng)用程序與所述被禁止輸出的更新通知對應(yīng)的應(yīng)用程序相同的更新通知;
第一處理模塊,用于若所述判斷模塊的判斷結(jié)果為是,則丟棄所述被禁止輸出的更新通知,或者觸發(fā)所述更新通知保存模塊并且丟棄所述通知暫存列表中對應(yīng)的應(yīng)用程序判斷結(jié)果相同的所述更新通知;
第二處理模塊,用于若所述判斷模塊的判斷結(jié)果為否,則觸發(fā)所述更新通知保存模塊。
進(jìn)一步地,所述更新通知監(jiān)聽模塊具體用于監(jiān)聽終端上正在運(yùn)行的應(yīng)用程序在啟動后前預(yù)設(shè)時長內(nèi)發(fā)出的更新通知;
所述更新通知處理裝置還可以包括:
更新通知刪除模塊,用于若監(jiān)聽到所述終端上正在運(yùn)行的應(yīng)用程序被關(guān)閉,則刪除所述通知暫存列表中與被關(guān)閉的所述應(yīng)用程序?qū)?yīng)的更新通知。
進(jìn)一步地,所述更新通知處理裝置還可以包括:
列表清空模塊,用于在輸出所述通知暫存列表中的更新通知之后,清空所述通知暫存列表。
所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng),裝置和單元的具體工作過程,可以參考前述方法實(shí)施例中的對應(yīng)過程,在此不再贅述。
在本申請所提供的幾個實(shí)施例中,應(yīng)該理解到,所揭露的系統(tǒng),裝置和方法,可以通過其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上。可以根據(jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。
另外,在本發(fā)明各個實(shí)施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨(dú)物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。
所述集成的單元如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時,可以存儲在一個計(jì)算機(jī)可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(可以是個人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實(shí)施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機(jī)存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
以上所述,以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。