本發(fā)明屬于計(jì)算機(jī)軟件技術(shù)領(lǐng)域,特別涉及一種iOS設(shè)備數(shù)據(jù)挖掘方法及系統(tǒng)。
背景技術(shù):
目前,隨著移動互聯(lián)網(wǎng)技術(shù)的迅猛發(fā)展和廣泛應(yīng)用,移動智能終端設(shè)備大量普及于民眾,移動互聯(lián)網(wǎng)用戶平均每天啟動App時(shí)長達(dá)116分鐘,接近2個(gè)小時(shí),互聯(lián)網(wǎng)App行業(yè)市場競爭愈發(fā)激烈,如何提高用戶使用App的安全性和更好的用戶體驗(yàn),是當(dāng)前企業(yè)開發(fā)App必須考慮的問題。在用戶使用App的同時(shí)也產(chǎn)生了大量的用戶信息和記錄,利用這些記錄信息來了解移動用戶的行為和用戶特征進(jìn)行一些研究是非常有必要的。
通過移動用戶數(shù)據(jù)的挖掘,可以分析使用App的人群特征、使用習(xí)慣,也可進(jìn)一步對數(shù)據(jù)進(jìn)行數(shù)值分析,最后得到用戶行為的統(tǒng)計(jì)特征來建立用戶行為,并提前對用戶行為趨勢做出判斷或預(yù)測,不僅可以應(yīng)用于用戶的安全驗(yàn)證,也可用來改善App的用戶體驗(yàn),這對于移動App的發(fā)展也具有重要意義。
技術(shù)實(shí)現(xiàn)要素:
【要解決的技術(shù)問題】
本發(fā)明的目的是提供一種iOS設(shè)備數(shù)據(jù)挖掘方法及系統(tǒng),以收集用戶使用App時(shí)產(chǎn)生的用戶信息和記錄。
【技術(shù)方案】
本發(fā)明是通過以下技術(shù)方案實(shí)現(xiàn)的。
本發(fā)明首先涉及一種iOS設(shè)備數(shù)據(jù)挖掘系統(tǒng),包括收集器和存儲器,所述收集器包括收集器管理中心、定時(shí)器、收集工作者和收集模塊,所述存儲器包括緩存數(shù)據(jù)空間、臨時(shí)數(shù)據(jù)庫、可信數(shù)據(jù)庫和存儲模塊,
所述收集模塊被配置成:通過收集器管理中心開啟一個(gè)公用的后臺線程,同時(shí)在該后臺線程中啟動定時(shí)器,在定時(shí)器的時(shí)序下通過該后臺線程調(diào)用不同的收集工作者對用戶習(xí)慣數(shù)據(jù)進(jìn)行收集;
所述存儲模塊被配置成:將收集到的用戶習(xí)慣數(shù)據(jù)存入緩存數(shù)據(jù)空間;判斷收集到的用戶習(xí)慣數(shù)據(jù)的數(shù)據(jù)量是否超出緩存數(shù)據(jù)空間的最大值,如果是則將用戶習(xí)慣數(shù)據(jù)存入臨時(shí)數(shù)據(jù)庫并對臨時(shí)數(shù)據(jù)庫的數(shù)據(jù)進(jìn)行可信性驗(yàn)證,如果臨時(shí)數(shù)據(jù)庫的數(shù)據(jù)可信,則將臨時(shí)數(shù)據(jù)庫中的數(shù)據(jù)移入可信數(shù)據(jù)庫,反之臨時(shí)數(shù)據(jù)庫的數(shù)據(jù)不可信則刪除臨時(shí)數(shù)據(jù)庫中的數(shù)據(jù)。
作為一種優(yōu)選的實(shí)施方式,所述收集工作者包括健康數(shù)據(jù)收集工作者、觸摸收集工作者、經(jīng)緯收集工作者、速度信息收集工作者。
作為另一種優(yōu)選的實(shí)施方式,所述健康數(shù)據(jù)收集工作者被配置成:在后臺線程的命令下調(diào)用iOS系統(tǒng)的健康應(yīng)用庫中的異步收集方法,進(jìn)行健康數(shù)據(jù)收集并將收集到的數(shù)據(jù)回傳至收集器管理中心。
作為另一種優(yōu)選的實(shí)施方式,所述健康數(shù)據(jù)收集工作者被配置成:在后臺線程的命令下,通過UIApplication應(yīng)用程序類的自定義子類截獲各類觸摸事件,并篩選出TouchBegin、TouchMove、TouchEnd三類消息,得到觸摸數(shù)據(jù)并將該觸摸數(shù)據(jù)回傳至收集器管理中心。
作為另一種優(yōu)選的實(shí)施方式,所述經(jīng)緯收集工作者被配置成:在后臺線程的命令下,調(diào)用iOS系統(tǒng)的地理位置獲取方法收集設(shè)備所在地理經(jīng)緯度并將該數(shù)據(jù)回傳至收集器管理中心;所述速度信息收集工作者被配置成:在后臺線程的命令下,調(diào)用iOS系統(tǒng)的角度、加速度收集方法,獲得用戶持有設(shè)備的加速度、用戶持有設(shè)備的空間三維偏轉(zhuǎn)角度后,將該數(shù)據(jù)回傳收集器管理中心。
本發(fā)明還涉及一種iOS設(shè)備數(shù)據(jù)挖掘方法,包括數(shù)據(jù)收集和數(shù)據(jù)存儲,
所述數(shù)據(jù)收集包括:
收集器管理中心開啟一個(gè)公用的后臺線程,同時(shí)在該后臺線程中啟動定時(shí)器,在定時(shí)器的時(shí)序下該后臺線程調(diào)用不同的收集工作者對用戶習(xí)慣數(shù)據(jù)進(jìn)行收集;
所述數(shù)據(jù)存儲包括:
將收集到的用戶習(xí)慣數(shù)據(jù)存入緩存數(shù)據(jù)空間;
判斷收集到的用戶習(xí)慣數(shù)據(jù)的數(shù)據(jù)量是否超出緩存數(shù)據(jù)空間的最大值,如果是則將用戶習(xí)慣數(shù)據(jù)存入臨時(shí)數(shù)據(jù)庫并轉(zhuǎn)入下一步驟,反之則退出數(shù)據(jù)存儲流程;
對臨時(shí)數(shù)據(jù)庫的數(shù)據(jù)進(jìn)行可信性驗(yàn)證,如果臨時(shí)數(shù)據(jù)庫的數(shù)據(jù)可信,則將臨時(shí)數(shù)據(jù)庫中的數(shù)據(jù)移入可信數(shù)據(jù)庫,反之則刪除臨時(shí)數(shù)據(jù)庫中的數(shù)據(jù)。
作為另一種優(yōu)選的實(shí)施方式,所述數(shù)據(jù)收集包括健康數(shù)據(jù)收集、觸摸數(shù)據(jù)收集、地理經(jīng)緯度收集、速度信息收集。
作為另一種優(yōu)選的實(shí)施方式,所述健康數(shù)據(jù)收集包括:在后臺線程的命令下調(diào)用iOS系統(tǒng)的健康應(yīng)用庫中的異步收集方法,進(jìn)行健康數(shù)據(jù)收集并將收集到的數(shù)據(jù)回傳至收集器管理中心,所述用戶健康數(shù)據(jù)包括用戶行走距離、用戶行走步數(shù)。
作為另一種優(yōu)選的實(shí)施方式,所述觸摸數(shù)據(jù)收集包括:在后臺線程的命令下,通過UIApplication應(yīng)用程序類的自定義子類截獲各類觸摸事件,并篩選出TouchBegin、TouchMove、TouchEnd三類消息,得到觸摸數(shù)據(jù)并將該觸摸數(shù)據(jù)回傳至收集器管理中心。
作為另一種優(yōu)選的實(shí)施方式,所述地理經(jīng)緯度收集包括:在后臺線程的命令下,調(diào)用iOS系統(tǒng)的地理位置獲取方法收集設(shè)備所在地理經(jīng)緯度并將該數(shù)據(jù)回傳至收集器管理中心;所述速度信息收集包括:在后臺線程的命令下,調(diào)用iOS系統(tǒng)的角度、加速度收集方法,獲得用戶持有設(shè)備的加速度、用戶持有設(shè)備的空間三維偏轉(zhuǎn)角度后,將該數(shù)據(jù)回傳收集器管理中心。
【有益效果】
本發(fā)明提出的技術(shù)方案具有以下有益效果:
本發(fā)明針對當(dāng)前iOS系統(tǒng)能收集到的用戶數(shù)據(jù)進(jìn)行本地化存儲,在盡可能少的占用主應(yīng)用程序資源的前提下,在應(yīng)用后臺進(jìn)行不間斷收集用戶信息和記錄。通過移動用戶數(shù)據(jù)的挖掘,可以分析使用App的人群特征、使用習(xí)慣,也可進(jìn)一步對數(shù)據(jù)進(jìn)行數(shù)值分析,最后得到用戶行為的統(tǒng)計(jì)特征來建立用戶行為,并提前對用戶行為趨勢做出判斷或預(yù)測,不僅可以應(yīng)用于用戶的安全驗(yàn)證,也可用來改善App的用戶體驗(yàn)。
附圖說明
圖1為本發(fā)明的實(shí)施例一提供的iOS設(shè)備數(shù)據(jù)挖掘系統(tǒng)的原理框圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將對本發(fā)明的具體實(shí)施方式進(jìn)行清楚、完整的描述。
實(shí)施例一
實(shí)施例一為iOS設(shè)備數(shù)據(jù)挖掘系統(tǒng),圖1為本發(fā)明實(shí)施例一提供的iOS設(shè)備數(shù)據(jù)挖掘系統(tǒng)的原理框圖。如圖1所示,該系統(tǒng)包括收集器1和存儲器2。其中,收集器1包括收集器管理中心、定時(shí)器、收集工作者和收集模塊,存儲器2包括緩存數(shù)據(jù)空間、臨時(shí)數(shù)據(jù)庫、可信數(shù)據(jù)庫和存儲模塊。緩存數(shù)據(jù)空間分配在應(yīng)用申請的內(nèi)存空間中,臨時(shí)數(shù)據(jù)庫與可信數(shù)據(jù)庫則保存在應(yīng)用對應(yīng)的手機(jī)沙盒中。三部分的存儲大小均可以由應(yīng)用根據(jù)自己需求配置大小,采用該設(shè)計(jì)方式幾乎不占用系統(tǒng)資源,也方便管理存儲的數(shù)據(jù)。
收集模塊被配置成:通過收集器管理中心開啟一個(gè)公用的后臺線程,同時(shí)在該后臺線程中啟動定時(shí)器,在定時(shí)器的時(shí)序下通過該后臺線程調(diào)用不同的收集工作者對用戶習(xí)慣數(shù)據(jù)進(jìn)行收集。
存儲模塊被配置成:將收集到的用戶習(xí)慣數(shù)據(jù)存入緩存數(shù)據(jù)空間;判斷收集到的用戶習(xí)慣數(shù)據(jù)的數(shù)據(jù)量是否超出緩存數(shù)據(jù)空間的最大值,如果是則將用戶習(xí)慣數(shù)據(jù)存入臨時(shí)數(shù)據(jù)庫并對臨時(shí)數(shù)據(jù)庫的數(shù)據(jù)進(jìn)行可信性驗(yàn)證,如果臨時(shí)數(shù)據(jù)庫的數(shù)據(jù)可信,則將臨時(shí)數(shù)據(jù)庫中的數(shù)據(jù)移入可信數(shù)據(jù)庫,反之臨時(shí)數(shù)據(jù)庫的數(shù)據(jù)不可信則刪除臨時(shí)數(shù)據(jù)庫中的數(shù)據(jù)。
本實(shí)施例中,收集工作者包括健康數(shù)據(jù)收集工作者、觸摸收集工作者、經(jīng)緯收集工作者、速度信息收集工作者。
具體地,健康數(shù)據(jù)收集工作者被配置成:在后臺線程的命令下調(diào)用iOS系統(tǒng)的健康應(yīng)用庫中的異步收集方法,進(jìn)行健康數(shù)據(jù)收集并將收集到的數(shù)據(jù)回傳至收集器管理中心。
具體地,健康數(shù)據(jù)收集工作者被配置成:在后臺線程的命令下,通過UIApplication應(yīng)用程序類的自定義子類截獲各類觸摸事件,并篩選出TouchBegin、TouchMove、TouchEnd三類消息,得到觸摸數(shù)據(jù)并將該觸摸數(shù)據(jù)回傳至收集器管理中心。
具體地,經(jīng)緯收集工作者被配置成:在后臺線程的命令下,調(diào)用iOS系統(tǒng)的地理位置獲取方法收集設(shè)備所在地理經(jīng)緯度并將該數(shù)據(jù)回傳至收集器管理中心;所述速度信息收集工作者被配置成:在后臺線程的命令下,調(diào)用iOS系統(tǒng)的角度、加速度收集方法,獲得用戶持有設(shè)備的加速度、用戶持有設(shè)備的空間三維偏轉(zhuǎn)角度后,將該數(shù)據(jù)回傳收集器管理中心。
采用實(shí)施例一中的系統(tǒng)實(shí)現(xiàn)的iOS設(shè)備數(shù)據(jù)挖掘方法可以參考下述具體方法實(shí)施例。
實(shí)施例二
實(shí)施例二為一種iOS設(shè)備數(shù)據(jù)挖掘方法,該方法包括數(shù)據(jù)收集和數(shù)據(jù)存儲。
數(shù)據(jù)收集包括:
收集器管理中心開啟一個(gè)公用的后臺線程,同時(shí)在該后臺線程中啟動定時(shí)器,在定時(shí)器的時(shí)序下該后臺線程調(diào)用不同的收集工作者對用戶習(xí)慣數(shù)據(jù)進(jìn)行收集。
本實(shí)施例在數(shù)據(jù)被收集到后,為了盡量少的占用系統(tǒng)資源,同時(shí)也便于丟棄無效數(shù)據(jù)等操作,采取了內(nèi)存、臨時(shí)數(shù)據(jù)庫、可信數(shù)據(jù)庫三種方式的存儲結(jié)構(gòu)。具體地,數(shù)據(jù)存儲包括:
將收集到的用戶習(xí)慣數(shù)據(jù)存入緩存數(shù)據(jù)空間;
判斷收集到的用戶習(xí)慣數(shù)據(jù)的數(shù)據(jù)量是否超出緩存數(shù)據(jù)空間的最大值,如果是則將用戶習(xí)慣數(shù)據(jù)存入臨時(shí)數(shù)據(jù)庫并轉(zhuǎn)入下一步驟,反之則退出數(shù)據(jù)存儲流程;
對臨時(shí)數(shù)據(jù)庫的數(shù)據(jù)進(jìn)行可信性驗(yàn)證,如果臨時(shí)數(shù)據(jù)庫的數(shù)據(jù)可信,則將臨時(shí)數(shù)據(jù)庫中的數(shù)據(jù)移入可信數(shù)據(jù)庫,反之則刪除臨時(shí)數(shù)據(jù)庫中的數(shù)據(jù)。
具體地,本實(shí)施例中,數(shù)據(jù)收集包括健康數(shù)據(jù)收集、觸摸數(shù)據(jù)收集、地理經(jīng)緯度收集、速度信息收集。
其中,健康數(shù)據(jù)收集包括:在后臺線程的命令下調(diào)用iOS系統(tǒng)的健康應(yīng)用庫中的異步收集方法,進(jìn)行健康數(shù)據(jù)收集并將收集到的數(shù)據(jù)回傳至收集器管理中心,所述用戶健康數(shù)據(jù)包括用戶行走距離、用戶行走步數(shù)。
其中,觸摸數(shù)據(jù)收集包括:在后臺線程的命令下,通過UIApplication應(yīng)用程序類的自定義子類截獲各類觸摸事件,并篩選出TouchBegin、TouchMove、TouchEnd三類消息,得到觸摸數(shù)據(jù)并將該觸摸數(shù)據(jù)回傳至收集器管理中心。
其中,地理經(jīng)緯度收集包括:在后臺線程的命令下,調(diào)用iOS系統(tǒng)的地理位置獲取方法收集設(shè)備所在地理經(jīng)緯度并將該數(shù)據(jù)回傳至收集器管理中心;所述速度信息收集包括:在后臺線程的命令下,調(diào)用iOS系統(tǒng)的角度、加速度收集方法,獲得用戶持有設(shè)備的加速度、用戶持有設(shè)備的空間三維偏轉(zhuǎn)角度后,將該數(shù)據(jù)回傳收集器管理中心。
從以上步驟可知,本實(shí)施例通過后臺運(yùn)行線程的方法進(jìn)行各類異步數(shù)據(jù)的收集操作,通過測試可知,程序整體所占CPU和內(nèi)存比例較低,基本不會影響到前臺主程序的正常功能。
而且,本實(shí)施例為外部獲取數(shù)據(jù)或存入其他類型的數(shù)據(jù)也預(yù)留了操作接口。通過傳入需要獲取的數(shù)據(jù)類型及存儲方式,可自由從內(nèi)存、臨時(shí)數(shù)據(jù)庫、可信數(shù)據(jù)庫中獲取數(shù)據(jù)和存儲數(shù)據(jù),具有較高的靈活性。
從以上實(shí)施例可以看出,本發(fā)明實(shí)施例針對當(dāng)前iOS系統(tǒng)能收集到的用戶數(shù)據(jù)進(jìn)行本地化存儲,在盡可能少的占用主應(yīng)用程序資源的前提下,在應(yīng)用后臺進(jìn)行不間斷收集用戶信息和記錄。通過移動用戶數(shù)據(jù)的挖掘,可以分析使用App的人群特征、使用習(xí)慣,也可進(jìn)一步對數(shù)據(jù)進(jìn)行數(shù)值分析,最后得到用戶行為的統(tǒng)計(jì)特征來建立用戶行為,并提前對用戶行為趨勢做出判斷或預(yù)測,不僅可以應(yīng)用于用戶的安全驗(yàn)證,也可用來改善App的用戶體驗(yàn)。
需要說明,上述描述的實(shí)施例是本發(fā)明的一部分實(shí)施例,而不是全部實(shí)施例,也不是對本發(fā)明的限制?;诒景l(fā)明的實(shí)施例,本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明的保護(hù)范圍。