欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android監(jiān)聽電池狀態(tài)實例代碼

 更新時間:2016年03月01日 10:44:43   投稿:mrr  
這篇文章給大家介紹Android監(jiān)聽電池狀態(tài)實例代碼,對android監(jiān)聽電池狀態(tài)相關(guān)知識感興趣的朋友一起學(xué)習(xí)吧

如果要監(jiān)聽電池的狀態(tài)改變,需要動態(tài)注冊:android.intent.action.BATTERY_CHANGED,收到Action后可以根據(jù)對應(yīng)的Key獲取你需要的信息,更詳細信息可以參考以下例子中的BatteryChangedReceiver類

具體代碼如下所示:

package com.example.charginganimation;
import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.BatteryManager;
import android.os.Bundle;
import android.view.View;
public class MainActivity extends Activity {
private CustomClipLoading ccl;
private BatteryChangedReceiver receiver = new BatteryChangedReceiver();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
registerReceiver(receiver, getFilter());
}
private IntentFilter getFilter() {
IntentFilter filter = new IntentFilter();
filter.addAction(Intent.ACTION_BATTERY_CHANGED);
filter.addAction(Intent.ACTION_BATTERY_LOW);
filter.addAction(Intent.ACTION_BATTERY_OKAY);
return filter;
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
unregisterReceiver(receiver);
super.onDestroy();
}
class BatteryChangedReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
final String action = intent.getAction();
if (action.equalsIgnoreCase(Intent.ACTION_BATTERY_CHANGED)) {
System.out
.println("BatteryChangedReceiver BATTERY_CHANGED_ACTION---");
// 當前電池的電壓
int voltage = intent.getIntExtra(BatteryManager.EXTRA_VOLTAGE,
-1);
// 電池的健康狀態(tài)
int health = intent
.getIntExtra(BatteryManager.EXTRA_HEALTH, -1);
switch (health) {
case BatteryManager.BATTERY_HEALTH_COLD:
System.out.println("BATTERY_HEALTH_COLD");
break;
case BatteryManager.BATTERY_HEALTH_DEAD:
System.out.println("BATTERY_HEALTH_DEAD ");
break;
case BatteryManager.BATTERY_HEALTH_GOOD:
System.out.println("BATTERY_HEALTH_GOOD");
break;
case BatteryManager.BATTERY_HEALTH_OVERHEAT:
System.out.println("BATTERY_HEALTH_OVERHEAT");
break;
case BatteryManager.BATTERY_HEALTH_OVER_VOLTAGE:
System.out.println("BATTERY_HEALTH_COLD");
break;
case BatteryManager.BATTERY_HEALTH_UNKNOWN:
System.out.println("BATTERY_HEALTH_UNKNOWN");
break;
case BatteryManager.BATTERY_HEALTH_UNSPECIFIED_FAILURE:
System.out.println("BATTERY_HEALTH_UNSPECIFIED_FAILURE");
break;
default:
break;
}
// 電池當前的電量, 它介于0和 EXTRA_SCALE之間
int level = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
// 電池電量的最大值
int scale = intent.getIntExtra(BatteryManager.EXTRA_SCALE, -1);
// 當前手機使用的是哪里的電源
int pluged = intent.getIntExtra(BatteryManager.EXTRA_PLUGGED,
-1);
switch (pluged) {
case BatteryManager.BATTERY_PLUGGED_AC:
// 電源是AC charger.[應(yīng)該是指充電器]
System.out.println("BATTERY_PLUGGED_AC");
break;
case BatteryManager.BATTERY_PLUGGED_USB:
// 電源是USB port
System.out.println("BATTERY_PLUGGED_USB ");
break;
default:
break;
}
int status = intent
.getIntExtra(BatteryManager.EXTRA_STATUS, -1);
switch (status) {
case BatteryManager.BATTERY_STATUS_CHARGING:
// 正在充電
System.out.println("BATTERY_STATUS_CHARGING ");
break;
case BatteryManager.BATTERY_STATUS_DISCHARGING:
System.out.println("BATTERY_STATUS_DISCHARGING ");
break;
case BatteryManager.BATTERY_STATUS_FULL:
// 充滿
System.out.println("BATTERY_STATUS_FULL ");
break;
case BatteryManager.BATTERY_STATUS_NOT_CHARGING:
// 沒有充電
System.out.println("BATTERY_STATUS_NOT_CHARGING ");
break;
case BatteryManager.BATTERY_STATUS_UNKNOWN:
// 未知狀態(tài)
System.out.println("BATTERY_STATUS_UNKNOWN ");
break;
default:
break;
}
// 電池使用的技術(shù)。比如,對于鋰電池是Li-ion
String technology = intent
.getStringExtra(BatteryManager.EXTRA_TECHNOLOGY);
// 當前電池的溫度
int temperature = intent.getIntExtra(
BatteryManager.EXTRA_TEMPERATURE, -1);
System.out.println("voltage = " + voltage + " technology = "
+ technology + " temperature = " + temperature
+ " level = " + level + " scale = " + scale);
} else if (action.equalsIgnoreCase(Intent.ACTION_BATTERY_LOW)) {
// 表示當前電池電量低
System.out
.println("BatteryChangedReceiver ACTION_BATTERY_LOW---");
} else if (action.equalsIgnoreCase(Intent.ACTION_BATTERY_OKAY)) {
// 表示當前電池已經(jīng)從電量低恢復(fù)為正常
System.out
.println("BatteryChangedReceiver ACTION_BATTERY_OKAY---");
}
}
}
}

