Osobiście używanie patowanego android.jar powoduje po prostu bóle głowy, używanie refleksji to "prosty" sposób dostępu do PowerProfile.java. Ale jak @FoamyGuy i niezliczone inne zauważyły, że to jest ukryta api, więc zapakuj ją w wielką próbę złapania, ponieważ może ona zepsuć późniejszą wersję Androida.
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());
Jeśli nie jest częścią publicznych interfejsów API, prawdopodobnie nie będzie działać lub będzie bardzo trudny. Nawet jeśli uda Ci się go uruchomić, najprawdopodobniej to, co zrobisz, aby działało, zostanie w pewnym momencie uszkodzone przez aktualizację systemu operacyjnego. – FoamyGuy