android系統cpu資源相關查詢

來源:互聯網
上載者:User

標籤:android   style   blog   http   color   io   os   使用   java   

android系統cpu資源相關查詢


       我們都知道android是基於linux系統核心的,在linux系統中我們查看系統資源消耗情況,一個可以直接通過命令列的top命令來看,裡面有cpu具體的使用方式,當然在android系統上也還是保留了的。top還是很有用,那在android應用上怎麼表現出來呢?

      在【設定】應用中,在開發人員選項裡面就有一項現成的看cpu使用方式的,具體情況的顯示是顯示在ui的系統層,而不是activities,是始終高於activities的,保障在任何應用介面裡都可以顯示正常,ui的這種系統層設計還是挺不錯的。我們先看看這個設定吧!如:

/*****************************************************************************************************/
聲明:本博內容均由http://blog.csdn.net/edsam49原創,轉載請註明出處,謝謝!
/*****************************************************************************************************/


             我們在系統的右上方可以看到這個特殊圖層的顯示,最上面顯示的loadavg,就是平均載荷,下面就是活躍的幾個任務。這怎麼實現的呢?

          在android4.4系統中,在設定應用的代碼裡有DevelopmentSettings.java,裡面有一個SHOW_CPU_USAGE_KEY,跟蹤它可以找到一些關鍵代碼:

    private void updateCpuUsageOptions() {        updateCheckBox(mShowCpuUsage, Settings.Global.getInt(getActivity().getContentResolver(),                Settings.Global.SHOW_PROCESSES, 0) != 0);    }    private void writeCpuUsageOptions() {        boolean value = mShowCpuUsage.isChecked();        Settings.Global.putInt(getActivity().getContentResolver(),                Settings.Global.SHOW_PROCESSES, value ? 1 : 0);        Intent service = (new Intent())                .setClassName("com.android.systemui", "com.android.systemui.LoadAverageService");        if (value) {            getActivity().startService(service);        } else {            getActivity().stopService(service);        }    }

           裡面很清楚了就是選項的checkbox跟Settings.Global.SHOW_PROCESSES這個資料庫的設定值有關係,具體如果勾上了,就去觸發啟動systemui上的一個服務LoadAverageService,這個服務裡面就是得到一些cpu的資料,先分析到這裡,下一篇文章研究一下LoadAverageService的一些東西,無法也是分析proc下面的一下系統狀態檔案。


    

android系統cpu資源相關查詢

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.