2014-10-16 14 views
5

Tôi muốn lấy tên của thiết bị đeo được kết nối, dưới dạng "Gear Live 02xx".Lấy tên thiết bị đeo

Tôi có thể sử dụng API mặc để đạt được điều này không?

Sử dụng này:

node.getDisplayName(); 

tôi nhận được một String như 4750237895-4553-4343-xxxxxxxxxxxxx.

Trả lời

3

Không có API chính thức để lấy tên của thiết bị đeo được được hiển thị khi đồng hồ bị khởi động đầu tiên, chẳng hạn như G XEM 1234 hoặc MOTO 360 1234.

này có thể thay đổi trong tương lai, nhưng nếu bạn muốn có tên tương tự ngay bây giờ, bạn cần phải làm một việc như sau:

BluetoothAdapter btAdapter = BluetoothAdapter.getDefaultAdapter(); 
    String btAddress = "No Bluetooth"; 
    if (btAdapter != null) 
     btAddress = btAdapter.getAddress(); 

    // Reconstitute the pairing device name from the model and the last 4 digits of the bluetooth MAC 
    String wearName; 
    if ((btAddress != null) && (!btAddress.equals("No Bluetooth"))) { 
     wearName = android.os.Build.MODEL; 
     String[] tokens = btAddress.split(":"); 
     wearName += " " + tokens[4] + tokens[5]; 
     wearName = wearName.toUpperCase(); 
    } else { 
     wearName = "No Bluetooth"; 
    } 
+0

Vui mừng khi biết kết quả sẽ là gì? nếu chúng tôi đang sử dụng Ứng dụng xem trước Android Wear! –

4

Tại sao không sử dụng api bluetooth? http://developer.android.com/guide/topics/connectivity/bluetooth.html#QueryingPairedDevices

mô tả API không rõ ràng: mô tả có thể đọc được của nút. Đôi khi tạo ra từ các tên thiết bị bluetooth

"Đôi khi" không phải là tốt giải thích ... chuyển đổi chuỗi của bạn Hex2ASCII có vẻ như:

GP # xESCC và quá xa bánh răng tên trực tiếp ...

Tôi đã sử dụng điều này để hội tụ: http://www.rapidtables.com/convert/number/hex-to-ascii.htm

+0

Hiện tại, có thể đó là cách duy nhất. Tôi sẽ tránh sử dụng API BT và chỉ sử dụng API WEAR ... –

1

Không chắc chắn "02xx" nằm trong câu hỏi của bạn, nhưng để lấy mẫu thiết bị đeo chỉ cần sử dụng giá trị Build.MODEL. Xem http://developer.android.com/reference/android/os/Build.html

này sẽ cần phải được thực hiện trên các thiết bị mặc bản thân và chia sẻ với ứng dụng di động của bạn thông qua tin nhắn khuôn khổ: https://developer.android.com/training/wearables/data-layer/messages.html

3

Bạn có thể sử dụng Build.MODELBuild.BRAND (trên Mặc bên).

Với đồng hồ LG G, nó sẽ trả về bạn lần lượt là "G Watch" và "lge". Nếu bạn muốn lấy nó từ thiết bị cầm tay, tôi nghĩ bạn (nên) biết cách giao tiếp giữa hai bên.

Các vấn đề liên quan