Hello everyone,
I am implementing an app with beacon technology, I implemented with IOS with monitor region, IOS detect beacons even when the app is closed, it is very successful in real world because when you walk in the street generally some apps are closed and this monitoring invites you to open app when beacon is near.
I want do the same with Android, but dont know how I can do, I was trying like a service
I put this code in service -> starter
I was checking report in google app developer and I got these errors:
And I got this error too:
As I can do for that Android keep reading the beacons even when the app is closed.
Thanks for your help.
I am implementing an app with beacon technology, I implemented with IOS with monitor region, IOS detect beacons even when the app is closed, it is very successful in real world because when you walk in the street generally some apps are closed and this monitoring invites you to open app when beacon is near.
I want do the same with Android, but dont know how I can do, I was trying like a service
I put this code in service -> starter
B4X:
Sub Process_Globals
Public manager As BleManager2
Public Parser As BeaconParser
Public beacons As Map
Public const TIME_TO_LIVE_SECONDS As Int = 5
End Sub
Sub Service_Create
manager.Initialize("manager")
beacons.Initialize
Parser.Initialize
Globals.IniDB
Globals.CreateTables
End Sub
Sub Service_Start (StartingIntent As Intent)
manager.Scan2(Null, True)
End Sub
Public Sub Scan
manager.Scan2(Null, True)
scanning = True
End Sub
I was checking report in google app developer and I got these errors:
B4X:
java.lang.RuntimeException:
at anywheresoftware.b4a.objects.BleManager2.Scan2 (BleManager2.java:142)
at com.creator.app.starter._service_start (starter.java:370)
at java.lang.reflect.Method.invoke (Native Method)
at java.lang.reflect.Method.invoke (Method.java:372)
at anywheresoftware.b4a.BA.raiseEvent2 (BA.java:186)
at anywheresoftware.b4a.BA.raiseEvent (BA.java:166)
at com.creator.app.starter.handleStart (starter.java:105)
at com.creator.app.starter.access$000 (starter.java:8)
at com.creator.app.starter$1.run (starter.java:70)
at anywheresoftware.b4a.objects.ServiceHelper$StarterHelper.onStartCommand (ServiceHelper.java:105)
at com.creator.app.starter.onStartCommand (starter.java:68)
at android.app.ActivityThread.handleServiceArgs (ActivityThread.java:3958)
at android.app.ActivityThread.access$2300 (ActivityThread.java:218)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1842)
at android.os.Handler.dispatchMessage (Handler.java:102)
at android.os.Looper.loop (Looper.java:145)
at android.app.ActivityThread.main (ActivityThread.java:7007)
at java.lang.reflect.Method.invoke (Native Method)
at java.lang.reflect.Method.invoke (Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1404)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1199)
And I got this error too:
java.lang.RuntimeException:
at android.app.ActivityThread.handleServiceArgs (ActivityThread.java:3705)
at android.app.ActivityThread.-wrap23 (ActivityThread.java)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1736)
at android.os.Handler.dispatchMessage (Handler.java:102)
at android.os.Looper.loop (Looper.java:154)
at android.app.ActivityThread.main (ActivityThread.java:6682)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1520)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1410)
Caused by: java.lang.RuntimeException:
at anywheresoftware.b4a.BA.raiseEvent2 (BA.java:223)
at anywheresoftware.b4a.BA.raiseEvent (BA.java:166)
at com.creator.app.starter.handleStart (starter.java:105)
at com.creator.app.starter.access$000 (starter.java:8)
at com.creator.app.starter$1.run (starter.java:70)
at anywheresoftware.b4a.objects.ServiceHelper$StarterHelper.onStartCommand (ServiceHelper.java:105)
at com.creator.app.starter.onStartCommand (starter.java:68)
at android.app.ActivityThread.handleServiceArgs (ActivityThread.java:3688)
As I can do for that Android keep reading the beacons even when the app is closed.
Thanks for your help.
Last edited: