/**
*
* Copyright 2011 TeleNav, Inc. All rights reserved.
* BatteryInfo.java
*
*/
package com.magic.king.batterInfo;
import android.app.Application;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.BatteryManager;
import android.util.Log;
/**
*@author jshjin (jshjin@telenav.cn)
*@date 2011-2-16
*/
public class BatteryInfo extends Application
{
public void onCreate()
{
Log.i("start applcation jjs", "jjs");
this.getInfo(this);
}
private void getInfo(Context context)
{
BroadcastReceiver receiver = new BroadcastReceiver()
{
public void onReceive(Context context, Intent intent)
{
if(intent.getAction().equals(Intent.ACTION_BATTERY_CHANGED))
{
Log.i("statue = ", "" + intent.getExtras().getInt(BatteryManager.EXTRA_STATUS));
Log.i("health = ", "" + intent.getExtras().getInt(BatteryManager.EXTRA_HEALTH));
Log.i("level = ", "" + intent.getExtras().getInt(BatteryManager.EXTRA_LEVEL));
Log.i("temp = ", "" + intent.getExtras().getInt(BatteryManager.EXTRA_TEMPERATURE));
Log.i("temp = ", "" + intent.getExtras().getInt(BatteryManager.EXTRA_VOLTAGE));
Log.i("power = ", "" + intent.getExtras().getInt(BatteryManager.EXTRA_PLUGGED));
Log.i("tech = ", "" + intent.getExtras().getString(BatteryManager.EXTRA_TECHNOLOGY));
}
}
};
int batteryLevel = -1;
context.registerReceiver(receiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
long time = System.currentTimeMillis();
while (batteryLevel == -1 && (System.currentTimeMillis() - time) < 2000)
{
try
{
Thread.sleep(50);
}
catch (InterruptedException e)
{
e.printStackTrace();
}
}
context.unregisterReceiver(receiver);
}
}
|