2016-04-03 19 views
10

Ich entwickle eine informative Android-App, wo ich die Ladestrom in Milliampere lesen möchte, wenn das Gerät lädt. Ich habe andere Apps gesehen, die das können, wie Ampere.Android bekommen Ladegeschwindigkeit in Milliampere über sysfs

Ich glaube, die Informationen sollten im Verzeichnis /sys/class/power_supply/battery welche dieser Dateien sind relevant, um dies zu erreichen, und wie könnte ich die Laderate in mA daraus berechnen?

+0

jedermann? Ich kann diese Dateinamen und Inhalte veröffentlichen, wenn es helfen würde. Hatte von jemandem gehört, der das schon mal gemacht hat. –

+0

Sie können nach diesem http://stackoverflow.com/questions/2439619/getting-the-battery-current-values-for-the-android-phone –

Antwort

1

Verzeichnis kann sich je nach Telefonhersteller ändern. Siehe diesen Link für mehr Geräte unterstützen currentwidget

Und über API 21+ Gebührenzähler und Energiezähler implementiert wird: siehe doc

+0

Dies scheint derselbe Wert zu sein wie aus der Datei in der akzeptierten Antwort. Gut zu wissen. –

+0

sicher, aber wie ich weiß, die aktuelle Wertdatei ist nicht für alle Geräte gleich. Aus diesem Grund wurden in der App currentwidget viele Fälle implementiert, um fast alle Geräte zu unterstützen. – uguboz

+0

Ah ich sehe, ich habe diesen Teil verpasst. Ich entschuldige mich, das hätte die Belohnung erhalten sollen. –

6

Entsprechend der linux kernel doc, können Sie die Gebührenrate von /sys/class/power_supply/battery/current_now lesen. Der Wert ist in μA, daher sollten Sie ihn um 1000 skalieren. Negative Werte bedeuten, dass das Gerät lädt.

+0

Fantastische danke !! –

+0

Dies wurde heute getestet, dieser Wert scheint korrekt zu sein, aber der Wert wird erst 20-30 Sekunden nach dem Laden des Geräts negativ. Und wenn Sie das Gerät abziehen, bleibt es 20-30 Sekunden lang negativ, bevor es positiv wird. Ist das normal? –