2014-10-16 13 views

Odpowiedz

3

Nie ma oficjalnego API, aby pobrać nazwę noszenia urządzenia, które jest wyświetlane, gdy zegarek jest pierwszym uruchomieniu, takich jak G zegarek 1234 lub 1234. Moto 360

To może się zmienić w przyszłości, ale jeśli chcesz uzyskać podobną nazwę teraz, musisz zrobić coś takiego:

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

Podekscytowany, aby wiedzieć, jaki będzie wynik? jeśli korzystamy z aplikacji Android Wear Preview! –

4

Dlaczego nie używać interfejsu Bluetooth? http://developer.android.com/guide/topics/connectivity/bluetooth.html#QueryingPairedDevices

Opis interfejsu API nie jest tak jednoznaczny: czytelny dla człowieka opis węzła. Czasami generowana z nazwy urządzenia Bluetooth

„czasami” nie jest to dobre wytłumaczenie ... konwersja ciąg Hex2ASCII Wygląda:

GP # xESCC i zbyt daleko od Gear Live nazwy ...

Użyłem tego dla konwersji: http://www.rapidtables.com/convert/number/hex-to-ascii.htm

+0

Obecnie może być to jedyny sposób. Unikałbym używania BT API i używania tylko API WEAR ... –

3

można użyć Build.MODEL i Build.BRAND (na Strona zużycia).

Za pomocą zegarka LG G zwróci on odpowiednio "G Watch" i "lge". Jeśli chcesz go pobrać z palmtopa, myślę, że powinieneś (powinna) wiedzieć, jak komunikować się między obiema stronami.

Powiązane problemy