Comment puis-je obtenir de l'UUID d'un appareil bluetooth?
J'ai besoin de connaître l'UUID sur l'API 8 (2.2) ou éventuellement 2.3.3.
Que je comprends de la documentation, ce devrait être autorisé:
phoneDevice = blueAdapter.getRemoteDevice(phoneAddress);
ParcelUuid[] phoneUuids = phoneDevice.getUuids(); //Won't compile
Eclipse me donne:
"La méthode getUuids() n'est pas défini pour le type BluetoothDevice."
Mais voyez:
http://developer.android.com/reference/android/bluetooth/BluetoothDevice.html#getUuids()
Aussi, je voudrais savoir comment les Uuid sont "en vrac" à l'intérieur de la ParcelUuid[]. Dans le cas où j'arrive à y accéder, comment puis-je récupérer un UUID à partir d'un parcelUuid[]? Documentation pour Android bluetooth semble être de très mauvaise qualité, à mon avis.
Quelle blague!
Maintenant, j'essaie de l'obtenir à partir de l'intention, mais cela donne: *"EXTRA_UUID ne peut pas être résolu ou n'est pas un champ"*:
intent.getParcelableExtra(BluetoothDevice.EXTRA_UUID);
Salut face à un même problème , dans mon projet de fournir un soutien à partir de android 2.3.1 , min api de niveau 8. S'il vous plaît aider.
Salut. Longtemps passé pour ce post, mais je suis maintenant confronté à ce même problème. Avez-vous une solution pour que (mon API minimum est de 10) ?Merci pour tout indice
OriginalL'auteur Tombola | 2012-03-05
Vous devez vous connecter pour publier un commentaire.
Vous devez utiliser la réflexion pour utiliser le getUuids() et fetchUuidsWithSdp() sur la version android < 3. Essayez donc le code:
OriginalL'auteur Naka
//cela permettra de soutenir à partir de l'API de niveau 15 et plus.
//aucun moyen de dégrader son matériel. il n'est pas accompagnée d'un bocal. http://developer.android.com/sdk/compatibility-library.html
Donc, la façon de le faire est de créer des Uuid? Ce n'est pas une propriété du matériel, c'est juste un certain nombre-je faire, est ce que le droit?
vous pourrez obtenir l'uuid pour android 2.2 pour connecter un autre appareil? poster votre solution ici
OriginalL'auteur Padma Kumar
Malheureusement, je ne pense pas qu'il y est une bonne façon d'obtenir de l'UUID est pris en charge par un BluetoothDevice avec l'API de niveau < 15. Je suppose que c'est pourquoi ils ont ajouté les nouvelles fonctions de l'API de 15.
Remarque, à partir de la docs pour BluetoothClass
Alors, peut-être la classe de l'appareil pourrait être utilisé comme un indice quant à ce que les services seront disponibles jusqu'à ce que vous effectuez l'une des fonctions déjà mentionnées. Certes, il ne fait pas de mal de vérifier la classe car cela ne nécessite aucune bluetooth opérations.
Noter que la classe de service est également disponible (c'est une partie de la classe de l'appareil) mais c'est juste une classe générale, pas une liste de services spécifiques (à l'instar de SDP).
OriginalL'auteur Tom
essayer BluetoothAdapter classe
toute question, lire: http://developer.android.com/reference/android/bluetooth/BluetoothAdapter.html
OriginalL'auteur Pedro Paiva Portugal
Dans le cas où vous ne pouvez pas obtenir l'UUID de
getUuids()
méthode. S'il vous plaît essayer dans l'autre sens.Après avoir scanné avec succès, vous devriez recevoir
byte[]
(scanRecord), donc à partir de ce résultat, si vous pouvez reconnaîtreUUID format
vous pouvez diviser étape par étape pour obtenir de bons UUID comme ces codes.P/s : chose Importante, vous devez savoir
UUID format
à obtenir à partir de l'index correctement.OriginalL'auteur Huy Tower