2017-12-28 16 views
0

모든 예제를 보면서 사용하는 방식대로 BluetoothGatt 객체를 초기화하는 것입니다.BLE에서 BluetoothGatt 개체를 초기화하는 방법은 무엇입니까?

mGatt = device.connectGatt (activity, false, gattClientCallback);

어떻게 장치를 연결하지 않고 gatt 객체를 초기화 할 수 있습니까? 나는 장치 연결, 특성 발견 및 다른 것들에 대한 콜백을 처리하기위한 중앙 콜백 클래스를 가지고있다. 하지만 내 문제는 내가 빈 개체로 이동합니다 그 클래스의 생성자에 mgatt 개체를 전달하는 경우입니다. 나는 항상

@Override 
public void onConnectionStateChange(BluetoothGatt gatt, int status, int newState) { 
    super.onConnectionStateChange(gatt, status, newState); 
    try { 
     // Log.d("+++++++++++++connectionstatechange", "" + status); 
     mBluetoothGatt = gatt; 

를 사용할 수 있지만이 기능을 연결 호출하지 않고 초기화 할 수있는 방법이있다.

감사합니다. :)

답변

0

아니요 연결하는 것 외에는 다른 방법이 없습니다.

전달할 맞춤 클래스를 가질 수 있습니다. 이 클래스는 BluetoothGatt 객체를 포함하는 멤버 변수를 가질 수 있습니다.

+0

GattClientCallBack을 확장하는 싱글 톤 클래스를 의미합니까? – Pritish

+0

아니요. 개체에 BluetoothGatt 개체 인스턴스가있는 클래스입니다. 그렇게하면이 클래스의 객체를 전달할 수 있으며 연결시 멤버 변수를 BluetoothGatt 객체에 할당 할 수 있습니다. 그리고 BluetoothGatt 객체를 닫을 때 멤버 변수를 null로 설정합니다. – Emil