.class final Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler; .super Landroid/os/Handler; .source "BleBluetooth.java" # annotations .annotation system Ldalvik/annotation/EnclosingClass; value = Lcom/clj/fastble/bluetooth/BleBluetooth; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x12 name = "MainHandler" .end annotation # instance fields .field final synthetic this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # direct methods .method constructor (Lcom/clj/fastble/bluetooth/BleBluetooth;Landroid/os/Looper;)V .registers 3 .line 241 iput-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; .line 242 invoke-direct {p0, p2}, Landroid/os/Handler;->(Landroid/os/Looper;)V return-void .end method # virtual methods .method public handleMessage(Landroid/os/Message;)V .registers 6 .line 247 iget v0, p1, Landroid/os/Message;->what:I const/16 v1, 0x42 if-eq v0, v1, :cond_243 const/4 v1, 0x0 packed-switch v0, :pswitch_data_268 .line 360 invoke-super {p0, p1}, Landroid/os/Handler;->handleMessage(Landroid/os/Message;)V goto/16 :goto_266 .line 298 :pswitch_f iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # invokes: Lcom/clj/fastble/bluetooth/BleBluetooth;->disconnectGatt()V invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$000(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 299 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # invokes: Lcom/clj/fastble/bluetooth/BleBluetooth;->refreshDeviceCache()V invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$100(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 300 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # invokes: Lcom/clj/fastble/bluetooth/BleBluetooth;->closeBluetoothGatt()V invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$200(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 302 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; sget-object v0, Lcom/clj/fastble/bluetooth/BleBluetooth$LastState;->CONNECT_FAILURE:Lcom/clj/fastble/bluetooth/BleBluetooth$LastState; # setter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->lastState:Lcom/clj/fastble/bluetooth/BleBluetooth$LastState; invoke-static {p1, v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$502(Lcom/clj/fastble/bluetooth/BleBluetooth;Lcom/clj/fastble/bluetooth/BleBluetooth$LastState;)Lcom/clj/fastble/bluetooth/BleBluetooth$LastState; .line 303 invoke-static {}, Lcom/clj/fastble/BleManager;->getInstance()Lcom/clj/fastble/BleManager; move-result-object p1 invoke-virtual {p1}, Lcom/clj/fastble/BleManager;->getMultipleBluetoothController()Lcom/clj/fastble/bluetooth/MultipleBluetoothController; move-result-object p1 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; invoke-virtual {p1, v0}, Lcom/clj/fastble/bluetooth/MultipleBluetoothController;->removeConnectingBle(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 305 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleGattCallback:Lcom/clj/fastble/callback/BleGattCallback; invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$600(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/callback/BleGattCallback; move-result-object p1 if-eqz p1, :cond_266 .line 306 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleGattCallback:Lcom/clj/fastble/callback/BleGattCallback; invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$600(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/callback/BleGattCallback; move-result-object p1 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleDevice:Lcom/clj/fastble/data/BleDevice; invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$700(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/data/BleDevice; move-result-object v0 new-instance v1, Lcom/clj/fastble/exception/TimeoutException; invoke-direct {v1}, Lcom/clj/fastble/exception/TimeoutException;->()V invoke-virtual {p1, v0, v1}, Lcom/clj/fastble/callback/BleGattCallback;->onConnectFail(Lcom/clj/fastble/data/BleDevice;Lcom/clj/fastble/exception/BleException;)V goto/16 :goto_266 .line 341 :pswitch_50 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; sget-object v2, Lcom/clj/fastble/bluetooth/BleBluetooth$LastState;->CONNECT_CONNECTED:Lcom/clj/fastble/bluetooth/BleBluetooth$LastState; # setter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->lastState:Lcom/clj/fastble/bluetooth/BleBluetooth$LastState; invoke-static {v0, v2}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$502(Lcom/clj/fastble/bluetooth/BleBluetooth;Lcom/clj/fastble/bluetooth/BleBluetooth$LastState;)Lcom/clj/fastble/bluetooth/BleBluetooth$LastState; .line 342 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # setter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->isActiveDisconnect:Z invoke-static {v0, v1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$902(Lcom/clj/fastble/bluetooth/BleBluetooth;Z)Z .line 343 invoke-static {}, Lcom/clj/fastble/BleManager;->getInstance()Lcom/clj/fastble/BleManager; move-result-object v0 invoke-virtual {v0}, Lcom/clj/fastble/BleManager;->getMultipleBluetoothController()Lcom/clj/fastble/bluetooth/MultipleBluetoothController; move-result-object v0 iget-object v1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; invoke-virtual {v0, v1}, Lcom/clj/fastble/bluetooth/MultipleBluetoothController;->removeConnectingBle(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 344 invoke-static {}, Lcom/clj/fastble/BleManager;->getInstance()Lcom/clj/fastble/BleManager; move-result-object v0 invoke-virtual {v0}, Lcom/clj/fastble/BleManager;->getMultipleBluetoothController()Lcom/clj/fastble/bluetooth/MultipleBluetoothController; move-result-object v0 iget-object v1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; invoke-virtual {v0, v1}, Lcom/clj/fastble/bluetooth/MultipleBluetoothController;->addBleBluetooth(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 346 iget-object p1, p1, Landroid/os/Message;->obj:Ljava/lang/Object; check-cast p1, Lcom/clj/fastble/data/BleConnectStateParameter; .line 347 invoke-virtual {p1}, Lcom/clj/fastble/data/BleConnectStateParameter;->getStatus()I move-result p1 .line 348 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleGattCallback:Lcom/clj/fastble/callback/BleGattCallback; invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$600(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/callback/BleGattCallback; move-result-object v0 if-eqz v0, :cond_266 .line 349 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleGattCallback:Lcom/clj/fastble/callback/BleGattCallback; invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$600(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/callback/BleGattCallback; move-result-object v0 iget-object v1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleDevice:Lcom/clj/fastble/data/BleDevice; invoke-static {v1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$700(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/data/BleDevice; move-result-object v1 iget-object v2, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bluetoothGatt:Landroid/bluetooth/BluetoothGatt; invoke-static {v2}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$800(Lcom/clj/fastble/bluetooth/BleBluetooth;)Landroid/bluetooth/BluetoothGatt; move-result-object v2 invoke-virtual {v0, v1, v2, p1}, Lcom/clj/fastble/callback/BleGattCallback;->onConnectSuccess(Lcom/clj/fastble/data/BleDevice;Landroid/bluetooth/BluetoothGatt;I)V goto/16 :goto_266 .line 327 :pswitch_9d iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # invokes: Lcom/clj/fastble/bluetooth/BleBluetooth;->disconnectGatt()V invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$000(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 328 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # invokes: Lcom/clj/fastble/bluetooth/BleBluetooth;->refreshDeviceCache()V invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$100(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 329 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # invokes: Lcom/clj/fastble/bluetooth/BleBluetooth;->closeBluetoothGatt()V invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$200(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 331 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; sget-object v0, Lcom/clj/fastble/bluetooth/BleBluetooth$LastState;->CONNECT_FAILURE:Lcom/clj/fastble/bluetooth/BleBluetooth$LastState; # setter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->lastState:Lcom/clj/fastble/bluetooth/BleBluetooth$LastState; invoke-static {p1, v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$502(Lcom/clj/fastble/bluetooth/BleBluetooth;Lcom/clj/fastble/bluetooth/BleBluetooth$LastState;)Lcom/clj/fastble/bluetooth/BleBluetooth$LastState; .line 332 invoke-static {}, Lcom/clj/fastble/BleManager;->getInstance()Lcom/clj/fastble/BleManager; move-result-object p1 invoke-virtual {p1}, Lcom/clj/fastble/BleManager;->getMultipleBluetoothController()Lcom/clj/fastble/bluetooth/MultipleBluetoothController; move-result-object p1 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; invoke-virtual {p1, v0}, Lcom/clj/fastble/bluetooth/MultipleBluetoothController;->removeConnectingBle(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 334 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleGattCallback:Lcom/clj/fastble/callback/BleGattCallback; invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$600(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/callback/BleGattCallback; move-result-object p1 if-eqz p1, :cond_266 .line 335 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleGattCallback:Lcom/clj/fastble/callback/BleGattCallback; invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$600(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/callback/BleGattCallback; move-result-object p1 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleDevice:Lcom/clj/fastble/data/BleDevice; invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$700(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/data/BleDevice; move-result-object v0 new-instance v1, Lcom/clj/fastble/exception/OtherException; const-string v2, "GATT discover services exception occurred!" invoke-direct {v1, v2}, Lcom/clj/fastble/exception/OtherException;->(Ljava/lang/String;)V invoke-virtual {p1, v0, v1}, Lcom/clj/fastble/callback/BleGattCallback;->onConnectFail(Lcom/clj/fastble/data/BleDevice;Lcom/clj/fastble/exception/BleException;)V goto/16 :goto_266 .line 311 :pswitch_e0 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bluetoothGatt:Landroid/bluetooth/BluetoothGatt; invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$800(Lcom/clj/fastble/bluetooth/BleBluetooth;)Landroid/bluetooth/BluetoothGatt; move-result-object p1 const/4 v0, 0x5 if-eqz p1, :cond_10c .line 312 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bluetoothGatt:Landroid/bluetooth/BluetoothGatt; invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$800(Lcom/clj/fastble/bluetooth/BleBluetooth;)Landroid/bluetooth/BluetoothGatt; move-result-object p1 invoke-virtual {p1}, Landroid/bluetooth/BluetoothGatt;->discoverServices()Z move-result p1 if-nez p1, :cond_266 .line 314 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->mainHandler:Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler; invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$400(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler; move-result-object p1 invoke-virtual {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->obtainMessage()Landroid/os/Message; move-result-object p1 .line 315 iput v0, p1, Landroid/os/Message;->what:I .line 316 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->mainHandler:Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler; invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$400(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler; move-result-object v0 invoke-virtual {v0, p1}, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->sendMessage(Landroid/os/Message;)Z goto/16 :goto_266 .line 319 :cond_10c iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->mainHandler:Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler; invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$400(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler; move-result-object p1 invoke-virtual {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->obtainMessage()Landroid/os/Message; move-result-object p1 .line 320 iput v0, p1, Landroid/os/Message;->what:I .line 321 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->mainHandler:Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler; invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$400(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler; move-result-object v0 invoke-virtual {v0, p1}, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->sendMessage(Landroid/os/Message;)Z goto/16 :goto_266 .line 293 :pswitch_123 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleDevice:Lcom/clj/fastble/data/BleDevice; invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$700(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/data/BleDevice; move-result-object v0 iget-object v2, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleGattCallback:Lcom/clj/fastble/callback/BleGattCallback; invoke-static {v2}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$600(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/callback/BleGattCallback; move-result-object v2 iget-object v3, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->connectRetryCount:I invoke-static {v3}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$300(Lcom/clj/fastble/bluetooth/BleBluetooth;)I move-result v3 invoke-virtual {p1, v0, v1, v2, v3}, Lcom/clj/fastble/bluetooth/BleBluetooth;->connect(Lcom/clj/fastble/data/BleDevice;ZLcom/clj/fastble/callback/BleGattCallback;I)Landroid/bluetooth/BluetoothGatt; goto/16 :goto_266 .line 273 :pswitch_13a iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; sget-object v1, Lcom/clj/fastble/bluetooth/BleBluetooth$LastState;->CONNECT_DISCONNECT:Lcom/clj/fastble/bluetooth/BleBluetooth$LastState; # setter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->lastState:Lcom/clj/fastble/bluetooth/BleBluetooth$LastState; invoke-static {v0, v1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$502(Lcom/clj/fastble/bluetooth/BleBluetooth;Lcom/clj/fastble/bluetooth/BleBluetooth$LastState;)Lcom/clj/fastble/bluetooth/BleBluetooth$LastState; .line 274 invoke-static {}, Lcom/clj/fastble/BleManager;->getInstance()Lcom/clj/fastble/BleManager; move-result-object v0 invoke-virtual {v0}, Lcom/clj/fastble/BleManager;->getMultipleBluetoothController()Lcom/clj/fastble/bluetooth/MultipleBluetoothController; move-result-object v0 iget-object v1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; invoke-virtual {v0, v1}, Lcom/clj/fastble/bluetooth/MultipleBluetoothController;->removeBleBluetooth(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 276 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; invoke-virtual {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->disconnect()V .line 277 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # invokes: Lcom/clj/fastble/bluetooth/BleBluetooth;->refreshDeviceCache()V invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$100(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 278 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # invokes: Lcom/clj/fastble/bluetooth/BleBluetooth;->closeBluetoothGatt()V invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$200(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 279 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; invoke-virtual {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->removeRssiCallback()V .line 280 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; invoke-virtual {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->removeMtuChangedCallback()V .line 281 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; invoke-virtual {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->clearCharacterCallback()V .line 282 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->mainHandler:Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler; invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$400(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler; move-result-object v0 const/4 v1, 0x0 invoke-virtual {v0, v1}, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->removeCallbacksAndMessages(Ljava/lang/Object;)V .line 284 iget-object p1, p1, Landroid/os/Message;->obj:Ljava/lang/Object; check-cast p1, Lcom/clj/fastble/data/BleConnectStateParameter; .line 285 invoke-virtual {p1}, Lcom/clj/fastble/data/BleConnectStateParameter;->isActive()Z move-result v0 .line 286 invoke-virtual {p1}, Lcom/clj/fastble/data/BleConnectStateParameter;->getStatus()I move-result p1 .line 287 iget-object v1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleGattCallback:Lcom/clj/fastble/callback/BleGattCallback; invoke-static {v1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$600(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/callback/BleGattCallback; move-result-object v1 if-eqz v1, :cond_266 .line 288 iget-object v1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleGattCallback:Lcom/clj/fastble/callback/BleGattCallback; invoke-static {v1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$600(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/callback/BleGattCallback; move-result-object v1 iget-object v2, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleDevice:Lcom/clj/fastble/data/BleDevice; invoke-static {v2}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$700(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/data/BleDevice; move-result-object v2 iget-object v3, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bluetoothGatt:Landroid/bluetooth/BluetoothGatt; invoke-static {v3}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$800(Lcom/clj/fastble/bluetooth/BleBluetooth;)Landroid/bluetooth/BluetoothGatt; move-result-object v3 invoke-virtual {v1, v0, v2, v3, p1}, Lcom/clj/fastble/callback/BleGattCallback;->onDisConnected(ZLcom/clj/fastble/data/BleDevice;Landroid/bluetooth/BluetoothGatt;I)V goto/16 :goto_266 .line 249 :pswitch_1a1 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # invokes: Lcom/clj/fastble/bluetooth/BleBluetooth;->disconnectGatt()V invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$000(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 250 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # invokes: Lcom/clj/fastble/bluetooth/BleBluetooth;->refreshDeviceCache()V invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$100(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 251 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # invokes: Lcom/clj/fastble/bluetooth/BleBluetooth;->closeBluetoothGatt()V invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$200(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 253 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->connectRetryCount:I invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$300(Lcom/clj/fastble/bluetooth/BleBluetooth;)I move-result v0 invoke-static {}, Lcom/clj/fastble/BleManager;->getInstance()Lcom/clj/fastble/BleManager; move-result-object v1 invoke-virtual {v1}, Lcom/clj/fastble/BleManager;->getReConnectCount()I move-result v1 if-ge v0, v1, :cond_204 .line 254 new-instance p1, Ljava/lang/StringBuilder; const-string v0, "Connect fail, try reconnect " invoke-direct {p1, v0}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-static {}, Lcom/clj/fastble/BleManager;->getInstance()Lcom/clj/fastble/BleManager; move-result-object v0 invoke-virtual {v0}, Lcom/clj/fastble/BleManager;->getReConnectInterval()J move-result-wide v0 invoke-virtual {p1, v0, v1}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; move-result-object p1 const-string v0, " millisecond later" invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-static {p1}, Lcom/clj/fastble/utils/BleLog;->e(Ljava/lang/String;)V .line 255 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # ++operator for: Lcom/clj/fastble/bluetooth/BleBluetooth;->connectRetryCount:I invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$304(Lcom/clj/fastble/bluetooth/BleBluetooth;)I .line 257 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->mainHandler:Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler; invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$400(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler; move-result-object p1 invoke-virtual {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->obtainMessage()Landroid/os/Message; move-result-object p1 const/4 v0, 0x3 .line 258 iput v0, p1, Landroid/os/Message;->what:I .line 259 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->mainHandler:Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler; invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$400(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler; move-result-object v0 invoke-static {}, Lcom/clj/fastble/BleManager;->getInstance()Lcom/clj/fastble/BleManager; move-result-object v1 invoke-virtual {v1}, Lcom/clj/fastble/BleManager;->getReConnectInterval()J move-result-wide v1 invoke-virtual {v0, p1, v1, v2}, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->sendMessageDelayed(Landroid/os/Message;J)Z goto :goto_266 .line 261 :cond_204 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; sget-object v1, Lcom/clj/fastble/bluetooth/BleBluetooth$LastState;->CONNECT_FAILURE:Lcom/clj/fastble/bluetooth/BleBluetooth$LastState; # setter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->lastState:Lcom/clj/fastble/bluetooth/BleBluetooth$LastState; invoke-static {v0, v1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$502(Lcom/clj/fastble/bluetooth/BleBluetooth;Lcom/clj/fastble/bluetooth/BleBluetooth$LastState;)Lcom/clj/fastble/bluetooth/BleBluetooth$LastState; .line 262 invoke-static {}, Lcom/clj/fastble/BleManager;->getInstance()Lcom/clj/fastble/BleManager; move-result-object v0 invoke-virtual {v0}, Lcom/clj/fastble/BleManager;->getMultipleBluetoothController()Lcom/clj/fastble/bluetooth/MultipleBluetoothController; move-result-object v0 iget-object v1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; invoke-virtual {v0, v1}, Lcom/clj/fastble/bluetooth/MultipleBluetoothController;->removeConnectingBle(Lcom/clj/fastble/bluetooth/BleBluetooth;)V .line 264 iget-object p1, p1, Landroid/os/Message;->obj:Ljava/lang/Object; check-cast p1, Lcom/clj/fastble/data/BleConnectStateParameter; .line 265 invoke-virtual {p1}, Lcom/clj/fastble/data/BleConnectStateParameter;->getStatus()I move-result p1 .line 266 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleGattCallback:Lcom/clj/fastble/callback/BleGattCallback; invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$600(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/callback/BleGattCallback; move-result-object v0 if-eqz v0, :cond_266 .line 267 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleGattCallback:Lcom/clj/fastble/callback/BleGattCallback; invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$600(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/callback/BleGattCallback; move-result-object v0 iget-object v1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleDevice:Lcom/clj/fastble/data/BleDevice; invoke-static {v1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$700(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/data/BleDevice; move-result-object v1 new-instance v2, Lcom/clj/fastble/exception/ConnectException; iget-object v3, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bluetoothGatt:Landroid/bluetooth/BluetoothGatt; invoke-static {v3}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$800(Lcom/clj/fastble/bluetooth/BleBluetooth;)Landroid/bluetooth/BluetoothGatt; move-result-object v3 invoke-direct {v2, v3, p1}, Lcom/clj/fastble/exception/ConnectException;->(Landroid/bluetooth/BluetoothGatt;I)V invoke-virtual {v0, v1, v2}, Lcom/clj/fastble/callback/BleGattCallback;->onConnectFail(Lcom/clj/fastble/data/BleDevice;Lcom/clj/fastble/exception/BleException;)V goto :goto_266 .line 354 :cond_243 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleGattCallback:Lcom/clj/fastble/callback/BleGattCallback; invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$600(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/callback/BleGattCallback; move-result-object p1 if-eqz p1, :cond_266 .line 355 iget-object p1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleGattCallback:Lcom/clj/fastble/callback/BleGattCallback; invoke-static {p1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$600(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/callback/BleGattCallback; move-result-object p1 iget-object v0, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bleDevice:Lcom/clj/fastble/data/BleDevice; invoke-static {v0}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$700(Lcom/clj/fastble/bluetooth/BleBluetooth;)Lcom/clj/fastble/data/BleDevice; move-result-object v0 iget-object v1, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->bluetoothGatt:Landroid/bluetooth/BluetoothGatt; invoke-static {v1}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$800(Lcom/clj/fastble/bluetooth/BleBluetooth;)Landroid/bluetooth/BluetoothGatt; move-result-object v1 iget-object v2, p0, Lcom/clj/fastble/bluetooth/BleBluetooth$MainHandler;->this$0:Lcom/clj/fastble/bluetooth/BleBluetooth; # getter for: Lcom/clj/fastble/bluetooth/BleBluetooth;->extra_data:Ljava/lang/String; invoke-static {v2}, Lcom/clj/fastble/bluetooth/BleBluetooth;->access$1000(Lcom/clj/fastble/bluetooth/BleBluetooth;)Ljava/lang/String; move-result-object v2 invoke-virtual {p1, v0, v1, v2}, Lcom/clj/fastble/callback/BleGattCallback;->onCharacteristicChanged(Lcom/clj/fastble/data/BleDevice;Landroid/bluetooth/BluetoothGatt;Ljava/lang/String;)V :cond_266 :goto_266 return-void nop :pswitch_data_268 .packed-switch 0x1 :pswitch_1a1 :pswitch_13a :pswitch_123 :pswitch_e0 :pswitch_9d :pswitch_50 :pswitch_f .end packed-switch .end method