TW201545065A - 應用程式的更新提示方法和裝置 - Google Patents

應用程式的更新提示方法和裝置 Download PDF

Info

Publication number
TW201545065A
TW201545065A TW103132973A TW103132973A TW201545065A TW 201545065 A TW201545065 A TW 201545065A TW 103132973 A TW103132973 A TW 103132973A TW 103132973 A TW103132973 A TW 103132973A TW 201545065 A TW201545065 A TW 201545065A
Authority
TW
Taiwan
Prior art keywords
application
terminal device
information
specified conditions
probability
Prior art date
Application number
TW103132973A
Other languages
English (en)
Other versions
TWI630553B (zh
Inventor
Yan Wang
Li Wang
Original Assignee
Alibaba Group Services Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Services Ltd filed Critical Alibaba Group Services Ltd
Publication of TW201545065A publication Critical patent/TW201545065A/zh
Application granted granted Critical
Publication of TWI630553B publication Critical patent/TWI630553B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/004Error avoidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)
  • Telephone Function (AREA)

Abstract

本發明實施例提供了一種應用程式的更新方法和裝置,所述方法包括:當指定的應用程式具有可更新內容時,統計所述應用程式在一個或多個指定條件運行時出錯的機率;所述一個或多個指定條件包括應用程式屬性和/或運行環境;當所述出錯的機率滿足設定條件時,向符合所述一個或多個指定條件的終端設備推送應用程式更新提示。本發明實施例減少了推送其他不必要的更新提示的數量和頻率,減少了伺服器系統資源消耗,減少了終端設備對更新提示進行回應數量和頻率,也同樣減少了終端設備系統資源消耗,並且,更新提示的數量和頻率減少了,可以大大提升用戶體驗,再者,由於更新提示減少了,使得應用程式的更新數量也會隨之減少,大大減少了網路頻寬的佔用。

Description

