国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種應(yīng)用程序崩潰信息上報(bào)方法和裝置與流程

      文檔序號(hào):11432167閱讀:220來(lái)源:國(guó)知局
      一種應(yīng)用程序崩潰信息上報(bào)方法和裝置與流程

      本發(fā)明實(shí)施例涉及計(jì)算機(jī)技術(shù),尤其涉及一種應(yīng)用程序崩潰信息上報(bào)方法和裝置。



      背景技術(shù):

      目前,隨著計(jì)算機(jī)技術(shù)的發(fā)展,各種應(yīng)用程序(application,簡(jiǎn)稱app)應(yīng)用而生,滿足了用戶的不同需求。但是,由于應(yīng)用程序自身設(shè)計(jì)的缺陷、或者是由于應(yīng)用程序受到木馬外掛程序的影響,應(yīng)用程序在運(yùn)行的過(guò)程中會(huì)出現(xiàn)未知的運(yùn)行錯(cuò)誤,導(dǎo)致應(yīng)用程序無(wú)法正常運(yùn)行。此時(shí),需要將應(yīng)用程序的崩潰信息上報(bào)給服務(wù)器,以期測(cè)試工程師或軟件開(kāi)發(fā)師通過(guò)服務(wù)器中存儲(chǔ)的崩潰信息分析出應(yīng)用程序發(fā)生崩潰的原因,進(jìn)而基于分析出的原因及時(shí)地對(duì)應(yīng)用程序進(jìn)行修復(fù),以避免影響用戶的正常使用。

      現(xiàn)有的應(yīng)用程序崩潰信息上報(bào)方法,包括以下步驟:在應(yīng)用程序發(fā)生崩潰時(shí),收集應(yīng)用程序的崩潰信息,并將上述崩潰信息發(fā)送給服務(wù)器。其中,上述崩潰信息包括崩潰日志、客戶端設(shè)備的型號(hào)信息和應(yīng)用程序的版本信息等基礎(chǔ)信息。

      然而,當(dāng)測(cè)試工程師或軟件開(kāi)發(fā)師通過(guò)服務(wù)器中存儲(chǔ)的崩潰信息無(wú)法分析出應(yīng)用程序發(fā)生崩潰的原因時(shí),為找出應(yīng)用程序發(fā)生崩潰的原因,需復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài)。但是,當(dāng)采用現(xiàn)有的方法將應(yīng)用程序的崩潰信息上報(bào)給服務(wù)器時(shí),由于崩潰信息中僅包括一些基礎(chǔ)信息,這樣,測(cè)試工程師或軟件開(kāi)發(fā)師根據(jù)上述崩潰信息很難復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài),需要投入大量的人力和物力來(lái)復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài),復(fù)現(xiàn)成本較高。



      技術(shù)實(shí)現(xiàn)要素:

      有鑒于此,本發(fā)明實(shí)施例提供一種應(yīng)用程序崩潰信息上報(bào)方法和裝置,以解決采用現(xiàn)有方法上報(bào)的崩潰信息無(wú)法復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài)、進(jìn)而需要投入人力物力來(lái)復(fù)現(xiàn)、復(fù)現(xiàn)成本高的問(wèn)題。

      本發(fā)明實(shí)施例第一方面提供一種應(yīng)用程序崩潰信息上報(bào)方法,包括:

      在應(yīng)用程序發(fā)生崩潰時(shí),收集所述應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息;

      從所述應(yīng)用程序?qū)?yīng)的用戶行為日志中獲取用戶行為數(shù)據(jù);其中,所述用戶行為數(shù)據(jù)用于表征用戶使用所述應(yīng)用程序時(shí)執(zhí)行的操作行為;

      將所述崩潰信息和所述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器。

      進(jìn)一步地,所述在應(yīng)用程序發(fā)生崩潰時(shí),收集所述應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息之前,所述方法還包括:

      在所述應(yīng)用程序運(yùn)行的過(guò)程中,收集所述用戶行為數(shù)據(jù),并將所述用戶行為數(shù)據(jù)存儲(chǔ)在所述用戶行為日志中。

      進(jìn)一步地,所述在所述應(yīng)用程序運(yùn)行的過(guò)程中,收集所述用戶行為數(shù)據(jù),具體包括:

      在所述應(yīng)用程序運(yùn)行的過(guò)程中,判斷預(yù)定義事件是否發(fā)生;其中,所述預(yù)定義事件是采用埋點(diǎn)技術(shù)嵌入到所述應(yīng)用程序中的事件;

      若是,則將所述預(yù)定義事件對(duì)應(yīng)的用戶行為數(shù)據(jù)存儲(chǔ)在所述用戶行為日志中;其中,所述預(yù)定義事件對(duì)應(yīng)的用戶行為數(shù)據(jù)包括所述預(yù)定義事件的內(nèi)容信息和所述預(yù)定義事件發(fā)生時(shí)的時(shí)間信息。

      進(jìn)一步地,所述收集所述應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息之后,所述方法還包括:

      將所述崩潰信息存儲(chǔ)在所述應(yīng)用程序?qū)?yīng)的崩潰信息文件中;

      相應(yīng)地,

      所述從所述應(yīng)用程序?qū)?yīng)的用戶行為日志中獲取用戶行為數(shù)據(jù)和所述將所述崩潰信息和所述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器,具體包括:

      在所述應(yīng)用程序再次重新啟動(dòng)后,從所述應(yīng)用程序?qū)?yīng)的用戶行為日志中獲取所述用戶行為數(shù)據(jù);并從所述崩潰信息文件中獲取所述崩潰信息;

      將所述崩潰信息和所述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器。

      進(jìn)一步地,所述將所述崩潰信息和所述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器之后,所述方法還包括:

      將存儲(chǔ)在所述崩潰信息文件中的崩潰信息刪除。

      進(jìn)一步地,所述預(yù)定義事件包括點(diǎn)擊事件和搜索事件;所述崩潰信息包括崩潰日志、安裝所述應(yīng)用程序的客戶端設(shè)備的屬性信息和所述應(yīng)用程序的版本信息。

      本發(fā)明實(shí)施例第二方面提供一種應(yīng)用程序崩潰信息上報(bào)裝置,包括:處理模塊、獲取模塊和發(fā)送模塊,其中,

      所述處理模塊,用于在應(yīng)用程序發(fā)生崩潰時(shí),收集所述應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息;

      所述獲取模塊,用于從所述應(yīng)用程序?qū)?yīng)的用戶行為日志中獲取用戶行為數(shù)據(jù);其中,所述用戶行為數(shù)據(jù)用于表征用戶使用所述應(yīng)用程序時(shí)執(zhí)行的操作行為;

      所述發(fā)送模塊,用于將所述崩潰信息和所述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器。

      進(jìn)一步地,所述處理模塊,還用于在所述應(yīng)用程序運(yùn)行的過(guò)程中,收集所述用戶行為數(shù)據(jù),并將所述用戶行為數(shù)據(jù)存儲(chǔ)在所述用戶行為日志中。

      進(jìn)一步地,所述處理模塊包括判斷單元和第一存儲(chǔ)單元,其中,

      所述判斷單元,用于在所述應(yīng)用程序運(yùn)行的過(guò)程中,判斷預(yù)定義事件是否發(fā)生;其中,所述預(yù)定義事件是采用埋點(diǎn)技術(shù)嵌入到所述應(yīng)用程序中的事件;

      所述第一存儲(chǔ)單元,用于在所述判斷單元判斷所述預(yù)定義事件發(fā)生時(shí),將所述預(yù)定義事件對(duì)應(yīng)的用戶行為數(shù)據(jù)存儲(chǔ)在所述用戶行為日志中;其中,所述預(yù)定義事件對(duì)應(yīng)的用戶行為數(shù)據(jù)包括所述預(yù)定義事件的內(nèi)容信息和所述預(yù)定義事件發(fā)生時(shí)的時(shí)間信息。

      進(jìn)一步地,所述處理模塊包括第二存儲(chǔ)單元,其中,

      所述第二存儲(chǔ)單元,用于在所述處理模塊收集所述應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息之后,將所述崩潰信息存儲(chǔ)在所述應(yīng)用程序?qū)?yīng)的崩潰信息文件中;

      相應(yīng)地,

      所述獲取模塊,具體用于在所述應(yīng)用程序再次重新啟動(dòng)后,從所述應(yīng)用程序?qū)?yīng)的用戶行為日志中獲取所述用戶行為數(shù)據(jù);并從所述崩潰信息文件中獲取所述崩潰信息;

      所述發(fā)送模塊,具體用于在所述獲取單元從所述應(yīng)用程序?qū)?yīng)的用戶行為日志中獲取到所述用戶行為數(shù)據(jù);并從所述崩潰信息文件中獲取到所述崩潰信息之后,將所述崩潰信息和所述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器;

      所述處理模塊,還用于在所述發(fā)送模塊將所述崩潰信息和所述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器之后,將存儲(chǔ)在所述崩潰信息文件中的崩潰信息

      本發(fā)明實(shí)施例提供的應(yīng)用程序崩潰信息上報(bào)方法和裝置,在應(yīng)用程序發(fā)生崩潰時(shí),通過(guò)收集上述應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息;并從上述應(yīng)用程序?qū)?yīng)的用戶行為日志中獲取用戶行為數(shù)據(jù),進(jìn)而將所述崩潰信息和所述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器,其中,上述用戶行為數(shù)據(jù)用于表征用戶使用上述應(yīng)用程序時(shí)執(zhí)行的操作行為。這樣,使服務(wù)器中不僅存儲(chǔ)有應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息,還存儲(chǔ)有應(yīng)用程序?qū)?yīng)的用戶行為數(shù)據(jù),這樣,為找出應(yīng)用程序發(fā)生崩潰的原因,當(dāng)測(cè)試工程師或軟件開(kāi)發(fā)師需要復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài),可基于上述用戶行為數(shù)據(jù)中記錄的用戶操作,較容易地復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài),可解決現(xiàn)有技術(shù)中需要投入大量的人力和物力來(lái)復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài)的問(wèn)題,節(jié)約復(fù)現(xiàn)成本。

      附圖說(shuō)明

      圖1為本發(fā)明應(yīng)用程序崩潰信息上報(bào)方法實(shí)施例一的流程圖;

      圖2為本發(fā)明應(yīng)用程序崩潰信息上報(bào)方法實(shí)施例二的流程圖;

      圖3為本發(fā)明應(yīng)用程序崩潰信息上報(bào)方法實(shí)施例三的流程圖;

      圖4為本發(fā)明應(yīng)用程序崩潰信息上報(bào)裝置實(shí)施例一的結(jié)構(gòu)示意圖;

      圖5為本發(fā)明應(yīng)用程序崩潰信息上報(bào)裝置實(shí)施例二的結(jié)構(gòu)示意圖;

      圖6為本發(fā)明應(yīng)用程序崩潰信息上報(bào)裝置實(shí)施例三的結(jié)構(gòu)示意圖。

      具體實(shí)施方式

      為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。

      本發(fā)明提供一種應(yīng)用程序崩潰信息上報(bào)方法和裝置,以解決采用現(xiàn)有方法上報(bào)的崩潰信息無(wú)法復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài)、進(jìn)而需要投入人力物力來(lái)復(fù)現(xiàn)、復(fù)現(xiàn)成本高的問(wèn)題。

      本發(fā)明提供的應(yīng)用程序崩潰信息上報(bào)方法和裝置,可應(yīng)用在客戶端設(shè)備上。例如,可應(yīng)用于移動(dòng)終端上。

      下面以具體地實(shí)施例對(duì)本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)說(shuō)明。下面這幾個(gè)具體的實(shí)施例可以相互結(jié)合,對(duì)于相同或相似的概念或過(guò)程可能在某些實(shí)施例不再贅述。

      圖1為本發(fā)明應(yīng)用程序崩潰信息上報(bào)方法實(shí)施例一的流程圖。本實(shí)施例涉及的是上報(bào)崩潰信息的具體過(guò)程。本實(shí)施例的執(zhí)行主體可以是單獨(dú)的應(yīng)用程序崩潰信息上述裝置,也可以是集成了應(yīng)用程序崩潰信息上報(bào)裝置的其他設(shè)備,例如,可以是集成了應(yīng)用程序崩潰信息上報(bào)裝置的客戶端設(shè)備(客戶端設(shè)備可以是計(jì)算機(jī)、手機(jī)、平板電腦等)。下面以執(zhí)行主體為集成了應(yīng)用程序崩潰信息上報(bào)裝置的手機(jī)為例進(jìn)行說(shuō)明。請(qǐng)參照?qǐng)D1,本實(shí)施例提供的應(yīng)用程序崩潰信息上報(bào)方法,可以包括以下步驟:

      s101、在應(yīng)用程序發(fā)生崩潰時(shí),收集上述應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息。

      具體的,可以通過(guò)偵測(cè)程序來(lái)收集應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息。其中,偵測(cè)程序可以是內(nèi)嵌在上述應(yīng)用程序中的程序。此外,關(guān)于通過(guò)偵測(cè)程序來(lái)收集應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息的具體實(shí)現(xiàn)過(guò)程和實(shí)現(xiàn)原理可以參見(jiàn)現(xiàn)有技術(shù)中的描述,此處不在贅述。

      可選地,在本發(fā)明一種可能的實(shí)現(xiàn)方式中,上述崩潰信息包括崩潰日志、安裝上述應(yīng)用程序的客戶端設(shè)備的屬性信息和上述應(yīng)用程序的版本信息。

      具體地,安裝上述應(yīng)用程序的客戶端設(shè)備的屬性信息可以包括上述客戶端設(shè)備的型號(hào)信息和上述客戶端設(shè)備的配置信息等,本實(shí)施例中,不對(duì)客戶端設(shè)備的屬性信息進(jìn)行具體限定。

      s102、從上述應(yīng)用程序?qū)?yīng)的用戶行為日志中獲取用戶行為數(shù)據(jù);其中,上述用戶行為數(shù)據(jù)用于表征用戶使用上述應(yīng)用程序時(shí)執(zhí)行的操作行為。

      具體地,應(yīng)用程序?qū)?yīng)的用戶行為日志中存儲(chǔ)有用戶行為數(shù)據(jù),本步驟中,可以從應(yīng)用程序?qū)?yīng)的用戶行為日志中獲取用戶行為數(shù)據(jù)。此外,上述用戶行為數(shù)據(jù)用于表征用戶使用上述應(yīng)用程序時(shí)執(zhí)行的操作行為。例如,一條用戶行為數(shù)據(jù)可以是:2017年4月3日08:00,用戶點(diǎn)擊了登錄按鈕,相應(yīng)地,該條用戶行為數(shù)據(jù)表征用戶在2017年4月3日08:00登錄了該應(yīng)用程序。再例如,另一條用戶行為數(shù)據(jù)可以是:2017年4月3日08:10,用戶點(diǎn)擊了更新按鈕,相應(yīng)地,該條用戶行為數(shù)據(jù)表征用戶在2017年4月3日08:10更新了該應(yīng)用程序。需要說(shuō)明的是,用戶行為數(shù)據(jù)還可以是其他形式的數(shù)據(jù),本實(shí)施例中,不對(duì)用戶行為數(shù)據(jù)的具體形式進(jìn)行限定,只要是能夠表征用戶使用上述應(yīng)用程序時(shí)執(zhí)行的操作行為的數(shù)據(jù)均可以是用戶行為數(shù)據(jù)。

      進(jìn)一步地,應(yīng)用程序?qū)?yīng)的用戶行為日志可以是存儲(chǔ)在本地存儲(chǔ)器中的用戶行為日志,也可以是存儲(chǔ)在日志服務(wù)器中的用戶行為日志。相應(yīng)地,當(dāng)上述用戶行為日志存儲(chǔ)在本地存儲(chǔ)器中時(shí),可以從本地存儲(chǔ)器中獲取用戶行為數(shù)據(jù);當(dāng)上述用戶行為日志存儲(chǔ)在日志服務(wù)器中時(shí),需要從日志服務(wù)器中獲取用戶行為數(shù)據(jù)。此外,本步驟中,可以從上述應(yīng)用程序?qū)?yīng)的用戶行為日志中獲取上述行為日志中包含的所有用戶行為數(shù)據(jù),也可以從上述行為日志中獲取預(yù)設(shè)時(shí)間段的用戶行為數(shù)據(jù),其中,上述預(yù)設(shè)時(shí)間段是用戶根據(jù)實(shí)際需要設(shè)定的,例如,可以是應(yīng)用程序發(fā)生崩潰時(shí)的前10分鐘,也可以是應(yīng)用程序發(fā)生崩潰時(shí)的前1小時(shí)。

      需要說(shuō)明的是,可以通過(guò)上報(bào)程序來(lái)獲取用戶行為數(shù)據(jù)。進(jìn)一步地,該上報(bào)程序可以是內(nèi)嵌在上述應(yīng)用程序中的程序,也可以是獨(dú)立于上述應(yīng)用程序的程序。需要說(shuō)明的是,當(dāng)上報(bào)程序?yàn)楠?dú)立于上述應(yīng)用程序時(shí)的程序時(shí),則可以在應(yīng)用程序發(fā)生崩潰后,直接從上述應(yīng)用程序?qū)?yīng)的用戶行為日志中獲取用戶行為數(shù)據(jù)。而當(dāng)上報(bào)程序?yàn)閮?nèi)嵌在上述應(yīng)用程序中的程序時(shí),需要在上述應(yīng)用程序再次重新啟動(dòng)后,從上述應(yīng)用程序?qū)?yīng)的用戶行為日志中獲取用戶行為數(shù)據(jù)。本實(shí)施例中,不對(duì)上報(bào)程序的具體設(shè)置方式進(jìn)行限定。

      s103、將上述崩潰信息和上述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器。

      需要說(shuō)明的是,上述服務(wù)器為崩潰信息收集服務(wù)器。同樣地,該步驟可以通過(guò)上報(bào)程序來(lái)實(shí)現(xiàn),參見(jiàn)步驟s102的描述,當(dāng)上報(bào)程序?yàn)楠?dú)立于上述應(yīng)用程序的程序時(shí),則可以在應(yīng)用程序發(fā)生崩潰后,直接將崩潰信息和用戶行為數(shù)據(jù)發(fā)送給服務(wù)器。而當(dāng)上報(bào)程序?yàn)閮?nèi)嵌在上述應(yīng)用程序中的程序時(shí),需要在上述應(yīng)用程序再次重新啟動(dòng)后,將崩潰信息和用戶行為數(shù)據(jù)發(fā)送給服務(wù)器。本實(shí)施例中,不對(duì)上報(bào)程序的具體設(shè)置方式進(jìn)行限定。

      本實(shí)施例提供的應(yīng)用程序崩潰信息上報(bào)方法和裝置,在應(yīng)用程序發(fā)生崩潰時(shí),通過(guò)收集上述應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息;并從上述應(yīng)用程序?qū)?yīng)的用戶行為日志中獲取用戶行為數(shù)據(jù);以及將上述崩潰信息和上述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器。這樣,使服務(wù)器中不僅存儲(chǔ)有應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息,還存儲(chǔ)有應(yīng)用程序?qū)?yīng)的用戶行為數(shù)據(jù),這樣,為找出應(yīng)用程序發(fā)生崩潰的原因,當(dāng)測(cè)試工程師或軟件開(kāi)發(fā)師需要復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài),可基于上述用戶行為數(shù)據(jù)中記錄的用戶操作行為,較容易地復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài),可解決現(xiàn)有技術(shù)中需要投入大量的人力和物力來(lái)復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài)的問(wèn)題,節(jié)約復(fù)現(xiàn)成本。

      進(jìn)一步地,在本發(fā)明一種可能的實(shí)現(xiàn)方式中,步驟s101之前,還可以包括:

      在上述應(yīng)用程序運(yùn)行的過(guò)程中,收集上述用戶行為數(shù)據(jù),并將上述用戶行為數(shù)據(jù)存儲(chǔ)在上述用戶行為日志中。

      具體地,可通過(guò)收集程序來(lái)收集用戶行為數(shù)據(jù),該收集程序可以是內(nèi)嵌于上述應(yīng)用程序中的程序。例如,內(nèi)嵌了收集程序的應(yīng)用程序可以根據(jù)預(yù)先設(shè)定的采集配置參數(shù)自動(dòng)采集用戶行為數(shù)據(jù)。需要說(shuō)明的是,上述采集配置參數(shù)可以是采集范圍和采集時(shí)間點(diǎn),例如,采集時(shí)間點(diǎn)可以設(shè)定為每5分鐘采集一次,采集范圍可以設(shè)定為采集用戶的點(diǎn)擊行為和搜索行為,即當(dāng)用戶執(zhí)行點(diǎn)擊操作或搜索操作時(shí),就相應(yīng)的采集用戶的用戶行為數(shù)據(jù)。這樣,通過(guò)上述方法,在應(yīng)用程序運(yùn)行的過(guò)程中,便可收集到用戶行為數(shù)據(jù),進(jìn)而在收集到用戶行為數(shù)據(jù)后,將上述用戶行為數(shù)據(jù)存儲(chǔ)在用戶行為日志中。

      本實(shí)施例提供的應(yīng)用程序崩潰信息上報(bào)方法,在應(yīng)用程序運(yùn)行的過(guò)程中,通過(guò)收集用戶行為數(shù)據(jù),并將上述用戶行為數(shù)據(jù)存儲(chǔ)在應(yīng)用程序?qū)?yīng)的用戶行為日志中,這樣,在應(yīng)用程序發(fā)生崩潰時(shí),可從上述用戶行為日志中獲取用戶行為數(shù)據(jù),進(jìn)而將獲取到的用戶行為數(shù)據(jù)發(fā)送給服務(wù)器。這樣,使服務(wù)器中不僅存儲(chǔ)有崩潰信息,還存儲(chǔ)有應(yīng)用程序?qū)?yīng)的用戶行為數(shù)據(jù),這樣,為找出應(yīng)用程序發(fā)生崩潰的原因,當(dāng)測(cè)試工程師或軟件開(kāi)發(fā)師需要復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài),可基于上述用戶行為數(shù)據(jù)中記錄的用戶操作行為,較容易地復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài),可解決現(xiàn)有技術(shù)中需要投入大量的人力和物力來(lái)復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài)的問(wèn)題,節(jié)約復(fù)現(xiàn)成本。

      圖2為本發(fā)明應(yīng)用程序崩潰信息上報(bào)方法實(shí)施例二的流程圖。本實(shí)施例涉及的是如何收集用戶行為數(shù)據(jù)的具體過(guò)程。在上述實(shí)施例的基礎(chǔ)上,本實(shí)施例提供的方法,所述在所述應(yīng)用程序運(yùn)行的過(guò)程中,收集所述用戶行為數(shù)據(jù),具體可以包括:

      s201、在應(yīng)用程序運(yùn)行的過(guò)程中,判斷預(yù)定義事件是否發(fā)生;其中,上述預(yù)定義事件是采用埋點(diǎn)技術(shù)嵌入到上述應(yīng)用程序中的事件。

      具體地,上述預(yù)定義事件是采用埋點(diǎn)技術(shù)嵌入到上述應(yīng)用程序中的事件。例如,上述預(yù)定義事件可以是“用戶點(diǎn)擊確認(rèn)按鈕”、“用戶點(diǎn)擊登錄按鈕”、“用戶輸入關(guān)鍵字、并點(diǎn)擊搜索按鈕”??蛇x地,在本發(fā)明一種可能的實(shí)現(xiàn)方式中,上述預(yù)定義事件可以包括點(diǎn)擊事件和搜索事件。需要說(shuō)明的是,點(diǎn)擊事件表征用戶執(zhí)行了點(diǎn)擊操作,搜索事件表征用戶執(zhí)行了搜索操作。結(jié)合上面的例子,例如,點(diǎn)擊事件可以是“用戶點(diǎn)擊特定按鈕”,搜索事件可以是“用戶輸入關(guān)鍵字、并點(diǎn)擊搜索按鈕”。此外,關(guān)于采用埋點(diǎn)技術(shù)將預(yù)定義事件嵌入到上述應(yīng)用程序的具體實(shí)現(xiàn)過(guò)程和實(shí)現(xiàn)原理可以參見(jiàn)現(xiàn)有技術(shù)中的描述,此處不再贅述。

      更具體地,結(jié)合上面的例子,本步驟中,若在2017年4月5日17:00時(shí)檢測(cè)到用戶點(diǎn)擊了確定按鈕,此時(shí),則確定預(yù)定義事件(用戶點(diǎn)擊確認(rèn)按鈕)發(fā)生。

      s202、若上述預(yù)定義事件發(fā)生,則將上述預(yù)定義事件對(duì)應(yīng)的用戶行為數(shù)據(jù)存儲(chǔ)在上述用戶行為日志中;其中,上述預(yù)定義事件對(duì)應(yīng)的用戶行為數(shù)據(jù)包括上述預(yù)定義事件的內(nèi)容信息和上述預(yù)定義事件發(fā)生時(shí)的時(shí)間信息。

      具體的,當(dāng)經(jīng)過(guò)步驟s201確定預(yù)定義事件發(fā)生時(shí),本步驟,就將預(yù)定義事件對(duì)應(yīng)的用戶行為數(shù)據(jù)存儲(chǔ)在用戶行為日志中。需要說(shuō)明的是,上述預(yù)定義事件對(duì)應(yīng)的用戶行為數(shù)據(jù)包括上述預(yù)定義事件的內(nèi)容信息和上述預(yù)定義事件發(fā)生時(shí)的時(shí)間信息。例如,結(jié)合上面的例子,當(dāng)在步驟s101中,判斷“用戶點(diǎn)擊確認(rèn)按鈕”這一預(yù)定義事件發(fā)生時(shí),此時(shí),便獲取該預(yù)定義事件發(fā)生時(shí)的時(shí)間信息(本實(shí)施例中,該預(yù)定義事件發(fā)生時(shí)的時(shí)間信息為2017年4月5日17:00),然后將該預(yù)定義事件發(fā)生時(shí)的時(shí)間信息和該預(yù)定義事件的內(nèi)容信息整合在一起作為一條用戶行為數(shù)據(jù)存儲(chǔ)在用戶行為日志中。例如,本實(shí)施例中,將如下用戶行為數(shù)據(jù)“2017年4月5日17:00時(shí),用戶點(diǎn)擊了確定按鈕”存儲(chǔ)在用戶行為日志中。

      本實(shí)施例提供的應(yīng)用程序崩潰信息上報(bào)方法,在應(yīng)用程序運(yùn)行的過(guò)程中,通過(guò)判斷預(yù)定義事件是否發(fā)生,進(jìn)而在判斷預(yù)定義事件發(fā)生時(shí),將上述預(yù)定義事件對(duì)應(yīng)的用戶行為數(shù)據(jù)存儲(chǔ)在所述用戶行為日志中;其中,上述預(yù)定義事件是采用埋點(diǎn)技術(shù)嵌入到上述應(yīng)用程序中的時(shí)間,上述預(yù)定義事件對(duì)應(yīng)的用戶行為數(shù)據(jù)包括預(yù)定義事件的內(nèi)容信息和預(yù)定義事件發(fā)生時(shí)的時(shí)間信息。這樣,基于上述方法,可準(zhǔn)確地收集用戶行為數(shù)據(jù),進(jìn)而在應(yīng)用程序崩潰時(shí)將用戶行為數(shù)據(jù)發(fā)送給服務(wù)器,從而使測(cè)試工程師或軟件開(kāi)發(fā)師根據(jù)上述用戶行為數(shù)據(jù)中記錄的用戶操作行為,較容易地復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài),以解決現(xiàn)有技術(shù)中需要投入大量的人力和物力來(lái)復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài)的問(wèn)題,節(jié)約復(fù)現(xiàn)成本。

      圖3為本發(fā)明應(yīng)用程序崩潰信息上報(bào)方法實(shí)施例三的流程圖。本實(shí)施例涉及的是崩潰信息上報(bào)方法的整個(gè)過(guò)程。請(qǐng)參照?qǐng)D3,在上述實(shí)施例的基礎(chǔ)上,本實(shí)施例提供的方法,可以包括:

      s301、在應(yīng)用程序運(yùn)行的過(guò)程中,收集用戶行為數(shù)據(jù),并將上述用戶行為數(shù)據(jù)存儲(chǔ)在上述應(yīng)用程序?qū)?yīng)的用戶行為日志中,其中,上述用戶行為數(shù)據(jù)用于表征用戶使用上述應(yīng)用程序時(shí)執(zhí)行的操作行為。

      具體地,該步驟的具體實(shí)現(xiàn)過(guò)程及實(shí)現(xiàn)原理可以參見(jiàn)實(shí)施例一或?qū)嵤├拿枋?,此處不在贅述?/p>

      s302、在上述應(yīng)用程序發(fā)生崩潰時(shí),收集上述應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息,并將上述崩潰信息存儲(chǔ)在應(yīng)用程序?qū)?yīng)的崩潰信息文件中。

      具體的,崩潰信息文件可以是存儲(chǔ)在本地存儲(chǔ)器上的崩潰信息文件,也可以是存儲(chǔ)在服務(wù)器上的崩潰信息文件,本實(shí)施例中,不對(duì)崩潰信息文件的存儲(chǔ)地址進(jìn)行限定。此外,關(guān)于收集上述應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息的具體實(shí)現(xiàn)過(guò)程和實(shí)現(xiàn)原理可以參見(jiàn)實(shí)施例一中步驟s101的描述,此處不在贅述。

      s303、在上述應(yīng)用程序再次重新啟動(dòng)后,從上述用戶行為日志中獲取上述用戶行為數(shù)據(jù);并從上述崩潰信息文件中獲取上述崩潰信息。

      需要說(shuō)明的是,本實(shí)施例中,上報(bào)程序?yàn)閮?nèi)嵌于上述應(yīng)用程序中的程序。因此,在應(yīng)用程序發(fā)生崩潰后,需要在應(yīng)用程序再次重新啟動(dòng)后,從上述用戶行為日志中獲取上述用戶行為數(shù)據(jù);并從上述崩潰信息文件中獲取上述崩潰信息,以在步驟s204中將上述崩潰信息和上述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器。

      s304、將上述崩潰信息和上述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器。

      具體地,當(dāng)經(jīng)過(guò)步驟s303獲取到用戶行為數(shù)據(jù),并獲取到崩潰信息時(shí),本步驟中,就將上述崩潰信息和上述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器,以使服務(wù)器中存儲(chǔ)有該應(yīng)用程序?qū)?yīng)的崩潰信息和用戶行為數(shù)據(jù)。

      本實(shí)施例提供的應(yīng)用程序崩潰信息上報(bào)方法,在應(yīng)用程序運(yùn)行的過(guò)程中,通過(guò)收集用戶行為數(shù)據(jù),并將上述用戶行為數(shù)據(jù)存儲(chǔ)在上述應(yīng)用程序?qū)?yīng)的用戶行為日志中,并在上述應(yīng)用程序發(fā)生崩潰時(shí),通過(guò)收集上述應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息,并將上述崩潰信息存儲(chǔ)在應(yīng)用程序?qū)?yīng)的崩潰信息文件中,進(jìn)而在應(yīng)用程序再次重新啟動(dòng)后,從上述用戶行為日志中獲取上述用戶行為數(shù)據(jù);并從上述崩潰信息文件中獲取上述崩潰信息;以及將上述崩潰信息和上述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器。這樣,可使服務(wù)器中不僅存儲(chǔ)有崩潰信息,還存儲(chǔ)有應(yīng)用程序?qū)?yīng)的用戶行為數(shù)據(jù),這樣,為找出應(yīng)用程序發(fā)生崩潰的原因,當(dāng)測(cè)試工程師或軟件開(kāi)發(fā)師需要復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài),可基于上述用戶行為數(shù)據(jù)中記錄的用戶操作行為,較容易地復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài),可解決現(xiàn)有技術(shù)中需要投入大量的人力和物力來(lái)復(fù)現(xiàn)應(yīng)用程序發(fā)生崩潰時(shí)應(yīng)用程序所處的狀態(tài)的問(wèn)題,節(jié)約復(fù)現(xiàn)成本。

      進(jìn)一步地,在本發(fā)明一可能的實(shí)現(xiàn)方式中,步驟s304之后,還可以包括:

      將存儲(chǔ)在上述崩潰信息文件中的崩潰信息刪除。

      具體地,在本發(fā)明一種可能的實(shí)現(xiàn)方式中,當(dāng)經(jīng)過(guò)步驟s304將崩潰信息和用戶行為數(shù)據(jù)發(fā)送給服務(wù)之后,還可以將存儲(chǔ)在上述崩潰信息文件中的崩潰信息刪除,這樣,可釋放崩潰信息文件的容量,釋放本地存儲(chǔ)器的容量或存儲(chǔ)有崩潰信息文件的服務(wù)器的容量。

      本實(shí)施例提供的應(yīng)用程序崩潰信息上報(bào)方法,在將崩潰信息和用戶行為數(shù)據(jù)發(fā)送給服務(wù)器之后,通過(guò)將存儲(chǔ)在崩潰信息文件中的崩潰信息刪除。這樣,可釋放崩潰信息文件的容量,釋放本地存儲(chǔ)器的容量或存儲(chǔ)有崩潰信息文件的服務(wù)器的容量。

      圖4為本發(fā)明應(yīng)用程序崩潰信息上報(bào)裝置實(shí)施例一的結(jié)構(gòu)示意圖。該裝置可以通過(guò)軟件、硬件或者軟硬結(jié)合的方式實(shí)現(xiàn),且該裝置可以是單獨(dú)的應(yīng)用程序崩潰信息上報(bào)裝置,也可以是集成了應(yīng)用程序崩潰信息上報(bào)裝置的客戶端設(shè)備。如圖4所示,本實(shí)施例提供的應(yīng)用程序崩潰信息上報(bào)裝置,可以包括:處理模塊100、獲取模塊200和發(fā)送模塊300,其中,

      所述處理模塊100,用于在應(yīng)用程序發(fā)生崩潰時(shí),收集所述應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息;

      所述獲取模塊200,用于從所述應(yīng)用程序?qū)?yīng)的用戶行為日志中獲取用戶行為數(shù)據(jù);其中,所述用戶行為數(shù)據(jù)用于表征用戶使用所述應(yīng)用程序時(shí)執(zhí)行的操作行為;

      所述發(fā)送模塊300,用于將所述崩潰信息和所述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器。

      本實(shí)施例的裝置,可以用于執(zhí)行圖1所示方法實(shí)施例的技術(shù)方案,其實(shí)現(xiàn)原理和技術(shù)效果類似,此處不再贅述。

      進(jìn)一步地,所述處理模塊100,還用于在所述應(yīng)用程序運(yùn)行的過(guò)程中,收集所述用戶行為數(shù)據(jù),并將所述用戶行為數(shù)據(jù)存儲(chǔ)在所述用戶行為日志中。

      圖5為本發(fā)明應(yīng)用程序崩潰信息上報(bào)裝置實(shí)施例二的結(jié)構(gòu)示意圖。在上述實(shí)施例的基礎(chǔ)上,請(qǐng)參照?qǐng)D5,本實(shí)施例提供的應(yīng)用程序崩潰信息上報(bào)裝置,所述處理模塊100包括判斷單元101和第一存儲(chǔ)單元102,其中,

      所述判斷單元101,用于在所述應(yīng)用程序運(yùn)行過(guò)程中,判斷預(yù)定義事件是否發(fā)生;其中,所述預(yù)定義事件是采用埋點(diǎn)技術(shù)嵌入到所述應(yīng)用程序中的事件;

      所述第一存儲(chǔ)單元102,用于在所述判斷單元101判斷所述預(yù)定義事件發(fā)生時(shí),將所述預(yù)定義事件對(duì)應(yīng)的用戶行為數(shù)據(jù)存儲(chǔ)在所述用戶行為日志中;其中,所述預(yù)定義事件對(duì)應(yīng)的用戶行為數(shù)據(jù)包括所述預(yù)定義事件的內(nèi)容信息和所述預(yù)定義事件發(fā)生時(shí)的時(shí)間信息。

      本實(shí)施例的裝置,可以用于執(zhí)行圖2所示方法實(shí)施例的技術(shù)方案,其實(shí)現(xiàn)原理和技術(shù)效果類似,此處不再贅述。

      圖6為本發(fā)明應(yīng)用程序崩潰信息上報(bào)裝置實(shí)施例三的結(jié)構(gòu)示意圖。在上述實(shí)施例的基礎(chǔ)上,請(qǐng)參照?qǐng)D6,本實(shí)施例提供的應(yīng)用程序崩潰信息上報(bào)裝置所述處理模塊100包括第二存儲(chǔ)單元103,其中,

      所述第二存儲(chǔ)單元103,用于在所述處理模塊100收集所述應(yīng)用程序發(fā)生崩潰時(shí)的崩潰信息之后,將所述崩潰信息存儲(chǔ)在所述應(yīng)用程序?qū)?yīng)的崩潰信息文件中;

      相應(yīng)地,

      所述獲取模塊200,具體用于在所述應(yīng)用程序再次重新啟動(dòng)后,從所述應(yīng)用程序?qū)?yīng)的用戶行為日志中獲取所述用戶行為數(shù)據(jù);并從所述崩潰信息文件中獲取所述崩潰信息;

      所述發(fā)送模塊300,具體用于在所述獲取單元200從所述應(yīng)用程序?qū)?yīng)的用戶行為日志中獲取到所述用戶行為數(shù)據(jù);并從所述崩潰信息文件中獲取到所述崩潰信息之后,將所述崩潰信息和所述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器;

      所述處理模塊100,還用于在所述發(fā)送模塊200將所述崩潰信息和所述用戶行為數(shù)據(jù)發(fā)送給服務(wù)器之后,將存儲(chǔ)在所述崩潰信息文件中的崩潰信息刪除。

      本實(shí)施例的裝置,可以用于執(zhí)行圖3所示方法實(shí)施例的技術(shù)方案,其實(shí)現(xiàn)原理和技術(shù)效果類似,此處不再贅述。

      本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述各方法實(shí)施例的全部或部分步驟可以通過(guò)程序指令相關(guān)的硬件來(lái)完成。前述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。該程序在執(zhí)行時(shí),執(zhí)行包括上述各方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括:rom、ram、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。

      最后應(yīng)說(shuō)明的是:以上各實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述各實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍。

      當(dāng)前第1頁(yè)1 2 
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1