On Tue, May 26, 2009 at 6:31 PM, zhangxiyuan <zhangzho...@gmail.com> wrote:

>
> Hi Dianne, Yi Sun,
>
> What I want to do is to get the battery status at any time,  for
> example, I have a button on the screen, any time I click it, I can
> view the battery status.
> of course, there maybe more functions beyond this.
>
> Yi Sun,
> First of all, thanks a lot.
> I used adb shell to check the /sys directory, but there is not a
> power_supply sub directory.
> Is it because I am using an emulator but not real phone?
> Could provide any snippets of poll the battery status?

I had a typo, it should be /sys/class/power_supply. For the code, look at
com_android_server_BatteryService.cpp. But I think Dianne is right, the
sticky broadcast can help you.

>
> Thanks.
>
> On May 27, 12:47 am, Dianne Hackborn <hack...@android.com> wrote:
> > As I said, I am pretty sure this is a sticky broadcast, meaning that the
> > contents of the last broadcast are remembered by the system.
> >
> > That said, I can't really help you any more without know what you are
> > actually trying to do -- are you trying to write a third party app (if so
> > android-developers is the appropriate place), are you trying to port to
> some
> > hardware (if so android-porting), or something else?
> >
> >
> >
> > On Tue, May 26, 2009 at 12:29 AM, zhangxiyuan <zhangzho...@gmail.com>
> wrote:
> >
> > > Hi Dianne,
> > > Thanks a lot for your help.
> >
> > > According to the reply from Yi Sun:
> > > >>>>Look into the update() method in BatteryService.java. You may be
> able
> > > to
> > > >>>>solve the issue by register for BATTERY_CHANGED. But, it only be
> sent
> > > >>>>out when the battery status is changed. Not sure if it is good for
> you
> > > >>>>or not.
> > > I checked the source code of com.android.server.BatteryService#update
> > > (), yes, the update method first call native_update(),
> > > then check for the status, if some status field changed, then
> > > sendIntent() will be invoked to broadcast.
> > > My question is "does that mean I can not get the battery information
> > > in real-time?", I mean if I launch the application at 00:00:00, then
> > > return to home screen,
> > > then relaunch it at 00:00:30, then maybe none of the status changed,
> > > does that mean I can not get any status information?
> >
> > > Thanks.
> >
> > > On May 26, 3:16 pm, Dianne Hackborn <hack...@android.com> wrote:
> > > > On Mon, May 25, 2009 at 8:12 PM, zhangxiyuan <zhangzho...@gmail.com>
> > > wrote:
> > > > > And I have three other questions:
> > > > > 1. Which apis will be included in the sdk public api? Is there any
> > > > > description about it?
> >
> > > > The official public SDK is only the things described here:
> >
> > > >http://developer.android.com/reference/packages.html
> >
> > > > And yes, @hide is used to keep classes and methods out of the SDK.
> >
> > > > 2. I modified the com.android.settings.BatteryInfo activity to
> another
> >
> > > > > activity, delete all the api invocation to the non-public api,
> > > > >   I can still get the battery information such as level, scale, ...
> > > > >   so, I think what I really need to do is just impelement the
> > > > > BroadcastReceiver, and registerReceiver in the onCreate or onResume
> > > > > methods.
> > > > >   Is that right?
> >
> > > > Yes, as I said, most of the information is sent as a sticky
> broadcast.
> >
> > > > > 3. I do not have a real android-based phone, so I just run the
> > > > > application on the emulator, I got the following information all
> the
> > > > > time:
> > > > > Battery status: Charging (AC)
> > > > > Battery level: 50
> > > > > Battery scale: 100
> > > > > Battery health: Good
> > > > > Battery voltage: 0 mV
> > > > > Battery temperature: 0.0°C
> > > > > Battery technology: Li-ion
> > > > > I wonder how can I get different information by changing some
> > > > > configurations of the emulator?
> >
> > > > Sorry can't help with that.
> >
> > > > --
> > > > Dianne Hackborn
> > > > Android framework engineer
> > > > hack...@android.com
> >
> > > > Note: please don't send private questions to me, as I don't have time
> to
> > > > provide private support, and so won't reply to such e-mails.  All
> such
> > > > questions should be posted on public forums, where I and others can
> see
> > > and
> > > > answer them.
> >
> > --
> > Dianne Hackborn
> > Android framework engineer
> > hack...@android.com
> >
> > Note: please don't send private questions to me, as I don't have time to
> > provide private support, and so won't reply to such e-mails.  All such
> > questions should be posted on public forums, where I and others can see
> and
> > answer them.
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"android-framework" group.
To post to this group, send email to android-framework@googlegroups.com
To unsubscribe from this group, send email to 
android-framework+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/android-framework?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to