應用程式的更新提示方法和裝置
本發明涉及通訊的技術領域,特別是涉及一種應用程式的更新提示方法和一種應用程式的更新提示裝置。
目前,隨著網際網路的高速發展,網路應用趨向多元化,尤其是隨著移動設備的大規模普及,諸如即時通訊工具、電子郵件、網頁流覽器等等應用程式(Application,簡稱App),被廣泛應用在用戶生活和工作的各個方面。
而由於應用程式市場競爭的愈趨激烈,以及競爭企業間技術的趨同,使得使用者體驗成為應用程式的競爭軟實力,成為衡量產品成功與否的一項指標。
而為了保持應用程式的競爭力,應用程式需要經常進行功能的改進,升級應用程式的版本,以提升用戶體驗。
在一般情況下,只要應用程式的版本進行了升級,每次都會向安裝有該應用程式的終端設備(例如移動設備)提示進行更新。
首先,應用程式發佈方頻繁地進行更新提示,使得發佈方的伺服器消耗大量的系統資源,而終端設備也需要頻 繁地對更新提示進行回應,也同樣消耗大量的終端設備系統資源。
其次,頻繁地進行更新提示,對用戶造成十分之大的困擾,用戶體驗十分之差。
再者,由於頻繁地進行更新提示,使用者只能透過應用程式更新解決這個困擾,使得大量的應用程式會被更新,佔用大量的網路頻寬。
因此,目前需要本領域技術人員迫切解決的一個技術問題就是:如何提出一種應用程式的更新機制,以減少更新提示的頻率,減少終端設備和伺服器的系統資源消耗,減少網路頻寬佔用,提升使用者體驗。
本發明實施例所要解決的技術問題是提供一種應用程式的更新提示方法方法,用以減少更新提示的頻率,減少終端設備和伺服器的系統資源消耗,減少網路頻寬佔用,提升使用者體驗。
相應的,本發明實施例還提供了一種應用程式的更新提示裝置,用以保證上述方法的實現及應用。
為了解決上述問題,本發明實施例公開了一種應用程式的更新方法,包括:當指定的應用程式具有可更新內容時,統計所述應用程式在一個或多個指定條件運行時出錯的機率;所述一個或多個指定條件包括應用程式屬性和/或運行環境; 當所述出錯的機率滿足設定條件時,向符合所述一個或多個指定條件的終端設備推送應用程式更新提示。
較佳地,所述統計所述應用程式在一個或多個指定條件中運行時出錯的機率的步驟包括:獲取在所述應用程式所屬終端設備中記錄的日誌資訊;所述日誌資訊包括所述應用程式在一個或多個指定條件運行時出錯的資訊,以及,所述應用程式在所述一個或多個指定條件被啟動的資訊;計算所述出錯的資訊與所述被啟動的資訊的數量比值,獲得所述應用程式在所述一個或多個指定條件中運行時出錯的機率。
較佳地,所述終端設備包括移動設備。
較佳地,所述程式屬性資訊至少包括所述應用程式的版本資訊;所述運行環境資訊包括以下至少一個:所述終端設備的型號資訊、所述終端設備的作業系統版本資訊、所述終端設備的網路資訊。
較佳地,所述向符合所述一個或多個指定條件的終端設備推送應用程式更新提示的步驟包括:向在所述一個或多個指定條件中的,預設數量詞的終端設備推送應用程式更新提示。
較佳地,所述向符合所述一個或多個指定條件中的終端設備推送應用程式更新提示的的步驟還包括:當所述預設數量的應用程式在所述一個或多個指定條 件運行出錯的機率相等或上升時,停止向目標終端設備推送應用程式更新提示;當所述預設數量的應用程式在所述一個或多個指定條件運行出錯的機率下降時,向目標終端設備推送應用程式更新提示;其中,所述目標終端設備為符合所述一個或多個指定條件的,所述預設數量的終端設備以外的終端設備。
本發明實施例還公開了一種應用程式的更新裝置,包括:機率統計模組,用於在指定的應用程式具有可更新內容時,統計所述應用程式在一個或多個指定條件運行時出錯的機率;所述一個或多個指定條件包括應用程式屬性和/或運行環境;提示推送模組,用於在所述出錯的機率滿足設定條件時,向符合所述一個或多個指定條件的終端設備推送應用程式更新提示。
較佳地,所述機率統計模組包括:日誌資訊獲取子模組,用於獲取在所述應用程式所屬終端設備中記錄的日誌資訊;所述日誌資訊包括所述應用程式在一個或多個指定條件運行時出錯的資訊,以及,所述應用程式在所述一個或多個指定條件被啟動的資訊;數量比值計算子模組,用於計算所述出錯的資訊與所述被啟動的資訊的數量比值,獲得所述應用程式在所述一個或多個指定條件中運行時出錯的機率。
較佳地,所述終端設備包括移動設備。
較佳地,所述應用程式屬性由應用程式屬性資訊進行表徵,所述運行環境由運行環境資訊進行表徵;其中,所述程式屬性資訊至少包括所述應用程式的版本資訊;所述運行環境資訊包括以下至少一個:所述終端設備的型號資訊、所述終端設備的作業系統版本資訊、所述終端設備的網路資訊。
較佳地,所述提示推送模組包括:第一推送子模組,用於向在所述一個或多個指定條件中的,預設數量詞的終端設備推送應用程式更新提示。
較佳地,所述提示推送模組還包括:停止推送子模組,用於在所述預設數量的應用程式在所述一個或多個指定條件運行出錯的機率相等或上升時,停止向目標終端設備推送應用程式更新提示;第二推送子模組,用於在所述預設數量的應用程式在所述一個或多個指定條件運行出錯的機率下降時,向目標終端設備推送應用程式更新提示;其中,所述目標終端設備為符合所述一個或多個指定條件的,所述預設數量的終端設備以外的終端設備。
與現有技術相比,本發明實施例包括以下優點:本發明實施例在指定的應用程式具有可更新內容時,統計所述應用程式在一個或多個指定條件運行時出錯的機率,當出錯的機率滿足設定條件時,則向在該一個或多個 指定條件中應用程式所屬的終端設備推送應用程式更新提示,一方面,減少了推送其他不必要的更新提示的數量和頻率,減少了伺服器系統資源消耗,減少了終端設備對更新提示進行回應數量和頻率,也同樣減少了終端設備系統資源消耗,並且,更新提示的數量和頻率減少了,可以大大提升用戶體驗,再者,由於更新提示減少了,使得應用程式的更新數量也會隨之減少,大大減少了網路頻寬的佔用。另一方面,針對出錯的機率進行更新,可以有效減少終端設備存在的閃退Crash等錯誤發生的幾率,提高應用程式運行的穩定性,進一步提升用戶體驗。
本發明實施例監控進行了更新的應用程式出錯的機率,如果出錯的機率相等或上升,則表明更新後的應用程式可能存在新的漏洞/缺陷,或者未有解決之前的漏洞/缺陷等等,不適宜廣泛推廣,因此可以停止向其他滿足一個或多個條件的終端設備推送更新提示,進一步減少更新提示的數量和頻率,減少伺服器和終端設備的系統資源消耗,減少網路頻寬的佔用;如果出錯的機率下降,則表明更新後的應用程式解決之前的漏洞/缺陷等問題,適宜廣泛推廣,因此可以繼續向其他滿足一個或多個條件的終端設備推送更新提示,保證了應用程式的有效性,提高了應用程式更新提示的發送效率,進而提高了應用程式的更新效率。
101、102‧‧‧步驟
201‧‧‧機率統計模組
202‧‧‧提示推送模組
圖1是本發明的一種應用程式的更新提示方法實施例的步驟流程圖;圖2是本發明的一種應用程式的更新提示裝置實施例的結構方塊圖。
為使本發明的上述目的、特徵和優點能夠更加明顯易懂,下面結合圖式和具體實施方式對本發明作進一步詳細的說明。
參照圖1,示出了本發明的一種應用程式的更新提示方法實施例的步驟流程圖,具體可以包括如下步驟:步驟101,當指定的應用程式具有可更新內容時,統計所述應用程式在一個或多個指定條件運行時出錯的機率;在本發明實施例中,應用程式可以指為了完成一項或多項功能而被開發運行於作業系統之上的電腦程式,例如用於即時進行通訊的即時通訊工具、用於收發電子郵件的電子郵箱、用於流覽網頁的流覽器等等。
可更新的內容可以包括新版本的應用程式、補丁等等,本發明實施例對此不加以限制。
在實際應用中,應用程式經常出現Crash(閃退)等錯誤,尤其是在移動設備中,例如採用移動設備中的應用程式進行線上購物突然退出了,或者應用程式卡著不動彈而必須關閉重啟,或者移動設備當機了。可見,Crash是 影響應用程式的穩定運行的一個主要因素,對用戶體驗影響十分之大。因此開發者需要及時針對應用程式的Crash等錯誤進行修復,以降低應用程式出錯的機率。
在本發明的一種較佳實施例中,步驟101可以包括如下子步驟:子步驟S11,獲取在所述應用程式所屬終端設備中記錄的日誌資訊;其中,所述日誌資訊可以包括所述應用程式在一個或多個指定條件運行時出錯的資訊,以及,所述應用程式在所述一個或多個指定條件被啟動的資訊;在具體實現中,所述一個或多個指定條件可以包括應用程式屬性和/或運行環境;而所述應用程式屬性可以由應用程式屬性資訊進行表徵,所述運行環境可以由運行環境資訊進行表徵。
而在本發明實施例中,所述終端設備可以包括移動設備,例如平板電腦、個人數位助理、手機等等。由於移動設備的記憶體、硬碟、CPU(Central Processing Unit,中央處理器)等對應用程式運行狀態存在影響,而作業系統(例如安卓Android、IOS、Windows Phone等)也不是非常完善,因此在移動設備中會時常出現應用程式的Crash等錯誤。
當然,終端設備也可以包括電子計算機、智慧電視等等,本發明實施例對此不加以限制。
則在本發明實施例的一種較佳示例中,所述程式屬性 資訊可以至少包括所述應用程式的版本資訊;所述運行環境資訊可以包括以下至少一個:所述終端設備的型號資訊、所述終端設備的作業系統版本資訊、所述終端設備的網路資訊。
在實際應用中,應用程式出錯的機率與應用程式的版本、所述終端設備的型號資訊、所述終端設備的作業系統版本資訊、所述終端設備的聯網方式資訊等四個指定條件的關聯比較大。應用程式的版本、所述終端設備的型號資訊、所述終端設備的作業系統版本資訊、所述終端設備的網路連線方式資訊等資訊為影響應用程式出錯的機率的重要因素。
每次應用程式的版本的更新都可能會涉及內部代碼的修改。應用程式的功能以及性能在每個版本中都會有所不同,而在應用程式設計之初,沒可能面面俱到,因此諸如Crash等出錯的因素比較多。
不同型號的終端設備,尤其是移動設備,其硬體設備均不一致,記憶體和硬碟的大小不同會導致應用程式的Crash等出錯的機率不同,CPU的佔用情況不同也會導致應用程式的Crash等出錯的機率不同。
不同版本的作業系統,尤其是在移動設備中的作業系統,數量多、差異大。例如,對於IOS作業系統,版本不同,會導致跟應用程式的程式碼融合度不一樣,比如,調用作業系統裡的介面有所改變,會導致版本低的應用程式調用錯誤,導致應用程式的Crash等錯誤。又例如,對於 Android作業系統,由於開源特性,衍生出很多基於Android開發的作業系統,這些作業系統雖然底層都是Android,但是在不同作業系統之間,會有不同的介面,存在相容性問題,容易導致應用程式的Crash等錯誤。
終端設備的網路資訊可以包括網路連接方式(比如有線連接、無線連接)、網路信號強度、網路類型(比如CDMA(無線網路通訊)、GPRS(利用展頻的通訊技術)等網路制式類型)中的一種或多種資訊。由於應用程式應用等原因,終端設備經常需要連接網路而使用者經常活動的區域相對比較集中,例如工作的地方、居住的地方等等,由於基地台覆蓋範圍、信號干擾等問題,終端設備連接的網路可能會存在信號弱、網速慢等情況,而信號弱的網路可能導致出現更多的應用程式的Crash等錯誤,網路速度慢也可能會導致更多的應用程式的Crash等錯誤,而網路信號弱、速度慢等情況在移動設備連接的網路中比較常見。
當然,上述指定條件只是作為示例,在實施本發明實施例時,可以根據實際情況設置其他指定條件,例如與當前應用程式不相容的應用程式、單次運行時長等等,本發明實施例對此不加以限制。另外,除了上述指定條件外,本領域技術人員還可以根據實際需要採用其它指定條件,本發明實施例對此也不加以限制。
應用本發明實施例,可以預先在應用程式中預埋能實現記錄並返回應用程式屬性(例如應用程式的版本資訊 等)和/或運行環境(例如終端設備的型號資訊、終端設備的作業系統版本資訊、終端設備的網路連線方式資訊等)等資訊的程式碼(即埋點)。在應用程式出現運行時異常信號時,終端設備系統可以向應用程式發送異常信號。當應用程式監聽到該異常信號時,可以調用所述埋點對應的API(Application Programming Interface,應用程式設計發展介面)。透過該API可以,執行所述埋點以記錄當前的日誌資訊。該日誌資訊中包含所述應用程式運行異常時的應用程式屬性(例如應用程式的版本資訊等)和/或運行環境(例如終端設備的型號資訊、終端設備的作業系統版本資訊、終端設備的網路資訊等)等資訊。透過該API還可以收集stacktrace資訊(即所述應用程式發生運行異常的原因的相關資訊),將該stacktrace資訊寫入日誌資訊中。當應用程式接收到該異常信號後,回應該異常信號,退出執行。
另外,應用程式的使用日誌也可以被記錄在日誌資訊中,比如應用程式被啟動時可以記錄一條日誌資訊。
伺服器可以透過應用程式中的埋點主動採集所述應用程式發生錯誤時的日誌資訊,或者,終端設備可以在指定的情形(例如每隔一定時間、日誌資訊超過一定數量、移動設備關機、應用程式關閉等)下透過埋點將日誌資訊上傳到伺服器,本發明實施例對此不加以限制。
子步驟S12,計算所述出錯的資訊與所述被啟動的資訊的數量比值,獲得所述應用程式在所述一個或多個指定 條件中運行時出錯的機率。
伺服器可以對保存的日誌資訊,進行資料分析,計算出錯的機率。
對於統計單個指定條件中出錯的機率,例如計算在某一指定的終端設備型號下出錯的機率,首先可以統計出每一個攜帶有該終端設備型號資訊的出錯資訊的數量A,然後再統計出應用程式在該終端設備型號的設備上被啟動的資訊的數量B,則在終端設備型號的條件下出錯的機率=出錯資訊的數量A/被啟動的資訊的數量B。
對於統計複合指定條件(即多個指定條件)中出錯的機率,以計算在指定的應用程式版本、終端設備型號和終端設備作業系統版本的條件下應用程式出錯的機率作為示例進行說明。例如,指定應用程式版本為1.1.20140101,終端設備型號為X,終端設備作業系統版本Android(安卓)4.4。可以統計攜帶有應用程式的版本資訊為1.1.20140101、終端設備的型號資訊為X、終端設備的作業系統版本資訊為Android 4.4的出錯資訊的數量C。統計出應用程式被啟動的資訊的數量D。則應用程式在上述指定的應用程式版本、終端設備型號和終端設備作業系統版本的條件下的出錯的機率=出錯資訊的數量C/被啟動的資訊的數量D。
步驟102,當所述出錯的機率滿足預設條件時,向符合所述一個或多個指定條件的終端設備推送應用程式更新提示。在實際應用中,該預設條件可以包括出錯的機率大 於預設的機率閾值。
在應用此預設條件時,可以首先掃描單個指定條件時出錯的機率,有超過機率閾值的則可以使用該單個指定條件,提示符合該指定條件的使用者進行應用程式的更新。當單個條件下都沒有超過機率閾值的情況下,則可以掃描複合指定條件時出錯的機率,有超過機率閾值的則可以使用該複合指定條件,提示符合該複合條件的使用者進行應用程式的更新。
需要說明的是,本發明實施例可以應用該指定條件中任意的一個、兩個、三個、四個等等,本發明實施例對此不加以限制。
該預設條件也可以包括在該一個或多個指定條件中,順序排序在前的一個或多個出錯的機率。
則應用此預設條件時,可以向符合該一個或多個指定條件的,出錯機率最大的一個或多個終端設備推送應用程式更新提示。
此外,本領域技術人員還可以根據實際情況設置其他設定條件,本本發明實施例對此不加以限制。
更新提示可以為文字提示資訊、圖片提示資訊、聲音提示資訊等等,本發明實施例對此亦不加以限制。
例如,應用程式存在了一些設計缺陷,使得在某個型號的終端設備上出錯的機率比較高。而新版本的應用程式主要去修復設計缺陷,因此,在這種情況下可以檢測出當前的應用程式在哪一型號的終端設備上具有較高的出錯的 機率,該出錯的機率可以大於預設的機率閾值,則可以選擇向那些具有較高的出錯的機率的終端設備推送所述應用程式的更新提示。
應用程式在各個終端設備的出錯的機率可以如下表所示:
在單個指定條件下機率閾值可以設置得較高,假設機率閾值為5%,則在上述示例中,可以向型號B對應的終端設備推送應用程式A的更新提示,而可以不向型號A、型號C和型號D對應的終端設備推送應用程式的更新提示,免除了不必要的更新。
又例如,5.7版本的應用程式存在了一個漏洞,使得在作業系統為Android 2.2.3版本、型號為B的終端設備中採用GPRS(無線網路通訊)聯網時出錯的機率比較高。而新版本的應用程式主要去修復在Android 2.2.3版本的終端設備B中出現的漏洞,以降低採用GPRS聯網時出錯的機率,因此,在這種情況下可以使用符合指定條件--應用程式的版本資訊、終端設備的型號資訊、終端 設備的作業系統版本資訊和終端設備的聯網方式資訊,檢測到哪些滿足條件組合下的具有較高的出錯的機率的應用程式。
應用程式在不同組合條件下的出錯的機率可以如下表所示:
在複合指定條件下機率閾值可以設置得較低,假設機率閾值為2%,則可以向安裝有5.7版本的應用程式、Android 2.2.3版本的作業系統、採用GPRS通訊協定的終端設備推送所述應用程式的更新提示,而可以不向其他終端設備推送應用程式的更新提示。
本發明實施例在應用程式具有可更新內容時,統計所述應用程式在一個或多個指定條件運行時出錯的機率,當出錯的機率滿足設定條件時,則向在該一個或多個指定條件中應用程式所屬的終端設備推送應用程式更新提示,一方面,減少了推送其他不必要的更新提示的數量和頻率,減少了伺服器系統資源消耗,減少了終端設備對更新提示進行回應數量和頻率,也同樣減少了終端設備系統資源消 耗,並且,更新提示的數量和頻率減少了,可以大大提升用戶體驗,再者,由於更新提示減少了,使得應用程式的更新數量也會隨之減少,大大減少了網路頻寬的佔用。另一方面,針對出錯的機率進行更新,可以有效減少終端設備存在的閃退Crash等錯誤發生的幾率,提高應用程式運行的穩定性,進一步提升用戶體驗。
在本發明的一種較佳實施例中,步驟102可以包括如下子步驟:子步驟S21,向在所述一個或多個指定條件中的,預設數量詞的應用程式所屬的終端設備推送應用程式更新提示。
在具體實現中,可以設置一個資料m(m為正數且m100),在應用程式需要更新時,向m%個滿足一個或多個指定條件的終端設備推送應用程式的更新提示。
需要說明的是,資料m可以由本領域的技術人員根據實際情況進行設定,例如,可以預設設置資料m=100,即預設對所有滿足一個或多個指定條件的終端設備推送應用程式的更新提示。
在本發明的一種較佳實施例中,步驟102還可以包括如下子步驟:子步驟S22,當所述預設數量的應用程式在所述一個或多個指定條件運行出錯的機率相等或上升時,停止向目標終端設備推送應用程式更新提示;子步驟S23,當所述預設數量的應用程式在所述一個 或多個指定條件運行出錯的機率下降時,向目標終端設備推送應用程式更新提示;其中,所述目標終端設備為符合所述一個或多個指定條件的,所述預設數量的終端設備以外的終端設備。
應用本發明實施例,伺服器可以在應用程式更新一段時間之後,透過終端設備的埋點主動採集日誌資訊,或者,終端設備可以在指定的情形(例如每隔一定時間、移動設備關機、應用程式關閉等)下透過埋點將日誌資訊上傳到伺服器。伺服器透過該日誌資訊計算在這一段時間內,進行了更新的應用程式出錯的機率,並與未進行更新時出錯的機率進行對比。
本發明實施例監控進行了更新的應用程式出錯的機率,如果出錯的機率相等或上升,則表明更新後的應用程式可能存在新的漏洞/缺陷,或者未有解決之前的漏洞/缺陷等等,不適宜廣泛推廣,因此可以停止向其他滿足一個或多個條件的終端設備推送更新提示,進一步減少更新提示的數量和頻率,減少伺服器和終端設備的系統資源消耗,減少網路頻寬的佔用;如果出錯的機率下降,則表明更新後的應用程式解決之前的漏洞/缺陷等問題,適宜廣泛推廣,因此可以繼續向其他滿足一個或多個條件的終端設備推送更新提示,保證了應用程式的有效性,提高了應用程式更新提示的發送效率,進而提高了應用程式的更新效率。
需要說明的是,對於方法實施例,為了簡單描述,故 將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發明實施例並不受所描述的動作順序的限制,因為依據本發明實施例,某些步驟可以採用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬於較佳實施例,所涉及的動作並不一定是本發明實施例所必須的。
參照圖2,示出了本發明一種應用程式的更新裝置實施例的結構框圖,具體可以包括如下模組:機率統計模組201,用於在指定的應用具有可更新內容時,統計所述應用程式在一個或多個指定條件運行時出錯的機率;所述一個或多個指定條件包括應用程式屬性和/或運行環境;提示推送模組202,用於在所述出錯的機率滿足設定條件時,向符合所述一個或多個指定條件的終端設備推送應用程式更新提示。
在本發明的一種較佳實施例中,所述機率統計模組201可以包括如下子模組:日誌資訊獲取子模組,用於獲取在所述應用程式所屬終端設備中記錄的日誌資訊;所述日誌資訊包括所述應用程式在一個或多個指定條件運行時出錯的資訊,以及,所述應用程式在所述一個或多個指定條件被啟動的資訊;數量比值計算子模組,用於計算所述出錯的資訊與所述被啟動的資訊的數量比值,獲得所述應用程式在所述一個或多個指定條件中運行時出錯的機率。
在本發明的一種較佳實施例中,所述終端設備可以包括移動設備。
在本發明的一種較佳實施例中,所述應用程式屬性可以由應用程式屬性資訊進行表徵,所述運行環境可以由運行環境資訊進行表徵;其中,所述程式屬性資訊至少可以包括所述應用程式的版本資訊;所述運行環境資訊可以包括以下至少一個:所述終端設備的型號資訊、所述終端設備的作業系統版本資訊、所述終端設備的網路資訊。
在本發明的一種較佳實施例中,所述提示推送模組202可以包括如下子模組:第一推送子模組,用於向在所述一個或多個指定條件中的,預設數量詞的應用程式所屬的終端設備推送應用程式更新提示。
在本發明的一種較佳實施例中,所述提示推送模組202還可以包括如下子模組:停止推送子模組,用於在所述預設數量的應用程式在所述一個或多個指定條件運行出錯的機率相等或上升時,停止向目標終端設備推送應用程式更新提示;第二推送子模組,用於在所述預設數量的應用程式在所述一個或多個指定條件運行出錯的機率下降時,向目標終端設備推送應用程式更新提示;其中,所述目標終端設備為符合所述一個或多個指定 條件的,所述預設數量的終端設備以外的終端設備。
對於裝置實施例而言,由於其與方法實施例基本相似,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
本說明書中的各個實施例均採用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。
本領域內的技術人員應明白,本發明實施例的實施例可提供為方法、裝置、或電腦程式產品。因此,本發明實施例可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本發明實施例可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存介質(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。
在一個典型的配置中,所述電腦設備包括一個或多個處理器(CPU)、輸入/輸出介面、網路介面和記憶體。記憶體可能包括電腦可讀介質中的非永久性記憶體,隨機存取記憶體(RAM)和/或非易失性記憶體等形式,如唯讀記憶體(ROM)或快閃記憶體(flash RAM)。記憶體是電腦可讀介質的示例。電腦可讀介質包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現資訊儲存。資訊可以是電腦可讀指令、資料結構、程式的模組或其他資料。電腦的儲存介質的例子包括,但不限於相變記憶體(PRAM)、靜態隨機存取記憶體(SRAM)、動態隨機存取記 憶體(DRAM)、其他類型的隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電子抹除式可複寫唯讀記憶體(EEPROM)、快閃記憶體或其他記憶體技術、唯讀光碟唯讀記憶體(CD-ROM)、數位多功能光碟(DVD)或其他光學儲存、磁盒式磁帶,磁帶磁磁片儲存或其他磁性存放裝置或任何其他非傳輸介質,可用於儲存可以被計算設備訪問的資訊。按照本文中的界定,電腦可讀介質不包括非持續性的電腦可讀媒體(transitory media),如調製的資料信號和載波。
本發明實施例是參照根據本發明實施例的方法、終端設備(系統)、和電腦程式產品的流程圖和/或方塊圖來描述的。應理解可由電腦程式指令實現流程圖和/或方塊圖中的每一流程和/或方塊、以及流程圖和/或方塊圖中的流程和/或方塊的結合。可提供這些電腦程式指令到通用電腦、專用電腦、嵌入式處理機或其他可程式設計資料處理終端設備的處理器以產生一個機器,使得透過電腦或其他可程式設計資料處理終端設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能的裝置。
這些電腦程式指令也可儲存在能引導電腦或其他可程式設計資料處理終端設備以特定方式工作的電腦可讀記憶體中,使得儲存在該電腦可讀記憶體中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能。
這些電腦程式指令也可裝載到電腦或其他可程式設計資料處理終端設備上,使得在電腦或其他可程式設計終端設備上執行一系列操作步驟以產生電腦實現的處理,從而在電腦或其他可程式設計終端設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能的步驟。
儘管已描述了本發明實施例的較佳實施例,但本領域內的技術人員一旦得知了基本創造性概念,則可對這些實施例做出另外的變更和修改。所以,所附申請專利範圍意欲解釋為包括較佳實施例以及落入本發明實施例範圍的所有變更和修改。
最後,還需要說明的是,在本文中,諸如第一和第二等之類的關係術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關係或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者終端設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者終端設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個......”限定的要素,並不排除在包括所述要素的過程、方法、物品或者終端設備中還存在另外的相同要素。
以上對本發明所提供的一種應用程式的更新提示方法 和一種應用程式的更新提示裝置,進行了詳細介紹,本文中應用了具體個例對本發明的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本發明的方法及其核心思想;同時,對於本領域的一般技術人員,依據本發明的思想,在具體實施方式及應用範圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本發明的限制。

Claims (12)

  1. 一種應用程式的更新方法,其特徵在於,包括:當指定的應用程式具有可更新內容時,統計該應用程式在一個或多個指定條件運行時出錯的機率;該一個或多個指定條件包括應用程式屬性和/或運行環境;當該出錯的機率滿足設定條件時,向符合該一個或多個指定條件的終端設備推送應用程式更新提示。
  2. 根據請求項1所述的方法,其中,該統計該應用程式在一個或多個指定條件中運行時出錯的機率的步驟包括:獲取在該應用程式所屬終端設備中記錄的日誌資訊;該日誌資訊包括該應用程式在一個或多個指定條件運行時出錯的資訊,以及,該應用程式在該一個或多個指定條件被啟動的資訊;計算該出錯的資訊與該被啟動的資訊的數量比值,獲得該應用程式在該一個或多個指定條件中運行時出錯的機率。
  3. 根據請求項1所述的方法,其中,該終端設備包括移動設備。
  4. 根據請求項1或2或3所述的方法,其中,該程式屬性資訊至少包括該應用程式的版本資訊;該運行環境資訊包括以下至少一個:該終端設備的型號資訊、該終端設備的作業系統版本資訊、該終端設備的網路資訊。
  5. 根據請求項1或2或3所述的方法,其中,該向符合該一個或多個指定條件的終端設備推送應用程式更新提示的步驟包括:向在該一個或多個指定條件中的,預設數量詞的終端設備推送應用程式更新提示。
  6. 根據請求項5所述的方法,其中,該向符合該一個或多個指定條件中的終端設備推送應用程式更新提示的的步驟還包括:當該預設數量的應用程式在該一個或多個指定條件運行出錯的機率相等或上升時,停止向目標終端設備推送應用程式更新提示;當該預設數量的應用程式在該一個或多個指定條件運行出錯的機率下降時,向目標終端設備推送應用程式更新提示;其中,該目標終端設備為符合該一個或多個指定條件的,該預設數量的終端設備以外的終端設備。
  7. 一種應用程式的更新裝置,其特徵在於,包括:機率統計模組,用於在指定的應用程式具有可更新內容時,統計該應用程式在一個或多個指定條件運行時出錯的機率;該一個或多個指定條件包括應用程式屬性和/或運行環境;提示推送模組,用於在該出錯的機率滿足設定條件時,向符合該一個或多個指定條件的終端設備推送應用程式更新提示。
  8. 根據請求項7所述的裝置,其中,該機率統計模組包括:日誌資訊獲取子模組,用於獲取在該應用程式所屬終端設備中記錄的日誌資訊;該日誌資訊包括該應用程式在一個或多個指定條件運行時出錯的資訊,以及,該應用程式在該一個或多個指定條件被啟動的資訊;數量比值計算子模組,用於計算該出錯的資訊與該被啟動的資訊的數量比值,獲得該應用程式在該一個或多個指定條件中運行時出錯的機率。
  9. 根據請求項7所述的裝置,其中,該終端設備包括移動設備。
  10. 根據請求項7或8或9所述的裝置,其中,該應用程式屬性由應用程式屬性資訊進行表徵,該運行環境由運行環境資訊進行表徵;其中,該程式屬性資訊至少包括該應用程式的版本資訊;該運行環境資訊包括以下至少一個:該終端設備的型號資訊、該終端設備的作業系統版本資訊、該終端設備的網路資訊。
  11. 根據請求項7或8或9所述的裝置,其中,該提示推送模組包括:第一推送子模組,用於向在該一個或多個指定條件中的,預設數量詞的終端設備推送應用程式更新提示。
  12. 根據請求項11所述的裝置,其中,該提示推送 模組還包括:停止推送子模組,用於在該預設數量的應用程式在該一個或多個指定條件運行出錯的機率相等或上升時,停止向目標終端設備推送應用程式更新提示;第二推送子模組,用於在該預設數量的應用程式在該一個或多個指定條件運行出錯的機率下降時,向目標終端設備推送應用程式更新提示;其中,該目標終端設備為符合該一個或多個指定條件的,該預設數量的終端設備以外的終端設備。
TW103132973A 2014-05-27 2014-09-24 Application update prompt method and device TWI630553B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
??201410228341.4 2014-05-27
CN201410228341.4A CN105224343B (zh) 2014-05-27 2014-05-27 一种应用程序的更新提示方法和装置

Publications (2)

Publication Number Publication Date
TW201545065A true TW201545065A (zh) 2015-12-01
TWI630553B TWI630553B (zh) 2018-07-21

Family

ID=54699654

Family Applications (1)

Application Number Title Priority Date Filing Date
TW103132973A TWI630553B (zh) 2014-05-27 2014-09-24 Application update prompt method and device

Country Status (5)

Country Link
US (1) US9552199B2 (zh)
CN (1) CN105224343B (zh)
HK (1) HK1217127A1 (zh)
TW (1) TWI630553B (zh)
WO (1) WO2015183809A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI603204B (zh) * 2016-05-18 2017-10-21 群邁通訊股份有限公司 雲端裝置、終端裝置及異常處理方法

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9772837B2 (en) * 2015-06-29 2017-09-26 Verizon Patent And Licensing Inc. Dynamic delivery of code and fixes
CN105117464B (zh) * 2015-08-25 2019-02-15 北京金山安全软件有限公司 一种应用推送方法、装置及服务设备
CN107239267A (zh) * 2016-03-29 2017-10-10 百度在线网络技术(北京)有限公司 应用程序的修复扩展方法和装置
CN106843952B (zh) * 2017-01-13 2023-02-28 百度在线网络技术(北京)有限公司 更新应用中功能模块的方法与装置
CN108279915B (zh) * 2017-03-01 2021-04-02 阿里巴巴(中国)有限公司 应用程序的升级方法、装置和终端
CN107423097B (zh) * 2017-07-28 2019-02-22 北京明朝万达科技股份有限公司 一种应用程序的管理方法和装置
CN107391207A (zh) * 2017-08-01 2017-11-24 深信服科技股份有限公司 一种基于云平台的终端更新系统及方法
CN108664401B (zh) * 2018-05-11 2021-10-12 创新先进技术有限公司 埋点合理性的评估方法及装置
CN108959476A (zh) * 2018-06-20 2018-12-07 何中 客户端角标、数据实时更新的方法
CN108897579A (zh) * 2018-06-29 2018-11-27 联想(北京)有限公司 一种信息处理方法、电子设备及系统
CN110493336B (zh) * 2019-08-15 2021-11-16 问问智能信息科技有限公司 一种灰度发布过程中确定目标用户端的方法和装置
US11768701B2 (en) * 2019-09-17 2023-09-26 Western Digital Technologies, Inc. Exception analysis for data storage devices
CN110764974B (zh) * 2019-12-25 2020-04-17 武汉慧联无限科技有限公司 一种监控方法、装置及存储介质
CN111737630B (zh) * 2020-08-25 2021-06-25 智者四海(北京)技术有限公司 用于记录用户访问路径的方法
CN112040320B (zh) * 2020-08-31 2022-06-03 北京奇艺世纪科技有限公司 一种电视果应用的升级方法及装置
CN114895949B (zh) * 2022-07-12 2023-01-10 荣耀终端有限公司 应用程序的更新方法、介质和终端设备

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5694546A (en) 1994-05-31 1997-12-02 Reisman; Richard R. System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list
US6754894B1 (en) * 1999-12-03 2004-06-22 Command Audio Corporation Wireless software and configuration parameter modification for mobile electronic devices
US6880086B2 (en) * 2000-05-20 2005-04-12 Ciena Corporation Signatures for facilitating hot upgrades of modular software components
US7017085B2 (en) * 2002-05-30 2006-03-21 Capital One Financial Corporation Systems and methods for remote tracking of reboot status
US20050262500A1 (en) 2004-05-19 2005-11-24 Michael Stanley System and method for updating information handling system applications at manufacture
US20060106806A1 (en) * 2004-11-12 2006-05-18 Smith Micro Software, Inc. Software update for a plurality of mobile devices
JP2006331394A (ja) * 2005-04-25 2006-12-07 Ricoh Co Ltd プログラムバージョン管理方法、プログラム及び印刷システム
FR2888353A1 (fr) * 2005-07-11 2007-01-12 Thomson Licensing Sas Soc Par Procede de detection d'erreurs lors de l'initialisation d'un appareil electronique et appareil implementant le procede
US20070192763A1 (en) 2006-02-15 2007-08-16 Helvick Richard E Method and system for scheduling application of software updates
US8620994B2 (en) 2006-02-23 2013-12-31 Qualcomm Incorporated System and method for scheduling content updates in a content-based application
US20120210310A1 (en) 2007-03-23 2012-08-16 Zenzui, Inc. Systems and methods for coordinating the updating of applications on a computing device
US8255902B1 (en) * 2008-03-17 2012-08-28 Symantec Corporation Systems and methods for determining and quantifying the impact of an application on the health of a system
US8572571B2 (en) 2009-07-23 2013-10-29 Shuv Gray Llc Modification of terminal and service provider machines using an update server machine
CN101719073B (zh) * 2009-11-20 2012-10-03 浪潮集团山东通用软件有限公司 一种基于智能客户端的按需下载实现方法
US9158650B2 (en) * 2010-08-04 2015-10-13 BoxTone, Inc. Mobile application performance management
US9137288B2 (en) 2010-12-20 2015-09-15 Yahoo! Inc. Scalable push-based architecture for web applications
US8910142B2 (en) * 2011-04-13 2014-12-09 Xerox Corporation Method and system to regulate the electronic availability of application software updates based on information collected regarding installation, usage and support for these updates
US9600395B2 (en) * 2011-12-07 2017-03-21 Siemens Aktiengesellschaft Software quality evaluating system and methods for determining an extent of software code changes
TW201327388A (zh) * 2011-12-21 2013-07-01 Acer Inc 電子裝置與其作業系統更新方法
CN102662705B (zh) * 2012-03-31 2015-06-03 中国工商银行股份有限公司 一种对计算机集群的系统环境进行升级的系统及方法
CN102842007B (zh) * 2012-07-16 2015-03-11 腾讯科技(深圳)有限公司 移动终端应用程序的访问控制方法和系统
US9542176B2 (en) * 2012-08-20 2017-01-10 Microsoft Technology Licensing, Llc Predicting software build errors
US9535774B2 (en) * 2013-09-09 2017-01-03 International Business Machines Corporation Methods, apparatus and system for notification of predictable memory failure

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI603204B (zh) * 2016-05-18 2017-10-21 群邁通訊股份有限公司 雲端裝置、終端裝置及異常處理方法

Also Published As

Publication number Publication date
US9552199B2 (en) 2017-01-24
HK1217127A1 (zh) 2016-12-23
US20150347122A1 (en) 2015-12-03
WO2015183809A1 (en) 2015-12-03
TWI630553B (zh) 2018-07-21
CN105224343A (zh) 2016-01-06
CN105224343B (zh) 2019-09-17

Similar Documents

Publication Publication Date Title
TWI630553B (zh) Application update prompt method and device
KR101855866B1 (ko) 전자 디바이스들 사이의 액티비티 계속
US9836346B2 (en) Error troubleshooting using a correlated knowledge base
US10552852B1 (en) Service monitor for monitoring and tracking the performance of applications running on different mobile devices
US20150341457A1 (en) Method and system for pushing information to end users adaptively
TWI622933B (zh) Client update method and device
US20120036498A1 (en) Mobile application performance management
US20150234652A1 (en) Techniques to identify and purge unused code
TW201608454A (zh) 一種後台應用的操作方法及裝置
CN110266505B (zh) 一种管理会话群的方法与设备
US11144601B2 (en) Mobile web scraping
US9148392B1 (en) Systems and methods for aggregating event information
TW201807560A (zh) 界面展示方法及裝置
WO2016110203A1 (zh) 一种文件路径的存储和本地文件的访问方法及装置
JP2016503202A (ja) ニュースフィードユーザーエントリーに基づくタスクの作成
US9148353B1 (en) Systems and methods for correlating computing problems referenced in social-network communications with events potentially responsible for the same
TW201734856A (zh) 頁面顯示的方法及裝置
US10713328B2 (en) Automated tagging application for maintaining up-to-date web analytics
CN108021464B (zh) 一种应用程序响应数据的兜底处理的方法以及装置
US10749772B1 (en) Data reconciliation in a distributed data storage network
WO2015139540A1 (zh) 一种用于解析视频网页的方法及装置
US9569433B1 (en) Mobile application analytics
CN111352992B (zh) 数据一致性检测方法、装置及服务器
WO2018166279A1 (zh) 一种群管理方法与装置
Kirsan et al. Improved access speed of the Codeigniter framework and REST APIs for the implementation of SIAKAD: Academic information system in Balikpapan schools