J'ai un service qui peut théoriquement fonctionner sans activité associée (comme "services" sont prévus sur la plate-forme Android).Android Bluetooth à partir du service
Ce service utilise Bluetooth, en particulier enregistre un service Bluetooth avec un nom donné qui écoute les communications. Bien sûr, pour fonctionner, le Bluetooth doit être actif.
Comme également indiqué sur les documents api Bluetooth j'utilise le BluetoothAdapter.ACTION_REQUEST_ENABLE
pour inviter l'utilisateur à activer Bluetooth au cas où il n'est pas déjà allumé. Ceci, cependant, est une activité, et doit donc être appelé à partir d'une autre activité, à savoir:
Intent enableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
InstanceOfAnActivity.startActivity(enableIntent);
Ce que je voudrais obtenir est d'avoir le service (qui, par exemple, démarre au démarrage), complètement découplé de toute activité, et n'aura donc pas le InstanceOfAnActivity
pour démarrer le pop-up demandant à l'utilisateur d'activer Bluetooth.
Maintenant, je sais qu'il ya l'appel (infâme) à BluetoothAdapter.enable()
, mais comme le doc dit qu'il ne devrait pas être appelé directement.
Donc, une astuce/solution à ce dilemme? (Peut-être qu'il est facile et je manque juste quelque chose ...)
Il est quelques mois plus tard maintenant et je me demande si vous étiez en mesure de surmonter ce problème? –
Comment "beaux widgets" pour activer le bluetooth sans la permission de l'utilisateur? – Pachanka