パトロールされたandroid.jarを個人的に使用すると、頭痛の原因となります。リフレクションを使用するのは、PowerProfile.javaにアクセスする「簡単な」方法です。しかし、@FoamyGuyと数え切れないほどの人たちが、これは隠されたAPIなので、Androidの後のバージョンで壊れる可能性があるので、試してみてください。
Class<?> powerProfileClazz = Class.forName("com.android.internal.os.PowerProfile");
//get constructor that takes a context object
Class[] argTypes = { Context.class };
Constructor constructor = powerProfileClazz
.getDeclaredConstructor(argTypes);
Object[] arguments = { context };
//Instantiate
Object powerProInstance = constructor.newInstance(arguments);
//define method
Method batteryCap = powerProfileClazz.getMethod("getBatteryCapacity", null);
//call method
Log.d(TAG, batteryCap.invoke(powerProInstance, null).toString());
パブリックAPIに含まれていない場合は、うまく動作しないか、非常に困難になる可能性があります。たとえあなたがそれを稼働させることができたとしても、あなたがそれを動作させるために使用する手段が、OSアップデートによってある時点で壊れる可能性があります。 – FoamyGuy