On Monday, March 17, 2014 4:40:21 PM UTC-7, Nathan wrote:
>
> Last time I worked on a compass reading (which was years ago), I did 
> something like this. 
>
> A:
> http://www.javacodegeeks.com/2013/09/android-compass-code-example.html
>
> Of course, this example has a locked portrait orientation. 
>
> So, I call something like this to get it in sync. 
>
> http://developer.android.com/reference/android/view/Display.html#getRotation()
>
> Now, I realize that some of the calls in example A are deprecated. Many 
> devices with which I am familiar, though, it actually does work. 
>
> That's why, if I were to do a new implementation today, I might consider 
> something like implementation B.   
>
> B:
> http://sunil-android.blogspot.com/2013/02/create-our-android-compass.html
>
> I have no good way of testing either method on all of today's gazillion 
> Android devices, so I am going to have to use a best practice, and try to 
> blame the user's device when they don't work. 
>
> So my questions are:
> 1. Does implementation B already take into account landscape/portrait 
> orientation of the device, or should I continue to use Display.getRotation?
> 2. Are there known devices for which A fails and B works or vice versa?
> 3. Are there devices with usable sensors for which neither A or B works?
> 4. Are there any known drawbacks of implementation B?
>
> Nathan
>
>
To follow up with my question from a several months ago. 

I can confirm that the deprectated Orientation sensor method (method A 
above) is broken in some devices. Not just wrong values - no values 
apparently. 

Two users at once told me they were getting no compass readings. When two 
users at once do that, I can expect the problem will soon be widespread. 
Xperia M2, and Samsung S4 mini. 

A log file from one showed this:
07-08 21:39:35.103 E/SensorManager(15370): sensor or listener is null

I had both implementations in the code, but never really activated method B 
because of no real testing. 

I sent custom apk to one of the users, and method B worked. Both method A 
and method B work on the Galaxy note 3, which I have. 

Method B is much more jittery, and I expect that is the case in all 
devices. Don't know how to resolve that yet, and haven't seen gimbal lock 
yet to comment.  

Nathan 


-- 
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 unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to