■文/康 潔 瞿弋微
移動(dòng)應(yīng)用分析平臺(tái)上基于Ajax實(shí)現(xiàn)客戶端應(yīng)用數(shù)據(jù)采集
■文/康 潔 瞿弋微
隨著移動(dòng)互聯(lián)網(wǎng)的發(fā)展和智能終端的普及,移動(dòng)應(yīng)用下載量和新應(yīng)用需求呈井噴式增長(zhǎng)。然而,由于大量移動(dòng)應(yīng)用存在內(nèi)容同質(zhì)化、用戶群定位不清、推廣渠道分散、異構(gòu)平臺(tái)體驗(yàn)不一致等問(wèn)題,會(huì)使運(yùn)營(yíng)陷入困境。移動(dòng)應(yīng)用分析平臺(tái)的主要作用是通過(guò)收集移動(dòng)端產(chǎn)品的用戶、設(shè)備、事件、使用情況等海量數(shù)據(jù),從上報(bào)信息中分析挖掘潛在價(jià)值,幫助應(yīng)用開(kāi)發(fā)及運(yùn)營(yíng)人員了解產(chǎn)品表現(xiàn),強(qiáng)化核心功能,從而在移動(dòng)互聯(lián)網(wǎng)時(shí)代實(shí)現(xiàn)數(shù)據(jù)化、精細(xì)化的運(yùn)營(yíng)。文中介紹了移動(dòng)應(yīng)用分析平臺(tái)的工作原理和建設(shè)意義,對(duì)移動(dòng)應(yīng)用數(shù)據(jù)采集部分的技術(shù)實(shí)現(xiàn)進(jìn)行了深入研究,在此基礎(chǔ)上提出了未來(lái)移動(dòng)應(yīng)用分析平臺(tái)的發(fā)展建議。
移動(dòng)應(yīng)用分析;移動(dòng)Ajax;SDK;客戶端應(yīng)用數(shù)據(jù)采集
隨著移動(dòng)互聯(lián)網(wǎng)的發(fā)展和智能終端的普及,全球移動(dòng)應(yīng)用市場(chǎng)發(fā)展迅猛。預(yù)計(jì)到2017年,全球智能手機(jī)和平板電腦的應(yīng)用程序下載量將達(dá)到1600億。中國(guó)作為全球第二大移動(dòng)應(yīng)用市場(chǎng),移動(dòng)應(yīng)用下載量和新應(yīng)用需求將呈井噴式增長(zhǎng),同時(shí)預(yù)示移動(dòng)客戶端作為新媒體的主要載體,其影響范圍將持續(xù)擴(kuò)大。
為落實(shí)中央要求、搶占新興媒體輿論陣地,新華社提出要大力開(kāi)展黨政客戶端技術(shù)建設(shè),通過(guò)在智能終端上開(kāi)發(fā)信息資訊客戶端,為全國(guó)各地方黨委、政府建設(shè)自主掌控的掌上新媒體服務(wù)平臺(tái),幫助地方政府實(shí)現(xiàn)輿論引導(dǎo)和政務(wù)公開(kāi),同時(shí)提供便民服務(wù)和溝通渠道,成為群眾建言獻(xiàn)策和參政議政的有力載體。
為全面了解新華社資訊的消費(fèi)群體,及時(shí)發(fā)現(xiàn)用戶對(duì)信息服務(wù)的需求變化,和用戶建立起良性的互動(dòng)關(guān)系。在新華社黨政客戶端集成管控平臺(tái)項(xiàng)目中將重點(diǎn)收集和分析用戶數(shù)據(jù),匯聚受眾基本信息如年齡段、興趣愛(ài)好、所在區(qū)域等,對(duì)用戶進(jìn)行統(tǒng)一管理,提供用戶特性分析等服務(wù);匯聚終端用戶登錄、閱讀、分享、評(píng)論等行為信息,為進(jìn)一步增強(qiáng)內(nèi)容建設(shè),發(fā)展個(gè)性化服務(wù)產(chǎn)品提供數(shù)據(jù)支撐;匯聚APP產(chǎn)品停留時(shí)間、跳轉(zhuǎn)、退出等使用信息,為進(jìn)一步提升產(chǎn)品設(shè)計(jì),增強(qiáng)用戶黏性指明方向,最終達(dá)到資源優(yōu)化、流程優(yōu)化、體驗(yàn)優(yōu)化、產(chǎn)品優(yōu)化的目的。
1.1 移動(dòng)應(yīng)用分析概念
移動(dòng)應(yīng)用是移動(dòng)互聯(lián)網(wǎng)的重要載體,移動(dòng)應(yīng)用分析是指在獲得移動(dòng)應(yīng)用用戶使用等基本數(shù)據(jù)情況下,進(jìn)行數(shù)據(jù)分析,深入挖掘用戶使用的特點(diǎn),找到產(chǎn)品設(shè)計(jì)的不足,發(fā)現(xiàn)運(yùn)營(yíng)推廣的機(jī)遇,優(yōu)化產(chǎn)品及運(yùn)營(yíng)策略,提升移動(dòng)應(yīng)用的質(zhì)量。
1.2 移動(dòng)應(yīng)用分析的意義
1.2.1 監(jiān)控移動(dòng)應(yīng)用運(yùn)營(yíng)狀態(tài)
移動(dòng)應(yīng)用分析最基本的使用場(chǎng)景就是實(shí)時(shí)監(jiān)控應(yīng)用的運(yùn)營(yíng)狀態(tài)。通過(guò)收集應(yīng)用每日的新增用戶、活躍用戶、留存用戶等數(shù)據(jù),并對(duì)其加以分析,以日?qǐng)?bào)、周報(bào)、月報(bào)的形式進(jìn)行系統(tǒng)的監(jiān)控。通過(guò)分析和比較這些核心數(shù)據(jù)的變化趨勢(shì),用數(shù)據(jù)說(shuō)話,可以幫助運(yùn)營(yíng)和推廣人員多維度觀察應(yīng)用的運(yùn)營(yíng)狀態(tài),及時(shí)發(fā)現(xiàn)問(wèn)題。
1.2.2 提升移動(dòng)應(yīng)用推廣效果
渠道是移動(dòng)應(yīng)用推廣的主要方式,不同渠道面對(duì)的是不一樣的用戶群體,根據(jù)渠道和推廣位置的數(shù)據(jù)分析選擇成本低、效果好的渠道可以有效地找到目標(biāo)用戶,提升運(yùn)營(yíng)表現(xiàn),降低推廣成本。
1.2.3 發(fā)現(xiàn)移動(dòng)應(yīng)用產(chǎn)品問(wèn)題
通過(guò)分析應(yīng)用的訪問(wèn)路徑、自定義事件點(diǎn)擊/轉(zhuǎn)化等數(shù)據(jù),找到用戶流失的原因,利用數(shù)據(jù)更快地定位出產(chǎn)品問(wèn)題或策略問(wèn)題,并依據(jù)規(guī)范的移動(dòng)分析思路和方法找出解決方案。
1.2.4 優(yōu)化移動(dòng)應(yīng)用功能及體驗(yàn)
作為移動(dòng)互聯(lián)網(wǎng)的主要入口之一,移動(dòng)應(yīng)用的體驗(yàn)優(yōu)秀與否在一定程度上決定了用戶的去留,通過(guò)移動(dòng)應(yīng)用分析找到產(chǎn)品問(wèn)題,結(jié)合訪問(wèn)路徑、用戶的人口學(xué)屬性等制定優(yōu)化策略,提升應(yīng)用的吸引力和易用性。
圖1 移動(dòng)應(yīng)用分析工作流程
1.3 移動(dòng)應(yīng)用分析工作原理
目前移動(dòng)應(yīng)用分析的方式主要是較為流行的基于SDK(Software Development Kit,即軟件開(kāi)發(fā)工具包)的分析統(tǒng)計(jì)。這種方式是在應(yīng)用中嵌入一段SDK代碼,SDK代碼規(guī)定了用戶行為收集的規(guī)范,用戶的啟動(dòng)和使用行為通過(guò)SDK記錄在應(yīng)用中,當(dāng)發(fā)送條件被觸發(fā)后,這些日志被發(fā)送到服務(wù)器來(lái)進(jìn)行分析和挖掘。此方式的優(yōu)點(diǎn)是安裝使用簡(jiǎn)單,用戶行為統(tǒng)計(jì)更加準(zhǔn)確。以下為基于SDK的移動(dòng)應(yīng)用分析數(shù)據(jù)收集流程圖(如圖1所示)。
首先產(chǎn)品開(kāi)發(fā)團(tuán)隊(duì)向移動(dòng)應(yīng)用分析平臺(tái)注冊(cè)以獲取APPID,這是移動(dòng)應(yīng)用的唯一標(biāo)識(shí),通過(guò)APPID將采集上報(bào)信息與移動(dòng)應(yīng)用有機(jī)關(guān)聯(lián)起來(lái);
第二步 根據(jù)行為收集的規(guī)則,在APP 實(shí)現(xiàn)代碼中植入SDK和發(fā)行渠道的相關(guān)信息;打包生成安裝文件,上傳到應(yīng)用市場(chǎng)供審核發(fā)布;
第三步 配合線下活動(dòng)進(jìn)行應(yīng)用推廣,用戶在正確下載安裝應(yīng)用后,SDK在后臺(tái)自動(dòng)采集用戶使用及設(shè)備信息,根據(jù)上報(bào)策略向移動(dòng)應(yīng)用分析平臺(tái)進(jìn)行異步數(shù)據(jù)上報(bào);
第四步 移動(dòng)應(yīng)用分析平臺(tái)以流方式接收上報(bào)日志文件,接收后存儲(chǔ)到Hbase庫(kù)中,后續(xù)使用Map-Reduce工具對(duì)日志內(nèi)容進(jìn)行分析和挖掘。
第五步 根據(jù)不同角色及業(yè)務(wù)需求,建立分析模式,生成各類圖表,供產(chǎn)品運(yùn)營(yíng)及開(kāi)發(fā)人員分析參考。
1.4 移動(dòng)應(yīng)用數(shù)據(jù)采集對(duì)象
為實(shí)現(xiàn)移動(dòng)統(tǒng)計(jì)分析平臺(tái)能夠根據(jù)應(yīng)用發(fā)展目標(biāo)直觀生成相應(yīng)指標(biāo)和圖表,在數(shù)據(jù)采集階段應(yīng)盡量確保數(shù)據(jù)的全面性、完整性和可靠性。移動(dòng)應(yīng)用數(shù)據(jù)采集的對(duì)象主要包括渠道來(lái)源、受眾屬性、用戶行為和終端設(shè)備。
1.4.1 渠道來(lái)源
目前的移動(dòng)應(yīng)用分發(fā)主要依賴外部渠道的推廣,這里的渠道既包括App Store、Google Play等官方的應(yīng)用市場(chǎng)和商店外,還有91助手、百度手機(jī)助手、聯(lián)盟、In App推廣等非官方渠道。渠道推廣大都是要付費(fèi)的,因此產(chǎn)品開(kāi)發(fā)團(tuán)隊(duì)非常關(guān)注各個(gè)渠道推廣效果如何,渠道來(lái)源的分析就抓住了這一點(diǎn)強(qiáng)需求,從源頭上幫助開(kāi)發(fā)者對(duì)比分析推廣效果,以便優(yōu)化廣告投放,提高ROI(Return On Investment,即投資回報(bào)率)。
1.4.2 受眾屬性
對(duì)于移動(dòng)應(yīng)用的用戶群體特性進(jìn)行分析,是了解應(yīng)用的受眾屬性最好的方式。掌握了受眾的屬性(如地域分布、年齡、愛(ài)好、學(xué)歷分布等),才能更加準(zhǔn)確地指導(dǎo)后續(xù)運(yùn)營(yíng)中的廣告投放,做到有的放矢,把推廣的費(fèi)用花在刀刃上。
1.4.3 用戶行為
了解了什么樣的人在使用你的應(yīng)用之后,更要了解這些人是如何使用的。用戶行為包括,用戶活躍度、留存比例、新增數(shù)量、使用時(shí)長(zhǎng)、使用頻率、使用間隔、頁(yè)面訪問(wèn)路徑、頁(yè)面訪問(wèn)深度等。通過(guò)這些翔實(shí)的數(shù)據(jù)分析,能夠讓用戶在應(yīng)用內(nèi)的行為一目了然。所以深入細(xì)致的用戶行為分析,能夠極大地幫助開(kāi)發(fā)者優(yōu)化應(yīng)用流程和定位應(yīng)用內(nèi)問(wèn)題。
圖2 數(shù)據(jù)采集實(shí)現(xiàn)原理圖
1.4.4 終端設(shè)備
移動(dòng)互聯(lián)網(wǎng)時(shí)代與PC互聯(lián)網(wǎng)時(shí)代相比,對(duì)于開(kāi)發(fā)者最大的挑戰(zhàn)之一就是終端設(shè)備千差萬(wàn)別,移動(dòng)應(yīng)用的適配問(wèn)題常常讓人頭疼。分辨率不同、機(jī)型不一樣、操作系統(tǒng)迥異,這些都給兼容性帶來(lái)了極大的挑戰(zhàn)。因此,對(duì)于開(kāi)發(fā)者來(lái)講,能夠全面掌握用戶的終端設(shè)備及網(wǎng)絡(luò)接入情況,這對(duì)產(chǎn)品設(shè)計(jì)具有指導(dǎo)性意義。
以上這些數(shù)據(jù)都是移動(dòng)應(yīng)用精細(xì)化運(yùn)營(yíng)所要研究的問(wèn)題,數(shù)據(jù)分析的本質(zhì)也是在于透過(guò)數(shù)據(jù)能夠挖掘出背后的問(wèn)題和癥結(jié)所在,用本質(zhì)原因解釋表面的現(xiàn)象,以指導(dǎo)運(yùn)營(yíng)的優(yōu)化。通過(guò)這樣的過(guò)程,數(shù)據(jù)的價(jià)值才能彰顯出來(lái)。
如圖2示,根據(jù)黨政客戶端具體業(yè)務(wù)場(chǎng)景,為實(shí)現(xiàn)移動(dòng)應(yīng)用跨平臺(tái)數(shù)據(jù)采集的總目標(biāo),分別開(kāi)發(fā)iOS和Android版的移動(dòng)應(yīng)用統(tǒng)計(jì)SDK。SDK是一些被軟件工程師用于為特定的軟件框架、硬件平臺(tái)、操作系統(tǒng)等創(chuàng)建應(yīng)用的開(kāi)發(fā)工具的集合,它可以簡(jiǎn)單的為程序設(shè)計(jì)語(yǔ)言提供應(yīng)用程序編程接口。
移動(dòng)應(yīng)用統(tǒng)計(jì)SDK參考業(yè)內(nèi)領(lǐng)先的移動(dòng)應(yīng)用數(shù)據(jù)采集工具,支持Android4.4安卓手機(jī)和iOS7蘋果手機(jī)。通過(guò)在iOS和Android原生應(yīng)用中嵌入統(tǒng)計(jì)SDK,當(dāng)自定義事件被觸發(fā)時(shí),響應(yīng)函數(shù)調(diào)用原生接口,對(duì)日志數(shù)據(jù)進(jìn)行封裝后進(jìn)行上報(bào)。由于移動(dòng)端內(nèi)存小、計(jì)算能力弱、網(wǎng)絡(luò)不穩(wěn)定等特性,在數(shù)據(jù)上報(bào)時(shí)采用移動(dòng)Ajax技術(shù)進(jìn)行異步上報(bào)。上報(bào)數(shù)據(jù)格式使用JSON半結(jié)構(gòu)化數(shù)據(jù)格式規(guī)范。
移動(dòng)應(yīng)用數(shù)據(jù)上報(bào)到統(tǒng)計(jì)分析平臺(tái)后,經(jīng)過(guò)收集、清洗、分析等數(shù)據(jù)處理過(guò)程,進(jìn)行各項(xiàng)數(shù)據(jù)匯總,結(jié)合業(yè)務(wù)模式,生成各類圖表,供產(chǎn)品運(yùn)營(yíng)及開(kāi)發(fā)人員分析參考。
3.1 Ajax
Ajax(Asynchronous JavaScript and XML)并不是一門新的語(yǔ)言 ,它實(shí)際上是由幾種主流技術(shù)以新的方式組合而成,在共同的協(xié)作中發(fā)揮各自的作用 ,并打破了使用頁(yè)面重載。
Ajax的工作原理相當(dāng)于在用戶和服務(wù)器之間加了一個(gè)中間層,使用戶操作與服務(wù)器響應(yīng)異步化。并不是所有的用戶請(qǐng)求都提交給服務(wù)器 ,像一些數(shù)據(jù)驗(yàn)證和數(shù)據(jù)處理等都交給 Ajax引擎自己來(lái)做 ,只有確定需要從服務(wù)器讀取新數(shù)據(jù)時(shí)再由 Ajax引擎代為向服務(wù)器提交請(qǐng)求,如圖3所示。
圖3 客戶端編程模型
在 Ajax之前 ,Web站點(diǎn)強(qiáng)制用戶進(jìn)入提交 /等待 /重新顯示 ,用戶的動(dòng)作總是與服務(wù)器的處理時(shí)間同步。Ajax引擎提供與服務(wù)器異步通信的能力,用戶觸發(fā)請(qǐng)求時(shí),使用 JavaScript和 html立即更新 U I ,并向服務(wù)器發(fā)出異步請(qǐng)求 ,以執(zhí)行更新或查詢等流程。當(dāng)請(qǐng)求返回時(shí) ,就可以使用JavaScript和 css來(lái)相應(yīng)地更新 UI ,并不刷新整個(gè)頁(yè)面。如果用戶交互不需要從服務(wù)器上獲得數(shù)據(jù),Ajax引擎會(huì)自主處理這個(gè)交互;如果需要從服務(wù)器上獲取一些數(shù)據(jù),Ajax引擎會(huì)完成一個(gè)異步調(diào)用,而不打斷用戶流。借助Ajax,用戶體驗(yàn)不到瀏覽器何時(shí)與服務(wù)器通信,Web應(yīng)用看起來(lái)是即時(shí)響應(yīng)的。
現(xiàn)在Ajax技術(shù)大量應(yīng)用到移動(dòng)領(lǐng)域,解決移動(dòng)業(yè)務(wù)的如下問(wèn)題:
①間斷的網(wǎng)絡(luò)連接問(wèn)題:Ajax將一部分應(yīng)用邏輯從服務(wù)器端移到瀏覽器端,與傳統(tǒng)Web應(yīng)用的按請(qǐng)求獲?。‵etch on Demand)不同,Ajax采取預(yù)?。≒redict ive Fet ch)模式可以提高緩存命中率,大幅減少用戶的訪問(wèn)延時(shí)。
②帶寬限制問(wèn)題:在一個(gè)會(huì)話中,服務(wù)器只返回一次頁(yè)面,包括模板文件、用戶導(dǎo)航及大量JavaScript代碼,由這些代碼決定是否離線處理或?qū)⒄?qǐng)求傳遞給Web服務(wù)器。在整個(gè)交互過(guò)程中,Web服務(wù)器只需發(fā)送相關(guān)的數(shù)據(jù)。這樣大幅縮減了數(shù)據(jù)的傳輸量,降低帶寬的耗費(fèi)。
③輸入補(bǔ)全:Ajax的異步機(jī)制可以在用戶輸入數(shù)據(jù)的同時(shí)從服務(wù)器取得備選數(shù)據(jù)以便自動(dòng)補(bǔ)全,極大緩解移動(dòng)設(shè)備輸入方式的壓力。
3.2 JSON
JSON(JavaScript Object Notation) 是一種輕量級(jí)的數(shù)據(jù)交換格式,基于JavaScript的一個(gè)子集。JSON有兩種數(shù)據(jù)結(jié)構(gòu),分別是對(duì)象和數(shù)組,通過(guò)這兩種結(jié)構(gòu)可以表示各種復(fù)雜的結(jié)構(gòu):
①對(duì)象:數(shù)據(jù)結(jié)構(gòu)為 {key:value,key:value...}的鍵值對(duì)。取值方法為對(duì)象key 獲取屬性值,這個(gè)屬性值的類型可以是數(shù)字、字符串、數(shù)組、對(duì)象幾種。
②數(shù)組:數(shù)組在js中是中括號(hào)“[]”括起來(lái)的內(nèi)容,數(shù)據(jù)結(jié)構(gòu)為 [“java”“javascript”“vb”...],使用索引方式取值,字段值的類型可以是數(shù)字、字符串、數(shù)組、對(duì)象幾種。
集成移動(dòng)統(tǒng)計(jì)分析SDK的應(yīng)用在啟動(dòng)后,根據(jù)上報(bào)策略(包括啟動(dòng)上報(bào)、事件上報(bào)等),完成數(shù)據(jù)組織和封裝。根據(jù)網(wǎng)絡(luò)連接情況,以POST方式向后臺(tái)上報(bào)接口進(jìn)行內(nèi)容上報(bào)。在網(wǎng)絡(luò)連接不穩(wěn)定或內(nèi)容提交不成功的情況下,將上報(bào)信息寫入本地日志文件,待恢復(fù)后再次提交日志,日志文件內(nèi)容的去重由服務(wù)器端完成。
在日志上報(bào)實(shí)現(xiàn)過(guò)程中我們遇到一種情況,就是移動(dòng)應(yīng)用會(huì)并行發(fā)出多條Ajax請(qǐng)求。在網(wǎng)絡(luò)狀況良好時(shí),基本上Ajax請(qǐng)求數(shù)對(duì)性能沒(méi)有什么影響。但是在信道資源緊張的移動(dòng)網(wǎng)絡(luò)下,會(huì)造成網(wǎng)絡(luò)擁堵的問(wèn)題。而一個(gè)移動(dòng)應(yīng)用中只有大部分主請(qǐng)求是有時(shí)效性要求的,所以我們引入Ajax隊(duì)列,將用戶行為上報(bào)請(qǐng)求滯后發(fā)送,即等主請(qǐng)求都返回后,再依次發(fā)送。這時(shí),我們就需要引入Ajax隊(duì)列的概念,將Ajax請(qǐng)求分優(yōu)先級(jí),優(yōu)先級(jí)低的可以滯后發(fā)送,盡量將網(wǎng)絡(luò)資源讓給主要的Ajax請(qǐng)求,為了方便的使用Ajax隊(duì)列,我們封裝了一個(gè)Ajax基礎(chǔ)庫(kù)(圖4)。
下面以事件上報(bào)為例,其數(shù)據(jù)組織上報(bào)和處理的時(shí)序圖如下,在數(shù)據(jù)上報(bào)過(guò)程中調(diào)用了異步上報(bào)接口(圖5)。
5.1 功能測(cè)試
4月中旬完成了統(tǒng)計(jì)上報(bào)SDK1.0版本的開(kāi)發(fā)工作后,為測(cè)試移動(dòng)應(yīng)用統(tǒng)計(jì)SDK設(shè)計(jì)是否滿足數(shù)據(jù)采集需求,選取新華河北Android版應(yīng)用為原型,進(jìn)行集成測(cè)試工作。歷時(shí)5天,完成SDK第一階段測(cè)試工作,實(shí)現(xiàn)了對(duì)欄目點(diǎn)擊量、稿件點(diǎn)擊量、停留時(shí)長(zhǎng)、終端信息、自定義事件等重點(diǎn)數(shù)據(jù)的采集功能。
圖4 異步日志上報(bào)實(shí)現(xiàn)原理圖
圖5 事件上報(bào)時(shí)序圖
集成過(guò)程遵循Android版移動(dòng)應(yīng)用統(tǒng)計(jì)SDK集成方案,圍繞業(yè)務(wù)需求主要對(duì)現(xiàn)有模塊進(jìn)行自定義事件和啟動(dòng)上報(bào)兩種方式上報(bào)數(shù)據(jù)。步驟分為后臺(tái)頁(yè)面數(shù)據(jù)注冊(cè)處理部分和前端客戶端相關(guān)模塊測(cè)試兩部分。
針對(duì)自定義上報(bào)數(shù)據(jù)方式,需首先進(jìn)入自定義事件管理模塊添加事件id并通過(guò)事件上報(bào)方式與相應(yīng)界面、模塊進(jìn)行匹配。
其次,根據(jù)要求針對(duì)用戶登錄、欄目點(diǎn)擊、文章點(diǎn)擊、文章頂踩、評(píng)論等模塊進(jìn)行事件方法的植入。
第三,利用logcat工具進(jìn)行模擬器調(diào)試,確認(rèn)數(shù)據(jù)組裝情況,調(diào)用接口,完成信息上報(bào)。
根據(jù)測(cè)試內(nèi)容需求,客戶端登錄、欄目點(diǎn)擊、稿件點(diǎn)擊、文章評(píng)論、點(diǎn)贊、收藏、欄目停留時(shí)長(zhǎng)等模塊均以事件方式上報(bào)測(cè)試數(shù)據(jù)。后臺(tái)基礎(chǔ)統(tǒng)計(jì)結(jié)果如圖6。
5.2 性能測(cè)試
①在本次測(cè)試中,將授權(quán)驗(yàn)證startWithAppKey方法植入在新華河北客戶端用戶登錄方法中,增加登錄運(yùn)行時(shí)間4-5秒,約占APP啟動(dòng)時(shí)長(zhǎng)的50%。其余上報(bào)自定義事件約占點(diǎn)擊響應(yīng)時(shí)間10%以下。
②根據(jù)統(tǒng)計(jì)分析要求,結(jié)合SDK使用文檔說(shuō)明,對(duì)原有的APP的修改主要涉及登錄界面、程序主界面、欄目列表界面、欄目訂閱、新聞詳情界面、設(shè)置界面等主要前端展示界面。涉及改動(dòng)界面Activity類10個(gè)左右,每個(gè)Activity添加相關(guān)事件上報(bào)和啟動(dòng)上報(bào)代碼大約20行。代碼開(kāi)發(fā)量與數(shù)據(jù)采集指標(biāo)、上報(bào)事件數(shù)等成正比。
圖6 APP使用時(shí)長(zhǎng)效果圖
6.1 背景介紹
黨政客戶端項(xiàng)目是全社重點(diǎn)工程,是搶占新媒體主陣地、實(shí)現(xiàn)戰(zhàn)略轉(zhuǎn)型的突破口,是推進(jìn)集成服務(wù)的新空間,搶占4G先機(jī)的制高點(diǎn)。今年全國(guó)兩會(huì)前,浙江分社建成、推出10個(gè)黨政客戶端,北京、上海、云南、江蘇等13個(gè)試點(diǎn)分社也相繼推出多個(gè)黨政客戶端應(yīng)用。2014年全年目標(biāo)為建成500-800個(gè)黨政客戶端,覆蓋三分之一縣市,初步建成全國(guó)最大的黨政客戶端集群,并逐步拓展行業(yè)、企事業(yè)用戶。
6.2 移動(dòng)應(yīng)用分析面臨的問(wèn)題
6.2.1 全局?jǐn)?shù)據(jù)需要打通
當(dāng)我們獲取單獨(dú)APP數(shù)據(jù)時(shí),這些數(shù)據(jù)都是孤立的,我們不太會(huì)關(guān)心用戶在其他APP中有什么樣的行為特征。而當(dāng)我們擁有數(shù)十個(gè)APP時(shí),如果能將各APP數(shù)據(jù)打通,那我們能獲得的數(shù)據(jù)價(jià)值將會(huì)呈幾何級(jí)數(shù)增長(zhǎng)。每個(gè)用戶使用的手機(jī)MAC號(hào)通常情況下是唯一的,所以我們可以通過(guò)MAC號(hào)來(lái)將用戶打通。
6.2.2 信息需要補(bǔ)全
在移動(dòng)應(yīng)用分析中,一個(gè)棘手的問(wèn)題,就是用戶信息不完整,不能有效地為其推送。用戶信息不完整的主要原因是在單個(gè)APP中留下的信息量少,如果能利用用戶在其他APP的信息來(lái)補(bǔ)全,則可以大大優(yōu)化用戶體驗(yàn)。
6.3 應(yīng)用展望
6.3.1 APP互推
APP互推是一種通過(guò)挖掘APP之間的隱含關(guān)系,將一個(gè)APP推送到另外一個(gè)相關(guān)類的App產(chǎn)品。在沒(méi)有打通APP數(shù)據(jù)之前,APP互推一般都是根據(jù)隨機(jī)原則、熱門APP原則、相似相近原則來(lái)進(jìn)行推薦。這些方法存在命中率問(wèn)題,如為不同類型用戶推薦相同的APP,推薦的APP符合用戶喜好的準(zhǔn)確率低,推薦內(nèi)容不夠豐富等。
當(dāng)多個(gè)APP數(shù)據(jù)打通后,原始APP推送方法可以得到明顯的改善。一方面,我們可以獲取用戶的全局信息,利用這些信息我們可以更好地為用戶做個(gè)性化推薦;另一方面,由于APP的打通,我們能更好地將用戶、APP進(jìn)行聚類分析,這樣更方便了解相似用戶對(duì)相似應(yīng)用的偏好使用。
6.3.2 廣告應(yīng)用
在沒(méi)有打通APP數(shù)據(jù)之前,APP的廣告一般都是根據(jù)APP的關(guān)鍵詞原則進(jìn)行投放,不同用戶在登錄同一應(yīng)用時(shí)可能接收到同一個(gè)廣告。這種投放方法存在明顯問(wèn)題,只抓住了APP的匹配性,沒(méi)有抓住APP上具體人的匹配性。比如:一個(gè)人剛瀏覽過(guò)母嬰類的APP轉(zhuǎn)入另一個(gè)新聞?lì)惖腁PP時(shí),該新聞?lì)怉PP大多會(huì)為其投放既定內(nèi)容廣告,而不是母嬰類的廣告。
當(dāng)我們把APP數(shù)據(jù)打通后,用戶的信息更全面,可以綜合起來(lái)使用。如上例中用戶瀏覽母嬰類APP后轉(zhuǎn)入新聞?lì)怉PP時(shí),該新聞?lì)怉PP會(huì)為其投放熱銷品和母嬰類的廣告。因?yàn)橥ㄟ^(guò)全面的用戶信息,APP已經(jīng)記憶了用戶的歷史行為。所以,當(dāng)上述情況發(fā)生時(shí),新聞網(wǎng)站可以根據(jù)用戶從母嬰網(wǎng)站帶來(lái)的喜好為其投放與其喜好相近的廣告。這樣才能更加準(zhǔn)確地抓住用戶心理,讓用戶、應(yīng)用提供商及廣告商實(shí)現(xiàn)共贏。
2013年10月 , 黨政客戶端項(xiàng)目進(jìn)入市場(chǎng),現(xiàn)已先后推出了覆蓋28省300多個(gè)資訊類移動(dòng)應(yīng)用,受到用戶好評(píng),初步取得了較好的社會(huì)和經(jīng)濟(jì)效益。隨著覆蓋區(qū)域不斷擴(kuò)大和產(chǎn)品功能日趨豐富,該品牌的權(quán)威性和影響力將更加突現(xiàn)。移動(dòng)應(yīng)用分析平臺(tái)使黨政客戶端產(chǎn)品進(jìn)入數(shù)字化運(yùn)營(yíng),科學(xué)有據(jù)的分析和合理的改進(jìn)措施必將促進(jìn)新華社出品移動(dòng)應(yīng)用的更快發(fā)展 。
[1]官建文,唐勝宏等.中國(guó)移動(dòng)互聯(lián)網(wǎng)發(fā)展報(bào)告2013[M].北京:社會(huì)科學(xué)文獻(xiàn)出版社,2013(5):253-271.
[2]張傳福,劉麗麗,盧輝斌等.移動(dòng)互聯(lián)網(wǎng)技術(shù)及業(yè)務(wù).北京:電子工業(yè)出版社,2012(1):97-101.
[3]百度移動(dòng)應(yīng)用分析白皮書v1.0,2003:4-42.
(作者單位:新華社技術(shù)局)
G210.7
A
1671-0134(2017)12-099-06
10.19483/j.cnki.11-4653/n.2017.02.028