Is this documented anywhere?  I looked here...
http://developer.android.com/reference/android/os/BatteryManager.html

... but AFAICS there's nothing about 0 meaning "unplugged".

What you're suggesting *is* what I'm after, but I'm unwilling to use
undocumented API features since they risk disappearing without notice.

  Regards //Johan

On 19 Sep, 22:29, Dianne Hackborn <hack...@android.com> wrote:
> What do you mean by "in use"?  You can find out whether you are attached to
> a power source with the "plugged" field (0 means not plugged in / on
> battery, non-zero is the power source), which is generally what things use
> to determine whether the device is plugged in (so it is okay to do more
> power drawing operations).
>
>
>
> On Sat, Sep 19, 2009 at 12:42 PM, Walles <johan.wal...@gmail.com> wrote:
>
> > Thanks Mark, that was the hint I needed.
>
> > What I really wanted to know was whether or not the battery was
> > currently in use, and for anybody else following this thread, here's
> > the method I came up with:
>
> > "
> >    /**
> >     * Is the battery currently discharging?
> >     *
> >     * @return True if our battery is discharging.  False otherwise.
> >     */
> >    private boolean isDischarging() {
> >        // Contact the battery manager
> >        Intent batteryIntent =
> >            registerReceiver(null, new IntentFilter
> > (Intent.ACTION_BATTERY_CHANGED));
> >        if (batteryIntent == null) {
> >            Log.w(DrainOMeter.LOGGING_TAG,
> >                  "Failed to talk to the battery manager, assuming
> > we're on battery power");
> >            return true;
> >        }
>
> >        // Ask about battery charging status
> >        int batteryStatus = BatteryManager.BATTERY_STATUS_UNKNOWN;
> >        if (batteryIntent != null) {
> >            batteryStatus =
> >                batteryIntent.getIntExtra("status",
>
> > BatteryManager.BATTERY_STATUS_UNKNOWN);
> >        }
> >        if (batteryStatus == BatteryManager.BATTERY_STATUS_UNKNOWN) {
> >            Log.w(DrainOMeter.LOGGING_TAG,
> >                  "Failed to get battery charging status, assuming
> > we're on battery power");
> >            return true;
> >        }
>
> >        return batteryStatus ==
> > BatteryManager.BATTERY_STATUS_DISCHARGING;
> >    }
> > "
>
> >  Cheers //Johan
>
> > On 18 Sep, 11:54, Mark Murphy <mmur...@commonsware.com> wrote:
> > > Walles wrote:
> > > > I want to know if my device is currently charging.
>
> > > > How do I find that out?  I've been looking a bit at the Intents API,
> > > > but AFAIU I can just subscribe to events from there, and a
> > > > subscription is not what I'm after.  And even if I *did* want updates,
> > > > I'd still need to know the initial state.
>
> > > > I just want to ask a one-shot "are we charging" question.  How can I
> > > > do that?
>
> > > Register for the broadcast Intent with a null receiver. If you get a
> > > non-null return value, then that return value is an Intent from the last
> > > "sticky broadcast" matching your supplied IntentFilter. I believe the
> > > battery updates are such a sticky broadcast. By passing null for the
> > > receiver, you do not actually register a receiver and so do not need to
> > > unregister anything later.
>
> > > For more instructions on this, look up registerReceiver() in the Context
> > > class (which is a base class for Activity, Service, etc.).
>
> > > --
> > > Mark Murphy (a Commons Guy)http://commonsware.com|
> >http://twitter.com/commonsguy
>
> > > _The Busy Coder's Guide to *Advanced* Android Development_
> > > Version 1.1 Available!
>
> --
> 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 Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to