中文字幕亚洲欧美一区_国产JIZZJIZZ免费看_亚洲av大码在线_亚洲黄色一级毛片_野花影视大全在线观看免费_欧美一区二区三区免费不卡_欧美日韩国产在线精品_国产福利盒子在线看片_精品国产人成在线_日韩欧美动漫一区在线

024-3189 1684

回到舊版

獲取App累積時(shí)長(zhǎng)的方法在沈陽(yáng)APP開(kāi)發(fā)中的實(shí)現(xiàn)

2024/8/2 11:29:37 瀏覽:2002

我們都知道做一款A(yù)PP產(chǎn)品,首要目的是如何提高用戶(hù)的活躍度,但是首先我們要能收集到每個(gè)用戶(hù)使用APP的時(shí)間,然后細(xì)分到每個(gè)APP頁(yè)面的使用時(shí)間,最后將這些時(shí)間值上傳到特定的服務(wù)器后臺(tái),有了特定的數(shù)據(jù)后就可以進(jìn)行分析了。所以最關(guān)鍵的一步是如何在實(shí)際APP開(kāi)發(fā)中將這一功能實(shí)現(xiàn),今天就來(lái)和大家分享一下本人的一些方法。首先先了解下應(yīng)用對(duì)象Application的ActivityLifecycleCallbacks方法,這個(gè)API最好在Application中調(diào)用,作為貫穿整個(gè)應(yīng)用的對(duì)象,應(yīng)用對(duì)象的Context,applicationContext擁有比Activity更長(zhǎng)的生命周期,更易維護(hù),回調(diào)函數(shù)少,也不用申請(qǐng)權(quán)限,作為sdk開(kāi)發(fā)而言,權(quán)限盡量越少越好。我們可以實(shí)現(xiàn)一個(gè)ActivityLifeCycle,然后繼承Application的生命周期接口即ActivityLifecycleCallbacks,判斷應(yīng)用是否已經(jīng)在前臺(tái),定義頁(yè)面啟動(dòng)時(shí)的開(kāi)始時(shí)間點(diǎn)appStartTime和運(yùn)行時(shí)間runTimeThisDay,在onActivityStarted方法在根據(jù)System.currentTimeMillis()當(dāng)前時(shí)間,用當(dāng)前時(shí)間減去開(kāi)始時(shí)間,得到上次檢查時(shí)間lastCheckTime,然后將時(shí)間保存到ShareprefUtils。第二部在onActivityResumed方法中,更新上次檢查時(shí)間lastCheckTime=System.currentTimeMillis(),同時(shí)在onActivityPaused方法中獲取上次activity暫停的時(shí)間lastPausedActivityName,用activity的getCanonicalName獲取,如果用戶(hù)手動(dòng)結(jié)束了當(dāng)前頁(yè)面activity且是最后一個(gè)頁(yè)面,保存運(yùn)行時(shí)間runTimeThisDay直接上傳后臺(tái),如果不是最后一個(gè)頁(yè)面,就暫時(shí)保存到本地,最后在用戶(hù)退出整個(gè)APP時(shí),調(diào)用onActivityDestroyed方法,更新運(yùn)行時(shí)間runTimeThisDay上傳后臺(tái)服務(wù)器,至此在APP中計(jì)算并保存運(yùn)行時(shí)間的功能已經(jīng)基本實(shí)現(xiàn)。


返回

聯(lián)系易勢(shì)

024- 3189 1684

售前QQ:724793417 售后qq:1992978979

地址:沈陽(yáng)市和平區(qū)中山路111號(hào)亞貿(mào)大廈1305、1306室

網(wǎng)站制作 掃碼咨詢(xún)

遼公網(wǎng)安備 21010202000627號(hào)