android altbeacon bluetooth low energy -


i trying scan beacons bluetooth low energy , altbeacon-library on samsung galaxy s5, , maybe did not understand correctly, or can't running.

a part of manifest looks this:

<uses-sdk android:minsdkversion="18" android:targetsdkversion="21" />  <uses-permission android:name="android.permission.bluetooth" /> <uses-permission android:name="android.permission.bluetooth_admin" />  <application .... <service     android:name=".beaconscanner"     android:icon="@drawable/ic_launcher"     android:label="beaconscanner" > </service> .... 

i scanning beacons inside service:

public class beaconscanner extends service implements beaconconsumer {  private beaconmanager beaconmanager; private dbhelper mydb;  @override public int onstartcommand(intent intent, int flags, int startid) {        mydb = new dbhelper(this);       if (build.version.sdk_int >= 19 && getpackagemanager().hassystemfeature(packagemanager.feature_bluetooth_le)) {           // ble           beaconmanager.setandroidlscanningdisabled(true);       } else {           // kein ble        }       beaconmanager = beaconmanager.getinstanceforapplication(this);       beaconmanager.getbeaconparsers().add(new beaconparser().setbeaconlayout("m:2-3=0215,i:4-19,i:20-21,i:22-23,p:24-24,d:25-25"));       beaconmanager.setforegroundbetweenscanperiod(15000l);       beaconmanager.setbackgroundbetweenscanperiod(15000l);       beaconmanager.bind(this);        return service.start_sticky; }  @override public void ondestroy() {     super.ondestroy();     beaconmanager.unbind(this); }  @override public ibinder onbind(intent intent) {     return null; }  @override public void onbeaconserviceconnect() {     beaconmanager.setrangenotifier(new rangenotifier() {          @override         public void didrangebeaconsinregion(collection<beacon> beacons, region region) {             if (beacons.size() > 0) {                 for(beacon beacon : beacons)                 {                     if (beacon != null && beacon.getid1() != null) {                         system.out.println("id1: " + beacon.getid1().tostring());                         system.out.println("id2: " + beacon.getid2().tostring());                         system.out.println("id3: " + beacon.getid3().tostring());                         string majorminor = beacon.getid2().tostring() + "-" + beacon.getid3().tostring();                         system.out.println(majorminor);                         long count = mydb.beaconexists(majorminor);                         system.out.println(count);                         if (count == 0) {                             getandinsertbeacondataset(mydb, majorminor);                             system.out.println("inserted beacon: " + majorminor);                         }                     }                 }             }         }     });      try {         beaconmanager.startrangingbeaconsinregion(new region("trewysuniquebeaconregion", null, null, null));     } catch (remoteexception e) {      } }  private boolean getandinsertbeacondataset(dbhelper dbhelper, string beaconid) {     try {         beacongetter beacongetter = new beacongetter();         return beacongetter.execute(dbhelper, beaconid).get();     } catch (exception e) {         return false;     } }  } 

i checked, if phone able use bluetooth low energy, , is. if bluetooth not activated message library:

06-15 09:16:46.399: w/cycledlescanner(22748): bluetooth disabled.  cannot scan beacons. 

if activate bluetooth, library working fine , beacon in range.

so maybe understood wrong, need activate bluetooth on android use bluetooth low energy? thought possible bluetooth-signals without activating bluetooth?

if possible scan bluetooth low energy without activating bluetooth: doing wrong?

any appreciated, in advance.

rholtermann

you must activate bluetooth use ble (low energy). otherwise can't scan beacons. device must support ble, modern devices support it.


Comments

Popular posts from this blog

javascript - Google App Script ContentService downloadAsFile not working -

javascript - Function overwritting -

php - Find a regex to take part of Email -