2016-08-03 204 views
0

我需要通過藍牙連接一些微控制器設備(傳感器芯片)並執行數據讀取和發送。Xamarin android藍牙通信

我已經看到了一些有助於發現,配對和連接到支持藍牙的設備的示例,但沒有太多的數據通信。

我的應用程序需要與傳感器芯片談話,這將不會有用戶界面。

回答

0

我不知道你的傳感器芯片是如何工作的。所以我必須假設你已經閱讀了你的傳感器芯片API文檔。我修改了我用來連接到另一個藍牙設備的代碼。它可能與你的不同。

BlueToothManager bm; // --> sensor chip manager 

// Configure BlueToothManager. 
     bm= new BlueToothManager (this); 


private void initBluetooth() { 
     // Check if device supports Bluetooth Low Energy. 
     if (!bm.hasBluetooth()) { 
      //Toast.makeText(this, "Device does not have Bluetooth Low Energy", Toast.LENGTH_LONG).show(); 
      return; 
     } 

     // If Bluetooth is not enabled, let user enable it. 
     if (!bm.isBluetoothEnabled()) { 
      Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); 
      startActivityForResult(enableBtIntent, Constant.REQUEST_ENABLE_BT); 
     } else { 
      Log.v(this.getClass(), "---> bluetooth already is enabled"); 
      startBMService(); // --> this function should be from your sensor chip api documents. 
     } 
    } 

順便說一句,你還必須在清單文件上註冊你的服務。下面是一個示例代碼。不要複製,信息應該來自你的傳感器設備的api文件。

<service 
      android:name=".Service.BMService" 
      android:exported="false" /> 
     <service 
      android:name="com.bm.sdk.service.BMService" 
      android:exported="false" />