安卓开发电量
Ⅰ 手机android系统耗电快怎么办
找到耗电元凶
首先我们在设置里查看电池耗电情况,找出耗电最多的项目。如图:
按道理来说一般使用手机的情况下应该是屏幕耗电最多,上图中显示媒体耗电最多。
排除法解决问题
重启:我们可以推断出媒体软件应该在开机过后一直在扫描,出现这样的情况我们首先可以重新启动一次(重新启动的作用是排除软件冲突),然后再观察耗电是否异常。
恢复出厂设置:如果还是耗电异常,在这种情况下可进行恢复出厂设置或者刷机,如果是非系统软件的第三方软件耗电异常我们首先重装该软件试一试。
刷机或升级:在恢复出厂设置以后还是不能解决的情况下,可能就是系统的bug,我们需要升级或者重新刷入新的系统。
电池问题:对于电池问题来说我们在耗电量上看到的情况应该是正常的,出现的问题是电池整体不耐用。
硬件问题:拿给奸商维修。
对于Android手机强大功能来说最头疼得问题就是续航能力,其实一些如360省电王、金山电池医生等等省电软件无非就是让你方便快捷的关闭一些平时用不到的功能,清除一下RAM内存,但是其软件本身会耗费大量的手机内存,今天教大家不用任何软件让你的Android手机更省电,这里我们分享几个小技巧,可以有效提高待机能力。
一、屏幕显示
降低屏幕的亮度,可以有效的节省电能,尤其是摩托产的Android手机目前为止均为TFT屏幕,同时自动锁屏幕的时间设置的短一些也会带来一些电量的节省。
二、减少后台运行的程序
很多Android软件不管有用没用都喜欢在后台运行,这样无疑增加了CPU的任务切换时间,当然由于Android系统设计原因,软件无法自动退出,可以使用第三方的小工具来解决,比如说手机优化大师的内存整理功能。
三、关闭动态壁纸,减少桌面小插件
Android系统在桌面上有很强大的功能,动态壁纸和appWidget小插件都是电量消耗大户,如果使用一个静态的图片作为Android壁纸会省不少电量,同时很多桌面小插件都是后台长期运行,比如天气、资讯、包含秒针的时钟或系统信息实时显示的小插件都比较费电,根据需要能减少一些更好。
四、WiFi、蓝牙、GPS、重力感应
对于智能手机来说,平时不用WiFi时一定不要忘记关闭它,同时在锁屏幕时尽量使用WiFi休眠功能,同时蓝牙也要禁用掉,GPS定位由于需要实时接收卫星信号十分费电,如果不在导航时一定别忘了关闭,对于重力感应来说由于内部的硬件需要时刻采集数据,同时屏幕的横竖切换都是很费电的操作。
五、尽量不在信号差的地方通话或上网
对于手机来说,信号差的地方通话或上网,手机底层的基带驱动会自动的加大收发功率,除了更耗电外辐射也会比平时大很多,所以信号质量不好一定不要上网或打电话,发短信这些操作。
六、尽量少用包含广告的软件
对于Android手机上很多软件都是免费的,但仍然有不少的软件内置了广告,由于处理广告的图片变换以及不停的下载广告图片除了更耗费电量外还会浪费GRPS流量,所以尽量少用包含广告的软件,部分广告插件还会收集用户隐私等问题。可以使用APK安装器3.0系列在安装APK之前就可以发现广告。
七、 尽量购买大RAM的机型
对于Android手机来说,更大的RAM可以有效的减少电池消耗,经过Android123开发站点评估,Android软件使用的java语言开发,在内存吃紧的情况下系统会频繁的使用Java虚拟机的GC机制,增加I/O交换和CPU运算,所以2011年买的安卓手机,至少512MB RAM,当然很多768MB或1GB的运行内存都是十分推荐的。
八、晚上睡觉时使用飞行模式
如果你晚上睡觉时不需要开手机,可以不用关机,直接进入飞行模式就可以关闭GSM移动网络通讯,这样的好处除了省电外,可以降低手机的辐射,Android手机的开机需要加载初始化大量的文件十分耗电,反复开关机也会大幅减少手机待机时间,快速进入飞行模式可以使用手机优化大师的快捷设置功能。
九、降低来电铃声音量
如果你听觉比较灵敏,可以适当的降低来电铃声的音量,同样通话音量也可以降低来达到省电的目的,但是不要设置的太小,以免耽误大事。快速调整各种音量的方法可以使用mTweak的快速设置,音量调整功能
Ⅱ 请教一个android程序 获得应用程序的的耗电量
每一个程序的耗电量?有点搞了对手机电量的管理还有api可用 打开时间不定 而且像蓝牙浏览器什么的耗电更高 各个都不一样的啊
Ⅲ 安卓手机 如何 查看 每个程序使用电量
以vivo Y85a为例,常看方法如下:
1、打开手机,在手机桌面上找到“设置”一项的图标,然后点击进入。
Ⅳ android开发时怎么避免耗电量过大
根据您的描述,若手机耗电量大,建议您按照以下方法操作:
1)以下功能使用完成后建议您及时关闭:蓝牙,WLAN,GPS,照相机等相关应用。
2)运行完程序后,建议按“返回键”退出,如果按“主屏键”,应用程序仍在后台运行,导致消耗电源和系统内存
Ⅳ 有没有什么方法能够快速,实时的获取android手机的电量值
目前电量检测的技术还不成熟,因此事实上我们是无法查看到十分准确的电量信息的。
当然,如果想实时知道电量,手机右上角状态栏中的电量图标还是可供参考的。
Ⅵ 安卓开发,我开发的软件,为什么总是提示耗电异常
安装省电软件优化一下,还是显示操作系统耗电多,并且你很看重的话,就考虑重新刷个优化的系统吧.
Ⅶ 安卓程序中如何获得手机的电量,要代码,,
直接在手机设置里面就可以看到了
Ⅷ android操作系统怎么获得电量
这个是获取电量的android DEMO:
package com.android.batterywaster;
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.os.PowerManager;
import android.view.View;
import android.widget.CheckBox;
import android.widget.TextView;
import java.text.DateFormat;
import java.util.Date;
/**
* So you thought sync used up your battery life.
*/
public class BatteryWaster extends Activity {
TextView mLog;
DateFormat mDateFormat;
IntentFilter mFilter;
PowerManager.WakeLock mWakeLock;
SpinThread mThread;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Set the layout for this activity. You can find it
// in res/layout/hello_activity.xml
setContentView(R.layout.main);
findViewById(R.id.checkbox).setOnClickListener(mClickListener);
mLog = (TextView)findViewById(R.id.log);
mDateFormat = DateFormat.getInstance();
mFilter = new IntentFilter();
mFilter.addAction(Intent.ACTION_BATTERY_CHANGED);
mFilter.addAction(Intent.ACTION_BATTERY_LOW);
mFilter.addAction(Intent.ACTION_BATTERY_OKAY);
mFilter.addAction(Intent.ACTION_POWER_CONNECTED);
PowerManager pm = (PowerManager)getSystemService(POWER_SERVICE);
mWakeLock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK, "BatteryWaster");
mWakeLock.setReferenceCounted(false);
}
@Override
public void onPause() {
stopRunning();
}
View.OnClickListener mClickListener = new View.OnClickListener() {
public void onClick(View v) {
CheckBox checkbox = (CheckBox)v;
if (checkbox.isChecked()) {
startRunning();
} else {
stopRunning();
}
}
};
void startRunning() {
log("Start");
registerReceiver(mReceiver, mFilter);
mWakeLock.acquire();
if (mThread == null) {
mThread = new SpinThread();
mThread.start();
}
}
void stopRunning() {
log("Stop");
unregisterReceiver(mReceiver);
mWakeLock.release();
if (mThread != null) {
mThread.quit();
mThread = null;
}
}
void log(String s) {
mLog.setText(mLog.getText() + "\n" + mDateFormat.format(new Date()) + ": " + s);
}
BroadcastReceiver mReceiver = new BroadcastReceiver() {
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
String title = action;
int index = title.lastIndexOf('.');
if (index >= 0) {
title = title.substring(index + 1);
}
if (Intent.ACTION_BATTERY_CHANGED.equals(action)) {
int level = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
int icon = intent.getIntExtra(BatteryManager.EXTRA_ICON_SMALL,-1);
log(title + ": level=" + level + "\n" + "icon:" + icon);
} else {
log(title);
}
}
};
class SpinThread extends Thread {
private boolean mStop;
public void quit() {
synchronized (this) {
mStop = true;
}
}
public void run() {
while (true) {
synchronized (this) {
if (mStop) {
return;
}
}
}
}
}
}
这个是layout:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
>
<CheckBox android:id="@+id/checkbox"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="25dp"
android:layout_marginTop="25dp"
android:textSize="18sp"
android:textColor="#ffffffff"
android:text="@string/waste_away"
/>
<ScrollView android:id="@+id/scroll"
android:layout_width="fill_parent"
android:layout_height="0px"
android:layout_weight="1"
>
<TextView android:id="@+id/log"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="25dp"
android:textSize="12sp"
android:textColor="#ffffffff"
/>
</ScrollView>
</LinearLayout>
Ⅸ Android如何得到电量、温度、电压
[java] view plainprint?
package com.LB;
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.widget.TextView;
public class Battery extends Activity
{
private int BatteryN; //目前电量
private int BatteryV; //电池电压
private double BatteryT; //电池温度
private String BatteryStatus; //电池状态
private String BatteryTemp; //电池使用情况
public TextView TV;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 注册一个系统 BroadcastReceiver,作为访问电池计量之用这个不能直接在AndroidManifest.xml中注册
registerReceiver(mBatInfoReceiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
TV = (TextView)findViewById(R.id.TV);
}
/* 创建广播接收器 */
private BroadcastReceiver mBatInfoReceiver = new BroadcastReceiver()
{
public void onReceive(Context context, Intent intent)
{
String action = intent.getAction();
/*
* 如果捕捉到的action是ACTION_BATTERY_CHANGED, 就运行onBatteryInfoReceiver()
*/
if (Intent.ACTION_BATTERY_CHANGED.equals(action))
{
BatteryN = intent.getIntExtra("level", 0); //目前电量
BatteryV = intent.getIntExtra("voltage", 0); //电池电压
BatteryT = intent.getIntExtra("temperature", 0); //电池温度
switch (intent.getIntExtra("status", BatteryManager.BATTERY_STATUS_UNKNOWN))
{
case BatteryManager.BATTERY_STATUS_CHARGING:
BatteryStatus = "充电状态";
break;
case BatteryManager.BATTERY_STATUS_DISCHARGING:
BatteryStatus = "放电状态";
break;
case BatteryManager.BATTERY_STATUS_NOT_CHARGING:
BatteryStatus = "未充电";
break;
case BatteryManager.BATTERY_STATUS_FULL:
BatteryStatus = "充满电";
break;
case BatteryManager.BATTERY_STATUS_UNKNOWN:
BatteryStatus = "未知道状态";
break;
}
switch (intent.getIntExtra("health", BatteryManager.BATTERY_HEALTH_UNKNOWN))
{
case BatteryManager.BATTERY_HEALTH_UNKNOWN:
BatteryTemp = "未知错误";
break;
case BatteryManager.BATTERY_HEALTH_GOOD:
BatteryTemp = "状态良好";
break;
case BatteryManager.BATTERY_HEALTH_DEAD:
BatteryTemp = "电池没有电";
break;
case BatteryManager.BATTERY_HEALTH_OVER_VOLTAGE:
BatteryTemp = "电池电压过高";
break;
case BatteryManager.BATTERY_HEALTH_OVERHEAT:
BatteryTemp = "电池过热";
break;
}
TV.setText("目前电量为" + BatteryN + "% --- " + BatteryStatus + "\n" + "电压为" + BatteryV + "mV --- " + BatteryTemp + "\n" + "温度为" + (BatteryT*0.1) + "℃");
}
}
};
}