獲取apk和版本信息

private int getVerCode(Context context) {
int verCode = -1;
try {
verCode = context.getPackageManager().getPackageInfo(
"com.example.charginganimation", 0).versionCode;
} catch (NameNotFoundException e) {
e.printStackTrace();
}
return verCode;
}
private String getVerName(Context context) {
String verName = "";
try {
verName = context.getPackageManager().getPackageInfo(
"com.example.charginganimation", 0).versionName;
} catch (NameNotFoundException e) {
e.printStackTrace();
}
return verName;
}

以上代碼內(nèi)容是小編給大家介紹的android監(jiān)聽電池狀態(tài)的實例代碼,本文寫的不好還請見諒,有好的意見歡迎給小編留言,我會及時給大家溝通的,謝謝大家一直以來對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Android studio設(shè)置指定的簽名文件教程

    Android studio設(shè)置指定的簽名文件教程

    這篇文章主要介紹了Android studio設(shè)置指定的簽名文件教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • Android 獲取瀏覽器當前分享頁面的截屏示例

    Android 獲取瀏覽器當前分享頁面的截屏示例

    本篇文章主要介紹了Android 獲取瀏覽器當前分享頁面的截屏示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • android 實現(xiàn)圓角圖片解決方案

    android 實現(xiàn)圓角圖片解決方案

    現(xiàn)在我們就來看看怎么樣把圖片的四角都變成圓形的,為什么要這樣做那,可能是為了美化界面吧,下面我們就來看看代碼吧
    2012-11-11
  • Android開發(fā)實現(xiàn)ImageView寬度頂邊顯示,高度保持比例的方法

    Android開發(fā)實現(xiàn)ImageView寬度頂邊顯示,高度保持比例的方法

    這篇文章主要介紹了Android開發(fā)實現(xiàn)ImageView寬度頂邊顯示,高度保持比例的方法,結(jié)合實例形式分析了Android ImageView界面布局及元素屬性動態(tài)操作兩種功能實現(xiàn)技巧,需要的朋友可以參考下
    2018-02-02
  • Android 高仿微信朋友圈拍照上傳功能

    Android 高仿微信朋友圈拍照上傳功能

    這篇文章主要介紹了Android 高仿微信朋友圈拍照上傳功能,需要的朋友可以參考下
    2017-10-10
  • Android?Doze低電耗休眠模式?與?WorkManager詳解

    Android?Doze低電耗休眠模式?與?WorkManager詳解

    這篇文章主要討論了Android?Doze模式下WorkManager的任務(wù)執(zhí)行限制及解決方案,Doze模式下,系統(tǒng)為省電會延遲后臺活動,WorkManager的周期性任務(wù)最小間隔被強制設(shè)為15分鐘,即使設(shè)置更短時間也會被系統(tǒng)替換,本文給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2025-09-09
  • Android Studio設(shè)置主題與字體大小圖文教程

    Android Studio設(shè)置主題與字體大小圖文教程

    這篇文章通過圖文詳細的給大家介紹了Android Studio中如何設(shè)置主題與字體大小,文章介紹的非常詳細,相信對大家學(xué)習(xí)使用Android Studio具有一定的參考借鑒價值,有需要的朋友們下面來一起看看吧。
    2016-10-10
  • Android中實現(xiàn)在矩形框中輸入文字顯示剩余字數(shù)的功能

    Android中實現(xiàn)在矩形框中輸入文字顯示剩余字數(shù)的功能

    在矩形輸入框框中輸入文字顯示剩余字數(shù)的功能在app開發(fā)中經(jīng)常會見到,今天小編就通過實例代碼給大家分享android實現(xiàn)輸入框提示剩余字數(shù)功能,代碼簡單易懂,需要的朋友參考下吧
    2017-04-04
  • Android自定義dialog簡單實現(xiàn)方法

    Android自定義dialog簡單實現(xiàn)方法

    這篇文章主要介紹了Android自定義dialog簡單實現(xiàn)方法,實例分析了Android自定義對話框的相關(guān)設(shè)置技巧,代碼備有詳細的注釋便于理解,需要的朋友可以參考下
    2016-01-01
  • Android?Studio中如何修改APP圖標和APP名稱

    Android?Studio中如何修改APP圖標和APP名稱

    這篇文章主要介紹了Android?Studio中如何修改APP圖標和APP名稱,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11

最新評論