有人可以檢查這個代碼的問題。我已經實施了一項服務並將一個BluetoothDevice
對象傳遞給它(BluetoothDevice
對象通過intent時沒有錯誤/問題)。然後,在onStartCommand()
,我打電話deviceToConnect.connectGatt(this,false,mGattCallback)
。但我的BluetoothGattCallback()
不工作(不打印任何東西)。代碼簡單直接。有人可以幫我調試它。BLE connectGatt()方法不報告BluetoothGattCallback ....中的任何內容?
編輯:我正在做Le設備掃描MainActivity()
和傳遞設備對象到服務連接到設備。
public class PairedBleService extends Service
{
private BluetoothGatt mConnectedGatt;
@Override
public void onCreate() {
// TODO Auto-generated method stub
super.onCreate();
Toast.makeText(this, "Service Started", Toast.LENGTH_SHORT).show();
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
// TODO Auto-generated method stub
super.onStartCommand(intent, flags, startId);
BluetoothDevice deviceToConnect = (BluetoothDevice) intent.getParcelableExtra(DEVICE_TO_CONNECT);
mConnectedGatt = deviceToConnect.connectGatt(this, false, mGattCallback);
return START_STICKY;
}
@Override
public void onDestroy() {
// TODO Auto-generated method stub
Toast.makeText(this, "Service End", Toast.LENGTH_SHORT).show();
super.onDestroy();
}
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}
private BluetoothGattCallback mGattCallback = new BluetoothGattCallback() {
@Override
public void onConnectionStateChange(BluetoothGatt gatt, int status, int newState) {
if (status == BluetoothGatt.GATT_SUCCESS && newState == BluetoothProfile.STATE_CONNECTED) {
Toast.makeText(getApplicationContext(), "Peripheral connected", Toast.LENGTH_LONG).show();
} else if (status == BluetoothGatt.GATT_SUCCESS && newState == BluetoothProfile.STATE_DISCONNECTED) {
Toast.makeText(getApplicationContext(), "Peripheral Disconnected", Toast.LENGTH_LONG).show();
} else if (status != BluetoothGatt.GATT_SUCCESS) {
gatt.disconnect();
}
}
}
編輯:我試圖連接我的信標(外設)與標準的android藍牙s/w,我在那裏我能夠連接。但是它要求配對引腳,並且一旦將其連接並顯示在配對藍牙設備中。有沒有像connectGatt
這樣的方法,我們可以問「配對別針」的用戶...我無法理解我失蹤。
你在哪裏掃描設備? – 2014-12-05 12:43:14
掃描我已完成我的活動,我正在通過BluetoothDevice對象進入服務連接到它。 – doga 2014-12-05 12:45:12
你有無條件的吐司或登錄onConnectionStateChange以確保它被調用嗎? – 2014-12-05 13:46:46