歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Android數據傳輸省電方法

Android數據傳輸省電方法

日期:2017/3/1 9:54:52   编辑:Linux編程

一、下載優化

眾所周知,Android系統一個最大的缺點也就是電量問題。這裡我們在下載方面進行優化,能盡可能達到省電的目的。

1.盡可能的將數據一起傳送,無限制讀取緩存數據也會加重電量的消耗。一般來說,每2至5分鐘取一次數據,每次1至5M是最佳的選擇,也可以避免下載重復的數據。

2.使用Google Cloud Messaging for Android (GCM)推送App的更新通知。這樣不需要自己單獨建立網絡連接進行更新。

二、更新策略

設置一個合適的頻率,最好允許用戶修改輪詢頻率。

private void enableHttpResponseCache() {
try {
long httpCacheSize = 10 * 1024 * 1024; // 10 MiB
File httpCacheDir = new File(getCacheDir(), "http");
Class.forName("android.net.http.HttpResponseCache")
.getMethod("install", File.class, long.class)
.invoke(null, httpCacheDir, httpCacheSize);
} catch (Exception httpResponseCacheNotAvailable) {
Log.d(TAG, "HTTP response cache is unavailable.");
}
}

三、修改網絡連接模式

大多數情況下,Wi-Fi對電量的消耗要比3G小。

NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
int PrefetchCacheSize = DEFAULT_PREFETCH_CACHE;
switch (activeNetwork.getType()) {
case ConnectivityManager.TYPE_WIFI:
... ...
case ConnectivityManager.TYPE_MOBILE:
... ...
default: break;
}

更多Android相關信息見Android 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=11

Copyright © Linux教程網 All Rights Reserved