Sto cercando di vedere i beacon con lo stimost sdk in Android ma senza fortuna! Posso vedere tutti gli stimote beacons ma con tutti gli altri beacon non funziona (fobo beacons ecc.) Sto usando l'uuid per i fobo beacons all'interno del costruttore di Region e posso vedere nel logcat che il bluetooth può vedere i dispositivi ma stimode sdk non lo sta raccogliendo come un beacon! Qualche idea del perché questo sta accadendo? I m postando il codice qui sotto:Android Estimote sdk non è in grado di scansionare altri beacon rispetto a quelli stimare
private static final String FOBO_PROXIMITY_UUID = "00158800-587d-2206-d52b-fb6d6e2f0001";
private static final Region FOBOBEACONS = new Region("rid", FOBO_PROXIMITY_UUID , null, null);
public void BeaconManager(){
beaconManager = new com.estimote.sdk.BeaconManager(this);
beaconManager.setBackgroundScanPeriod(5000, 30000);
beaconManager.setForegroundScanPeriod(7000, 5000);
beaconManager.setRangingListener(new com.estimote.sdk.BeaconManager.RangingListener() {
@Override
public void onBeaconsDiscovered(final Region arg0, final List<Beacon> arg1) {
// TODO Auto-generated method stub
runOnUiThread(new Runnable() {
@Override
public void run() {
// Note that beacons reported here are already sorted by estimated
// distance between device and beacon.
int test=0;
if(arg1.size()<=0){
Toast.makeText(MainActivity.this, "No beacon found",
Toast.LENGTH_SHORT).show();
}else{
for (int i = 0; i < arg1.size(); i++) {
String beac=arg1.get(i).getProximityUUID();
Toast.makeText(MainActivity.this, "I found a beacon with UUID; "+beac,
Toast.LENGTH_SHORT).show();
}
}
// adapter.replaceWith(beacons);
}
});
}
});
connectToService();
}
private void connectToService() {
beaconManager.connect(new com.estimote.sdk.BeaconManager.ServiceReadyCallback() {
@Override
public void onServiceReady() {
try {
com.estimote.sdk.utils.L.enableDebugLogging(true);
beaconManager.startRanging(FOBOBEACONS);
} catch (RemoteException e) {
Toast.makeText(MainActivity.this, "Cannot start ranging, something terrible happened",
Toast.LENGTH_LONG).show();
}
}
});
}
Non mi aspetterei necessariamente che funzioni. Ma perché stai passando ESTIMOTE_PROXIMITY_UUID al costruttore della regione? Se sei intenzionato a cercare i beacon con un UUID non stimolante, mi aspetto che tu debba costruire una regione per l'UUID che vuoi vedere. –
scusa è stato un errore nella scrittura del codice corretto ma il problema non è che nel mio codice sto usando uuid fobo e non funziona! Anche questo codice sta funzionando per stimare i beacon se uso lo stimote uuid o se Io non uso uuid (quindi supponiamo che effettui la scansione di tutti gli uuids)! – sfig
Sei positivo che sia l'UUID FOBO? Puoi usare un'altra app per rilevare correttamente l'iBeacon? – davidgyoung