Android Question [SOLVED] PhoneSensorsExtra displaying phone orientation

rleiman

Well-Known Member
Licensed User
Longtime User
Hi Everyone,

I'm trying out the PoneSensorsExtra library and tried to display the phone orientation. Can you look at my code and let me know what I'm missing? It compiles but only displays random text on the phone screen.

Thanks.

B4X:
#Region  Project Attributes
    #ApplicationLabel: Compass Heading
    #VersionCode: 1
    #VersionName:
    'SupportedOrientations possible values: unspecified, landscape or portrait.
    #SupportedOrientations: unspecified
    #CanInstallToExternalStorage: False
#End Region

#Region  Activity Attributes
    #FullScreen: False
    #IncludeTitle: True
#End Region

Sub Process_Globals
    'These global variables will be declared once when the application starts.
    'These variables can be accessed from all modules.

End Sub

Sub Globals
    'These global variables will be redeclared each time the activity is created.
    'These variables can only be accessed from this module.

    Private LabelCompassHeading As Label
    Private sensors As PhoneSensorsExtra
End Sub

Sub Activity_Create(FirstTime As Boolean)
    'Do not forget to load the layout file created with the visual designer. For example:
    Activity.LoadLayout("Main")

    
End Sub

Sub Activity_Resume
    sensors.Initialize(sensors.TYPE_ORIENTATION)
    sensors.StartListening("Heading")
End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub

Sub Heading_sensorchanged (values() As Float)
    LabelCompassHeading.Text = values
End Sub
 

rleiman

Well-Known Member
Licensed User
Longtime User
Hi Everyone,

I found out I could do it with the phone library using

B4X:
Private emad2 As PhoneOrientation

Tomorrow I will post the coding I used.
 
Upvote 0

rleiman

Well-Known Member
Licensed User
Longtime User
Hi Everyone,

This is how I got it to work with the phone library. I created a label view in the designer and added this coding:

B4X:
#Region  Project Attributes
    #ApplicationLabel: Compass Heading
    #VersionCode: 1
    #VersionName:
    'SupportedOrientations possible values: unspecified, landscape or portrait.
    #SupportedOrientations: portrait
    #CanInstallToExternalStorage: False
#End Region

#Region  Activity Attributes
    #FullScreen: False
    #IncludeTitle: True
#End Region

Sub Process_Globals
    'These global variables will be declared once when the application starts.
    'These variables can be accessed from all modules.

End Sub

Sub Globals
    'These global variables will be redeclared each time the activity is created.
    'These variables can only be accessed from this module.

    Private LabelCompassHeading As Label
    Private emad2 As PhoneOrientation
End Sub

Sub Activity_Create(FirstTime As Boolean)
    'Do not forget to load the layout file created with the visual designer. For example:
    Activity.LoadLayout("Main")   
End Sub

Sub Activity_Resume
    emad2.StartListening("Emad2")
End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub

Sub Emad2_OrientationChanged (Azimuth As Float, Pitch As Float, Roll As Float)
    LabelCompassHeading.Text = NumberFormat(Azimuth,3,0)
End Sub
 
Upvote 0
Top