2010-01-09 50 views
3

因此,我正在開發一款適用於Android的應用程序,並且在我陷入困境之前,我想從概念上理解我正在嘗試做的事情。如何計算最常用的應用程序?

難以計算或跟蹤最常訪問的應用程序嗎?

任何有關如何完成此任務的想法或見解都將不勝感激!

我已經習慣了iPhone的開發,但對於Android平臺來說還是比較新的。

回答

2

我相信只有框架才能訪問這類信息; Android應用程序在很大程度上不了解對方,無法確定系統上發生了什麼。

但是,由於Android基於Linux,通過在設備上運行ps(進程列表)命令,可能會在Android應用程序框架外收集一些信息。

系統上運行的每個進程都通過其包名來標識。但是,流程列表中的項目的存在並不一定意味着使用。例如,即使沒有用戶交互,後臺服務也會顯示應用程序正在運行。同樣,APK可以在同一個包名下包含多個邏輯應用程序。

+1

請注意,嘗試使用'ps'可能會或可能無法在任何給定的Android設備上工作,因爲我認爲控制檯模式應用程序不一定是SDK的一部分。 – CommonsWare 2010-01-09 02:45:40

+1

這個簡單的解決方案就是在APK中包含你自己的ARM'ps'二進制文件。 ;) – 2010-01-09 02:51:04

2

我的手機上有一個名爲spare parts的應用程序,它顯示了這些信息(在「使用統計信息」下),所以它絕對有可能。

+0

我相信只是激發一個'Intent'來顯示系統設置應用程序中的使用狀態。您可以從Settings源代碼中看到它使用系統內部服務來處理使用情況數據:http://android.git.kernel.org/?p=platform/packages/apps/Settings.git;a=blob ; F = SRC/COM /機器人/設置/ UsageStats.java; H = fcb699026e39bd6d7c3a1792d2360eec5f44ee12; HB = HEAD – 2010-01-10 15:15:52

相關問題