2014-04-15 26 views
5

我想在android中看到信號與estimote sdk,但沒有運氣!我可以看到所有的estimote信標,但與所有其他信標無法正常工作( fobo信標等)我在區域構造函數內使用uuid作爲fobo信標,我可以在logcat中看到藍牙可以看​​到這些設備,但估計sdk沒有收集它作爲信標!任何想法爲什麼會發生這種情況?我米張貼下面的代碼:Android Estimote sdk無法掃描其他信標而不是估計信號

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(); 
     } 
     } 
    }); 
    } 
+0

我不一定會期望工作。但是,爲什麼你將ESTIMOTE_PROXIMITY_UUID傳遞給區域構造函數?如果您打算使用非估計的UUID查找信標,我希望您需要爲您想要查看的UUID構建一個區域。 –

+0

對不起,這是在編寫我糾正的代碼錯誤,但問題不是在我的代碼中我使用fobo uuid並且不工作!此代碼正在爲estimote信標工作,如果我使用estimote uuid或if我沒有使用uuid(然後它爲所有uuids掃描)! – sfig

+0

你肯定是FOBO UUID嗎?您可以使用其他應用程序成功檢測到iBeacon嗎? – davidgyoung

回答

2

這是WOJTEK Borowicz,我在Estimote社區佈道者。實際上,Estimote SDK不支持來自其他供應商的信標 - 這就是爲什麼你無法檢測到它們。

乾杯。

+0

謝謝Wojtek,這是我的雖然因爲logcat消息說:「設備xx:xx:xx:xx:xx(MAC地址)不是估計信標」我想我會使用無線電網絡庫因爲我知道有沒有隻有Estimote和無線電網絡圖書館我錯了嗎?任何人都可以建議其他圖書館? – sfig

+0

這是超級討厭的,我喜歡Estimote SDK,但不能與其他iBeacons合作是一個巨大的交易斷路器。 @WojtekBorowicz有沒有計劃改變這一點? – Ben

+0

@Ben目前沒有。我們正在向我們的SDK推出專爲Estimote(例如加速計和溫度傳感器)專用的功能,並希望提供儘可能最佳的體驗,所以現在我們專注於我們自己的軟件和硬件。 –

0

也許檢查這個鏈接..還沒有嘗試過它自己,但計劃在某些時候。

https://github.com/AlvinBert

的Android的源iBeacon顯示SDK的代碼。 Android上沒有任何限制。 它可以檢測到所有的iBeacons。

+0

有趣的是,它的代碼庫與estimote android sdk相同。我不得不手動將條件註釋掉,以檢查感測的信標是否是估計的信標。然後它開始工作。 –

+0

我們可以限制搜索特定的UUID嗎? – Prasad