色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

有效控制Android應(yīng)用程序的耗電量

  在對尚郵架構(gòu)師的訪談中曾經(jīng)探討過移動開發(fā)是否要重視移動終端軟件的耗電問題,答案是顯而易見的!那么如何才能降低Android應(yīng)用程序的耗電量呢?今天再一次回顧了一下09年Google IO大會Jeffrey Sharkey的演講(Coding for Life — Battery Life, That Is),同時也講一下應(yīng)該如何有效地控制耗電量問題。

  首先我們來看看Android手機(jī)的電量都主要消耗在了什么地方:

  顯而易見,大部分的電都消耗在了網(wǎng)絡(luò)連接、GPS、傳感器上了。

  簡單的說也就是主要在以下情況下耗電比較多:

  1、大數(shù)據(jù)量的傳輸。

  2、不停的在網(wǎng)絡(luò)間切換。

  3、解析大量的文本數(shù)據(jù)。

  那么我們怎么樣來改善一下我們的程序呢?

  1、在需要網(wǎng)絡(luò)連接的程序中,首先檢查網(wǎng)絡(luò)連接是否正常,如果沒有網(wǎng)絡(luò)連接,那么就不需要執(zhí)行相應(yīng)的程序。

  檢查網(wǎng)絡(luò)連接的方法如下:

 ConnectivityManager mConnectivity;    
TelephonyManager mTelephony;
……
// 檢查網(wǎng)絡(luò)連接,如果無網(wǎng)絡(luò)可用,就不需要進(jìn)行連網(wǎng)操作等  
NETworkInfo info
= mConnectivity.getActiveNETworkInfo();
if (info == null ||
!mConnectivity.getBackgroundDataSetting()) {
return false;
}
//判斷網(wǎng)絡(luò)連接類型,只有在3G或wifi里進(jìn)行一些數(shù)據(jù)更新。  
int NETType = info.getType();
int NETSubtype = info.getSubtype();
if (NETType == ConnectivityManager.TYPE_WIFI) {
return info.isConnected();
}
else if (NETType == ConnectivityManager.TYPE_MOBILE
&& NETSubtype == TelephonyManager.NETWORK_TYPE_UMTS
&& !mTelephony.isNETworkRoaming()) {
return info.isConnected();
}
else {
return false;
}

it知識庫有效控制Android應(yīng)用程序的耗電量,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 鄯善县| 沈丘县| 西充县| 和龙市| 白朗县| 河曲县| 盐城市| 阿巴嘎旗| 龙川县| 长春市| 崇阳县| 合阳县| 太康县| 镇安县| 洪湖市| 墨脱县| 德令哈市| 台江县| 波密县| 育儿| 佳木斯市| 施秉县| 孟连| 集安市| 奈曼旗| 穆棱市| 桐乡市| 景宁| 镇坪县| 海宁市| 马公市| 吉安市| 河南省| 五原县| 自治县| 运城市| 濮阳市| 鹤峰县| 汉源县| 巴塘县| 新丰县|