1
A
答えて
2
ありません、申し訳ありません。残りの料金レベル(EXTRA_LEVEL
、0からEXTRA_SCALE
までの値)は取得できますが、生のmAH値は取得できません。
0
はい、標準APIはありませんが、可能です。 Current Widgetソースコードに基づいて、さまざまなデバイスの特定のファイルを読み取ります。下記の
package com.manor.currentwidget.library;
import java.io.File;
import java.util.Locale;
import android.annotation.TargetApi;
import android.os.Build;
public class CurrentReaderFactory {
static final String BUILD_MODEL = Build.MODEL.toLowerCase(Locale.ENGLISH);
@TargetApi(4)
static public Long getValue() {
File f = null;
if (CurrentReaderFactory.BUILD_MODEL.contains("nexus 7")) {
f = new File("/sys/class/power_supply/battery/current_now");
if (f.exists()) {
return OneLineReader.getValue(f, false);
}
}
if (CurrentReaderFactory.BUILD_MODEL.contains("sl930")) {
f = new File("/sys/class/power_supply/da9052-bat/current_avg");
if (f.exists()) {
return OneLineReader.getValue(f, false);
}
}
// Galaxy S4
if (CurrentReaderFactory.BUILD_MODEL.contains("sgh-i337")
|| CurrentReaderFactory.BUILD_MODEL.contains("gt-i9505")
|| CurrentReaderFactory.BUILD_MODEL.contains("gt-i9500")
|| CurrentReaderFactory.BUILD_MODEL.contains("sch-i545")
|| CurrentReaderFactory.BUILD_MODEL.contains("find 5")
|| CurrentReaderFactory.BUILD_MODEL.contains("sgh-m919")
|| CurrentReaderFactory.BUILD_MODEL.contains("sgh-i537")) {
f = new File("/sys/class/power_supply/battery/current_now");
if (f.exists()) {
return OneLineReader.getValue(f, false);
}
}
if (CurrentReaderFactory.BUILD_MODEL.contains("cynus")) {
f = new File(
"/sys/devices/platform/mt6329-battery/FG_Battery_CurrentConsumption");
if (f.exists()) {
return OneLineReader.getValue(f, false);
}
}
// Zopo Zp900, etc.
if (CurrentReaderFactory.BUILD_MODEL.contains("zp900")
|| CurrentReaderFactory.BUILD_MODEL.contains("jy-g3")
|| CurrentReaderFactory.BUILD_MODEL.contains("zp800")
|| CurrentReaderFactory.BUILD_MODEL.contains("zp800h")
|| CurrentReaderFactory.BUILD_MODEL.contains("zp810")
|| CurrentReaderFactory.BUILD_MODEL.contains("w100")
|| CurrentReaderFactory.BUILD_MODEL.contains("zte v987")) {
f = new File(
"/sys/class/power_supply/battery/BatteryAverageCurrent");
if (f.exists()) {
return OneLineReader.getValue(f, false);
}
}
// Samsung Galaxy Tab 2
if (CurrentReaderFactory.BUILD_MODEL.contains("gt-p31")
|| CurrentReaderFactory.BUILD_MODEL.contains("gt-p51")) {
f = new File("/sys/class/power_supply/battery/current_avg");
if (f.exists()) {
return OneLineReader.getValue(f, false);
}
}
// HTC One X
if (CurrentReaderFactory.BUILD_MODEL.contains("htc one x")) {
f = new File("/sys/class/power_supply/battery/batt_attr_text");
if (f.exists()) {
Long value = BattAttrTextReader.getValue(f, "I_MBAT", "I_MBAT");
if (value != null)
return value;
}
}
// wildfire S
if (CurrentReaderFactory.BUILD_MODEL.contains("wildfire s")) {
f = new File("/sys/class/power_supply/battery/smem_text");
if (f.exists()) {
Long value = BattAttrTextReader.getValue(f, "eval_current",
"batt_current");
if (value != null)
return value;
}
}
// trimuph with cm7, lg ls670, galaxy s3, galaxy note 2
if (CurrentReaderFactory.BUILD_MODEL.contains("triumph")
|| CurrentReaderFactory.BUILD_MODEL.contains("ls670")
|| CurrentReaderFactory.BUILD_MODEL.contains("gt-i9300")
|| CurrentReaderFactory.BUILD_MODEL.contains("gt-n7100")
|| CurrentReaderFactory.BUILD_MODEL.contains("sgh-i317")) {
f = new File("/sys/class/power_supply/battery/current_now");
if (f.exists()) {
return OneLineReader.getValue(f, false);
}
}
// htc desire hd/desire z/inspire?
// htc evo view tablet
if (CurrentReaderFactory.BUILD_MODEL.contains("desire hd")
|| CurrentReaderFactory.BUILD_MODEL.contains("desire z")
|| CurrentReaderFactory.BUILD_MODEL.contains("inspire")
|| CurrentReaderFactory.BUILD_MODEL.contains("pg41200")) {
f = new File("/sys/class/power_supply/battery/batt_current");
if (f.exists()) {
return OneLineReader.getValue(f, false);
}
}
// nexus one cyangoenmod
f = new File("/sys/devices/platform/ds2784-battery/getcurrent");
if (f.exists()) {
return OneLineReader.getValue(f, true);
}
// sony ericsson xperia x1
f = new File(
"/sys/devices/platform/i2c-adapter/i2c-0/0-0036/power_supply/ds2746-battery/current_now");
if (f.exists()) {
return OneLineReader.getValue(f, false);
}
// xdandroid
/* if (Build.MODEL.equalsIgnoreCase("MSM")) { */
f = new File(
"/sys/devices/platform/i2c-adapter/i2c-0/0-0036/power_supply/battery/current_now");
if (f.exists()) {
return OneLineReader.getValue(f, false);
}
/* } */
// droid eris
f = new File("/sys/class/power_supply/battery/smem_text");
if (f.exists()) {
Long value = SMemTextReader.getValue();
if (value != null)
return value;
}
// htc sensation/evo 3d
f = new File("/sys/class/power_supply/battery/batt_attr_text");
if (f.exists()) {
Long value = BattAttrTextReader.getValue(f,
"batt_discharge_current", "batt_current");
if (value != null)
return value;
}
// some htc devices
f = new File("/sys/class/power_supply/battery/batt_current");
if (f.exists())
return OneLineReader.getValue(f, false);
// nexus one
f = new File("/sys/class/power_supply/battery/current_now");
if (f.exists())
return OneLineReader.getValue(f, true);
// samsung galaxy vibrant
f = new File("/sys/class/power_supply/battery/batt_chg_current");
if (f.exists())
return OneLineReader.getValue(f, false);
// sony ericsson x10
f = new File("/sys/class/power_supply/battery/charger_current");
if (f.exists())
return OneLineReader.getValue(f, false);
// Nook Color
f = new File("/sys/class/power_supply/max17042-0/current_now");
if (f.exists())
return OneLineReader.getValue(f, false);
// Xperia Arc
f = new File("/sys/class/power_supply/bq27520/current_now");
if (f.exists())
return OneLineReader.getValue(f, true);
// Motorola Atrix
f = new File(
"/sys/devices/platform/cpcap_battery/power_supply/usb/current_now");
if (f.exists())
return OneLineReader.getValue(f, false);
// Acer Iconia Tab A500
f = new File("/sys/EcControl/BatCurrent");
if (f.exists())
return OneLineReader.getValue(f, false);
// charge current only, Samsung Note
f = new File("/sys/class/power_supply/battery/batt_current_now");
if (f.exists())
return OneLineReader.getValue(f, false);
// galaxy note, galaxy s2
f = new File("/sys/class/power_supply/battery/batt_current_adc");
if (f.exists())
return OneLineReader.getValue(f, false);
// intel
f = new File("/sys/class/power_supply/max170xx_battery/current_now");
if (f.exists())
return OneLineReader.getValue(f, true);
// Sony Xperia U
f = new File("/sys/class/power_supply/ab8500_fg/current_now");
if (f.exists())
return OneLineReader.getValue(f, true);
f = new File("/sys/class/power_supply/android-battery/current_now");
if (f.exists()) {
return OneLineReader.getValue(f, false);
}
// Nexus 10, 4.4.
f = new File("/sys/class/power_supply/ds2784-fuelgauge/current_now");
if (f.exists()) {
return OneLineReader.getValue(f, true);
}
f = new File("/sys/class/power_supply/Battery/current_now");
if (f.exists()) {
return OneLineReader.getValue(f, false);
}
return null;
}
}
関連する問題
- 1. バッテリーの充電量の読み取り方法は?
- 2. 携帯電話の充電中にカスタムAndroidバッテリーのアイコン
- 3. BatterManagerからの最後のバッテリー充電日時の取得
- 4. 携帯電話が現在充電中であるか、バッテリーが充電されているかをプログラムで確認する方法はありますか?
- 5. Appiumアンドロイド携帯電話のバッテリーの充電と放電のテスト?
- 6. Androidのサービス制限付きでバックグラウンドでバッテリー残量を確認するO
- 7. バッテリーの充電速度をテストするには?
- 8. Androidバッテリー残量通知&5分後のシャットダウン/デバイスの電源オフ
- 9. 入力タイプhtml5の画像の最大量を確認する
- 10. バッテリの充電を確認するためのバッチファイル
- 11. Bluetoothスキャンによるバッテリー消費量の確認方法
- 12. 充電器がAndroid 2.3.4 ..のアクセサリとして認識されますか?
- 13. バッテリー残量を測定しますか?
- 14. Androidバッテリーの消費量の問題
- 15. NodeMCUでバッテリーの状態を確認しますか?
- 16. RoboVMで電話が充電されているか確認するには?
- 17. LocationManagerのAndroid addProximityAlertがバッテリーを大量に使用しているかどうかを知りませんか
- 18. Androidバッテリーの最適化
- 19. Android開発:バッテリー残量を表示
- 20. Androidスタジオは充電モードで電話を認識できません
- 21. android - バッテリーの電流値の単位は?
- 22. 私のノートパソコンのバッテリーが「充電されていて充電されていません」と表示されますか?私に何ができる?
- 23. Android - CPU使用率とバッテリーの放電
- 24. 最小値と最大値の確認
- 25. Xamarin Androidアプリは、異常な量のバッテリーを消費します。どうして?
- 26. Firebaseの電子メールの確認android
- 27. ストライプとNodeJS - 充電する量を渡す
- 28. 電話番号を確認するAndroid
- 29. SQL:行の最大数を確認
- 30. 動的幅の最大フォントサイズを確認
このコードはあなたに(通常はミリアンペアで)デバイスの瞬時電流ではなく、バッテリ容量を提供します。 Btw、私はCurrentWidgetを書いた:) – Ran
おっと私の悪い。 :)質問を誤解する。私の答えを削除しますが、ここにいくつかの答えがあるようです:http://stackoverflow.com/questions/23193388/android-get-battery-current-capacity-in-ma-and-total-capacity-of-battery- in-mahとhttp://stackoverflow.com/questions/22243461/android-is-there-anyway-to-get-battery-capacity-of-a-device-in-mah?rq=1 – thewheat
ありがとうございました。 。,,, dhjdf – Ran