计算剩余电池寿命的最简单,最简单的方法:

MainActivity.java:

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.support.v7.app.AppCompatActivity;

import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

private TextView batteryPercent;

private void getBatteryPercentage() {

BroadcastReceiver batteryLevelReceiver = new BroadcastReceiver() {

public void onReceive(Context context, Intent intent) {

context.unregisterReceiver(this);

int currentLevel = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);

int scale = intent.getIntExtra(BatteryManager.EXTRA_SCALE, -1);

int level = -1;

if (currentLevel >= 0 && scale > 0) {

level = (currentLevel * 100) / scale;

}

batteryPercent.setText("Battery Level Remaining: " + level + "%");

}

};

IntentFilter batteryLevelFilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);

registerReceiver(batteryLevelReceiver, batteryLevelFilter);

}

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

batteryPercent = (TextView) this.findViewById(R.id.batteryLevel);

getBatteryPercentage();

}

}

xml文件:

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

tools:context=".MainActivity" >

android:id="@+id/batteryLevel"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:gravity="center_vertical|center_horizontal"

android:textSize="20dip">

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