iPhone應用程序的省電策略

原地址:http://blog.csdn.net/newjerryj/article/details/6319427

iOS的電能管理系統(tǒng)保持電能的方法是關閉當前未被使用的硬件功能。應用程序可以通過以下組件來達到省電的目的:

■ CPU

■ Wi-Fi和基帶(EDGE, 3G)無線信號

■ Core Location框架

■ 加速計

■ 磁盤

您的優(yōu)化目標應該是以盡可能有效的方式完成大多數(shù)的工作。您應該總是采用 Instruments和Shark工具對應用程序的算法進行優(yōu)化郊丛。但是,很重要的一點 是,即使最優(yōu)化的算法也可能對設備的電池壽命造成負面的影響攒读。因此,在寫 代碼的時候應該考慮如下的原則:

■ 避免需要輪詢的工作,因為輪詢會阻止CPU進入休眠狀態(tài)廓旬。您可以通過 NSRunLoop或者NSTimer類來規(guī)劃需要做的工作,而不是使用輪詢凿蒜。

■ 盡一切可能使共享的UIApplication對象的idleTimerDisabled 屬性值保持為NO。當設備處于不活動狀態(tài)一段時間后,空閑定時器會關 閉設備的屏幕绝编。如果您的應用程序不需要設備屏幕保持打開狀態(tài),就讓 系統(tǒng)將它關閉僻澎。如果關閉屏幕給您的應用程序的體驗帶來負面影響,則 需要通過修改代碼來消除那些影響,而不是不必要地關閉空閑定時器。

■ 盡可能將任務合并在一起,以便使空閑時間最大化十饥。每隔一段時間就間 歇性地執(zhí)行部分任務比一次性完成相同數(shù)量的所有任務開銷更多的電 能窟勃。間歇性地執(zhí)行任務會阻止系統(tǒng)在更長時間內無法關閉硬件。

■ 避免過度訪問磁盤逗堵。舉例來說,如果您需要將狀態(tài)信息保存在磁盤上, 則僅當該狀態(tài)信息發(fā)生變化時才進行保存,或者盡可能將狀態(tài)變化合并 保存,以避免短時間頻繁進行磁盤寫入操作秉氧。

■ 不要使屏幕描畫速度比實際需求更快。從電能消耗的角度看,描畫的開 銷很大蜒秤。不要依賴硬件來壓制應用程序的幀率,而是應該根據(jù)程序實際 需要的幀率來進行幀的描畫。

■ 盡可能快地以群發(fā)(in burst)方式傳遞數(shù)據(jù)包,而不是拉長數(shù)據(jù)傳輸?shù)?時間攘滩。當系統(tǒng)檢測到設備沒有活動時,就會關閉Wi-Fi和蜂窩無線信號掂骏。 您的應用程序以較長時間傳輸數(shù)據(jù)比以較短時間傳輸同樣數(shù)量的數(shù)據(jù)要 消耗更多的電能。

■ 盡可能通過Wi-Fi無線信號連接網(wǎng)絡。Wi-Fi耗電比基帶無線少,是推薦 的方式冒黑。

