According these, I think some cases will you come across :
open sensor
1: and then screen off, phone will close sensor. if screen on, sensor will
be lunched, you can log the sensor go on. It's not affect logging result.
2: if not close sensor, I think it should be used AlarmManager to log
because that it can wake up CPU when asleep status.

In here I want to clarify different about Thread.sleep and AlarmManager
When I create a app using thread sleep to run something every 20s, run that
app and then let screen off  in device not connect any usb line , about
over 20m, I connect the usb and logcat ,
I find the thread still run, cpu not sleep, it's amazing. Could you give
some comments about that ?



On Thu, Jul 21, 2011 at 3:25 AM, Dianne Hackborn <[email protected]>wrote:

> The only two types of wakelocks are partial and full.  A full wakelock
> will keep the screen from automatically turning off, and the screen being
> on will definitely mean the sensors are running.  Once the user presses the
> power button and turns the screen off, though, you are in no better a state
> than holding a partial wake lock.
>
>
> On Wed, Jul 20, 2011 at 11:40 AM, Filip Havlicek <[email protected]
> > wrote:
>
>> If you are trying to develop a market application, I think there is no
>> workaround. If you just want to experiment with the accelerometer data, you
>> can try different types of wakelock as Mark suggested, some of them might
>> work. Or just keep the device awake while you do the experiments (although
>> you might need to recharge the device every few hours). It might be
>> possible to do something about it on the OS level if you root your devices,
>> although that would need a bit more digging.
>>
>> Best regards,
>> Filip Havlicek
>>
>> 2011/7/20 Chris Conry <[email protected]>
>>
>>> Thanks for the answers,
>>> Makes sense now, I am using the myTouch 4g and LG ally, sadly both of
>>> them I guess turn off their sensors. Its good to hear that the Nexus and
>>> some 2.3 device keep it on and hopefully other manufacturers adopt this.
>>>
>>> I guess i'm going to try and find a work around. Any suggestions?
>>> Thank you
>>>
>>> On Wed, Jul 20, 2011 at 12:42 PM, Filip Havlicek <
>>> [email protected]> wrote:
>>>
>>>> Partial wake lock works just fine with accelerometer sensor on Nexus
>>>> One 2.2 (tested this for over than 6 months as a part of my research),
>>>> although this might not be the case for different combination of device and
>>>> OS version.
>>>>
>>>>
>>>> 2011/7/20 Dianne Hackborn <[email protected]>
>>>>
>>>>> Prior to 2.3 the sensors were turned off when the screen went off in
>>>>> order to reduce battery use.  This was changed on 2.3, though it's 
>>>>> possible
>>>>> we are actually going to end up regretting that change. :p
>>>>>
>>>>> Also even as of 2.3, I wouldn't be surprised if some device's drivers
>>>>> are still turning off the sensor hardware as part of their power 
>>>>> management
>>>>> when the screen goes off.
>>>>>
>>>>> On Wed, Jul 20, 2011 at 8:53 AM, Chris Conry <[email protected]>wrote:
>>>>>
>>>>>> And your guess was completely correct. Thank you. The problem is
>>>>>> still happening, as soon as I hit the power button the data stops 
>>>>>> logging.
>>>>>> Is there something else im missing about wakelock?
>>>>>>
>>>>>>
>>>>>> On Wed, Jul 20, 2011 at 11:26 AM, Mark Murphy <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Use adb logcat, DDMS, or the DDMS perspective in Eclipse to examine
>>>>>>> LogCat and look at the stack trace associated with your runtime
>>>>>>> error.
>>>>>>> My guess is that you do not hold the WAKE_LOCK permission.
>>>>>>>
>>>>>>> On Wed, Jul 20, 2011 at 11:21 AM, Chris Conry <[email protected]>
>>>>>>> wrote:
>>>>>>> > Thanks for the replys,
>>>>>>> > Looking into it the partial wake lock should be my solution, but
>>>>>>> it isnt
>>>>>>> > implementing well. I keep getting a runtime error on acquire(). my
>>>>>>> code
>>>>>>> > looks like:
>>>>>>> >                 PM = (PowerManager)
>>>>>>> getSystemService(Context.POWER_SERVICE);
>>>>>>> > WL= PM.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "Wakelock");
>>>>>>> > WL.acquire();
>>>>>>> > I put this in the onStartCommand(), is that incorrect? Should
>>>>>>> > only acquire the wakelock when the screen turns off?
>>>>>>> > Thank you
>>>>>>> > On Wed, Jul 20, 2011 at 3:59 AM, Filip Havlicek <
>>>>>>> [email protected]>
>>>>>>> > wrote:
>>>>>>> >>
>>>>>>> >> Acquire a partial wake lock, that should help.
>>>>>>> >>
>>>>>>> >> 2011/7/20 Jan Nielsen <[email protected]>
>>>>>>> >>>
>>>>>>> >>> The common ways to sleep in java, only counts cpu time on the
>>>>>>> Android
>>>>>>> >>> platform.
>>>>>>> >>> So a Thread.sleep(60 * 1000); may become 5 or 10 minutes if the
>>>>>>> phone
>>>>>>> >>> is in standby, since it only counts when the cpu is awake.
>>>>>>> >>>
>>>>>>> >>> afaik you need to use AlarmManager to get called when the phone
>>>>>>> is in
>>>>>>> >>> standby.
>>>>>>> >>> Even a handler postDelayed wont work, as that is also wake time.
>>>>>>> >>>
>>>>>>> >>> On 19 Jul., 23:20, Chris Conry <[email protected]> wrote:
>>>>>>> >>> > I'm trying to build an app that logs sensor data(using a
>>>>>>> service), and
>>>>>>> >>> > stores it into an SQLite database. My problem is that it stops
>>>>>>> logging
>>>>>>> >>> > when
>>>>>>> >>> > the screen is off. It works perfectly fine when the screen is
>>>>>>> on, but
>>>>>>> >>> > when i
>>>>>>> >>> > turn the screen off the data doesn't start logging until I
>>>>>>> turn the
>>>>>>> >>> > screen
>>>>>>> >>> > on. The process isn't being killed, because it works when the
>>>>>>> screen
>>>>>>> >>> > comes
>>>>>>> >>> > back on.
>>>>>>> >>> >
>>>>>>> >>> > I've tried implementing it as a Thread. I think that wont work
>>>>>>> because
>>>>>>> >>> > it
>>>>>>> >>> > needs a context for the database. And I read that using
>>>>>>> >>> > "startForeground",
>>>>>>> >>> > but it didn't change.
>>>>>>> >>> >
>>>>>>> >>> > Any Suggestions? Can anyone help?
>>>>>>> >>> >
>>>>>>> >>> > Thank you
>>>>>>> >>>
>>>>>>> >>> --
>>>>>>> >>> You received this message because you are subscribed to the
>>>>>>> Google
>>>>>>> >>> Groups "Android Developers" group.
>>>>>>> >>> To post to this group, send email to
>>>>>>> [email protected]
>>>>>>> >>> To unsubscribe from this group, send email to
>>>>>>> >>> [email protected]
>>>>>>> >>> For more options, visit this group at
>>>>>>> >>> http://groups.google.com/group/android-developers?hl=en
>>>>>>> >>
>>>>>>> >> --
>>>>>>> >> You received this message because you are subscribed to the Google
>>>>>>> >> Groups "Android Developers" group.
>>>>>>> >> To post to this group, send email to
>>>>>>> [email protected]
>>>>>>> >> To unsubscribe from this group, send email to
>>>>>>> >> [email protected]
>>>>>>> >> For more options, visit this group at
>>>>>>> >> http://groups.google.com/group/android-developers?hl=en
>>>>>>> >
>>>>>>> > --
>>>>>>> > You received this message because you are subscribed to the Google
>>>>>>> > Groups "Android Developers" group.
>>>>>>> > To post to this group, send email to
>>>>>>> [email protected]
>>>>>>> > To unsubscribe from this group, send email to
>>>>>>> > [email protected]
>>>>>>> > For more options, visit this group at
>>>>>>> > http://groups.google.com/group/android-developers?hl=en
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Mark Murphy (a Commons Guy)
>>>>>>> http://commonsware.com | http://github.com/commonsguy
>>>>>>> http://commonsware.com/blog | http://twitter.com/commonsguy
>>>>>>>
>>>>>>> Android Training...At Your Office: http://commonsware.com/training
>>>>>>>
>>>>>>> --
>>>>>>> You received this message because you are subscribed to the Google
>>>>>>> Groups "Android Developers" group.
>>>>>>> To post to this group, send email to
>>>>>>> [email protected]
>>>>>>> To unsubscribe from this group, send email to
>>>>>>> [email protected]
>>>>>>> For more options, visit this group at
>>>>>>> http://groups.google.com/group/android-developers?hl=en
>>>>>>>
>>>>>>
>>>>>>  --
>>>>>> You received this message because you are subscribed to the Google
>>>>>> Groups "Android Developers" group.
>>>>>> To post to this group, send email to
>>>>>> [email protected]
>>>>>> To unsubscribe from this group, send email to
>>>>>> [email protected]
>>>>>> For more options, visit this group at
>>>>>> http://groups.google.com/group/android-developers?hl=en
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Dianne Hackborn
>>>>> Android framework engineer
>>>>> [email protected]
>>>>>
>>>>> 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
>>>>> [email protected]
>>>>> To unsubscribe from this group, send email to
>>>>> [email protected]
>>>>> For more options, visit this group at
>>>>> http://groups.google.com/group/android-developers?hl=en
>>>>>
>>>>
>>>>  --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Android Developers" group.
>>>> To post to this group, send email to
>>>> [email protected]
>>>> To unsubscribe from this group, send email to
>>>> [email protected]
>>>> For more options, visit this group at
>>>> http://groups.google.com/group/android-developers?hl=en
>>>>
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Android Developers" group.
>>> To post to this group, send email to [email protected]
>>> To unsubscribe from this group, send email to
>>> [email protected]
>>> For more options, visit this group at
>>> http://groups.google.com/group/android-developers?hl=en
>>>
>>
>>  --
>> You received this message because you are subscribed to the Google
>> Groups "Android Developers" group.
>> To post to this group, send email to [email protected]
>> To unsubscribe from this group, send email to
>> [email protected]
>> For more options, visit this group at
>> http://groups.google.com/group/android-developers?hl=en
>>
>
>
>
> --
> Dianne Hackborn
> Android framework engineer
> [email protected]
>
> 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 [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/android-developers?hl=en
>

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to