如何在乙個頁面中完整的顯示當前電池的狀態呢,諸如電壓、百分比、電池充電狀態等。以下的乙個簡單程式可達到這個目的。
import android.os.batterymanager;
import android.os.bundle;
import android.content.broadcastreceiver;
import android.content.context;
import android.content.intent;
import android.content.intentfilter;
import android.widget.textview;
在頁面中將會顯示8個狀態,所以需要在頁面定義如下textview
private textview mstatus; //電池狀態
private textview mpower; //充電源
private textview mlevel; //百分比
private textview mscale; //最大量度
private textview mhealth; //電池健康
private textview mvoltage; //電池電壓
private textview mtechnology; //電池種類
private textview mbatteryid; //電池id
private intentfilter mintentfilter;
oncreate完成繫結顯示控制項和註冊receiver,關鍵是響應系統action_battery_changed這個intent。
mintentfilter = new intentfilter();
mintentfilter.addaction(intent.action_battery_changed); //新增action_battery_changed的filter
mstatus = (textview)findviewbyid(r.id.status);
mpower = (textview)findviewbyid(r.id.power);
mlevel = (textview)findviewbyid(r.id.level);
mscale = (textview)findviewbyid(r.id.scale);
mhealth = (textview)findviewbyid(r.id.health);
mtechnology = (textview)findviewbyid(r.id.technology);
mvoltage = (textview)findviewbyid(r.id.voltage);
mbatteryid = (textview)findviewbyid(r.id.batteryid);
registerreceiver(mintentreceiver, mintentfilter);
在mintentreceiver完成對電池資訊的讀取
private broadcastreceiver mintentreceiver = new broadcastreceiver()
} else if (status == batterymanager.battery_status_discharging) else if (status == batterymanager.battery_status_not_charging) else if (status == batterymanager.battery_status_full) else
mstatus.settext(statusstring);
switch (plugtype)
int health = intent.getintextra("health", batterymanager.battery_health_unknown);
string healthstring;
healthstring = getstring(r.string.battery_info_health_label)+":";
if (health == batterymanager.battery_health_good) else if (health == batterymanager.battery_health_overheat) else if (health == batterymanager.battery_health_dead) else if (health == batterymanager.battery_health_over_voltage) else if (health == batterymanager.battery_health_unspecified_failure) else
mhealth.settext(healthstring);
}}
};
完成後在usb充電時截圖如下:
HTML5的乙個顯示電池狀態的API簡介
移動裝置的份額在網路流量中在大量增長,其所貢獻的網路流量非常龐大,以至於為了移動裝置,我們單獨建立了一些api和設計理念。乙個非常典型的例子是 w3c電池狀態api,它允許乙個應用程式獲知裝置的電池狀態資訊。這篇文章探索了這個新的api,為你展示了如何把它整合進你現有的應用程式。檢測裝置是否支援 目...
pypy的乙個測試
pypy 1.9 昨天已經發布,據稱效能又有所提高。於是我特地用乙個東西來測試一下 就是bson的 encode效率 pymongo的bson自帶乙個用c寫的擴充套件用於speed up速度。在我的t400,win7下測試。大約一秒鐘可以encode 10萬的資料。用pypy 1.9速度能達到多少呢...
軟體測試 乙個水杯的測試
乙個水杯的測試 滿有意思,如果你願意,可以發揮一下你的想象先,然後再看看別人例子,你會更加有收穫噢!測試是一種思想,一種思路,當你腦子裡面這個思路思想很清晰的時候 我們測試人員什麼東東不會測試?hoho!比較有意思的答案如下兩種 一種 測試專案 杯子 需求測試 檢視杯子使用說明書 介面測試 檢視杯子...