■ 如果您通過Core Location框架收集位置數(shù)據(jù),則請盡可能快地禁止位置 更新,以及將位置過濾器和精度水平設置為恰當?shù)闹德盏ore Location通 過可用的GPS、蜂窩欧穴、和Wi-Fi網(wǎng)絡來確定用戶的位置泵殴。雖然Core Location已經(jīng)努力使無線信號的使用最小化了,但是,設置恰當?shù)木?和過濾器的值可以使Core Location在不需要位置服務的時候完全關閉硬 件。更多信息請參見“獲取用戶的當前位置”部分调缨。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末弦叶,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子燕侠,更是在濱河造成了極大的恐慌立莉,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,331評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件杖虾,死亡現(xiàn)場離奇詭異奇适,居然都是意外死亡芦鳍,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,372評論 3 398
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來菲宴,“玉大人,你說我怎么就攤上這事势誊∫ゴ溃” “怎么了?”我有些...
    開封第一講書人閱讀 167,755評論 0 360
  • 文/不壞的土叔 我叫張陵挤忙,是天一觀的道長册烈。 經(jīng)常有香客問我叁执,道長矮冬,這世上最難降的妖魔是什么胎署? 我笑而不...
    開封第一講書人閱讀 59,528評論 1 296
  • 正文 為了忘掉前任琼牧,我火速辦了婚禮哀卫,結果婚禮上,老公的妹妹穿的比我還像新娘趾撵。我一直安慰自己共啃,他們只是感情好,可當我...
    茶點故事閱讀 68,526評論 6 397
  • 文/花漫 我一把揭開白布究珊。 她就那樣靜靜地躺著剿涮,像睡著了一般攻人。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上怀吻,一...
    開封第一講書人閱讀 52,166評論 1 308
  • 那天烙博,我揣著相機與錄音渣窜,去河邊找鬼。 笑死乔宿,一個胖子當著我的面吹牛访雪,可吹牛的內容都是我干的掂林。 我是一名探鬼主播坝橡,決...
    沈念sama閱讀 40,768評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼计寇,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了元莫?” 一聲冷哼從身側響起蝶押,我...
    開封第一講書人閱讀 39,664評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎茎截,沒想到半個月后离陶,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體招刨,經(jīng)...
    沈念sama閱讀 46,205評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,290評論 3 340
  • 正文 我和宋清朗相戀三年打却,在試婚紗的時候發(fā)現(xiàn)自己被綠了柳击。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片片习。...
    茶點故事閱讀 40,435評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡藕咏,死狀恐怖,靈堂內的尸體忽然破棺而出孽查,到底是詐尸還是另有隱情,我是刑警寧澤西设,帶...
    沈念sama閱讀 36,126評論 5 349
  • 正文 年R本政府宣布贷揽,位于F島的核電站,受9級特大地震影響擒滑,放射性物質發(fā)生泄漏。R本人自食惡果不足惜藻糖,卻給世界環(huán)境...
    茶點故事閱讀 41,804評論 3 333
  • 文/蒙蒙 一巨柒、第九天 我趴在偏房一處隱蔽的房頂上張望柠衍。 院中可真熱鬧,春花似錦珍坊、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,276評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至柠硕,卻和暖如春运提,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背诫咱。 一陣腳步聲響...
    開封第一講書人閱讀 33,393評論 1 272
  • 我被黑心中介騙來泰國打工洪灯, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人掏呼。 一個月前我還...
    沈念sama閱讀 48,818評論 3 376
  • 正文 我出身青樓铅檩,卻偏偏與公主長得像,于是被迫代替她去往敵國和親拾给。 傳聞我的和親對象是個殘疾皇子兔沃,可洞房花燭夜當晚...
    茶點故事閱讀 45,442評論 2 359

推薦閱讀更多精彩內容

  • 應用間通信 應用程式只能間接與設備上的其他應用進行通信乒疏。您可以使用AirDrop與其他應用程序共享文件和數(shù)據(jù)。您還...
    nicedayCoco閱讀 746評論 0 1
  • 關于iOS應用程序架構 應用程序需要與iOS一起工作窍侧,以確保他們提供出色的用戶體驗伟件。 除了為您的應用程序的設計和用...
    nicedayCoco閱讀 1,228評論 0 1
  • 在iOS中框架是一個目錄议经,包含了共享資源庫,用于訪問該資源庫中儲存的代碼的頭文件其骄,以及圖像扯旷、聲音文件等其他資源。共...
    ch123閱讀 1,780評論 0 1
  • 文@安喬Lily 1. 通常我們都以為,那個主動提出分手的人为迈,是對這段感情不再留戀的人,所以能灑脫離開搜锰。 所以耿战,當...
    安喬Lily閱讀 4,356評論 24 129
  • 我們總是要向前走,我們總是一路風塵仆仆狈涮,歸去來兮鸭栖,卷攜著前塵往事,眉目間的紋路越來越深邃纤泵,眼神越來越復雜斑駁。如果...
    一只不會飛的貓閱讀 399評論 0 0