Je veux être en mesure de capturer des événements clés dans un service que j'écris. Je peux le faire à l'intérieur d'une activité sans problèmes, mais toutes mes tentatives pour obtenir ce travail dans un service ont échoué. La touche que je voulais capturer (globalement) est le bouton BACK, mais si ce n'est pas possible, n'importe quel bouton (matériel) d'une HTC Desire serait OK.Comment capturer des événements clés dans un service?
Répondre
Oui, les activités d'Android ne reçoivent que KeyEvents
lorsqu'elles sont ciblées. La seule façon de capturer "globalement" une pression sur un bouton arrière est de créer un InputMethod afin que vous puissiez intercepter les événements de clé dure. Rappelez-vous que l'utilisation de votre propre InputMethod
ne vous permettra pas d'utiliser des claviers personnalisés comme Swiftkey par exemple.
Avez-vous essayé d'atteindre HTC sur ce problème?
Ce n'est pas mon appareil (j'ai un Samsung Galaxy I9000 - qui a ses propres problèmes;)) mais celui d'un de mes amis. Il a cherché sur certains forums, trouvé des personnes ayant le même problème mais aucune solution jusqu'à présent (je ne sais pas s'il a contacté HTC). Mais après qu'Android soit ouvert pour que nous puissions résoudre les problèmes que nous rencontrons (c'est ce que je pensais), l'idée était de faire exactement cela. ;) – user388759
Un service n'a pas d'interface utilisateur et ne reçoit aucune entrée de l'utilisateur.
Maintenant, si vous aviez une activité qui gérait le service, vous pourriez faire en sorte que le service fasse quelque chose de spécial lorsque la touche de retour a été enfoncée pendant votre activité.
Vous pouvez diffuser keyEvent à partir de framework et gérer la diffusion dans votre service. Mais vous devez changer le code dans le cadre pour cela.
Si vous voulez juste capturer l'événement de changement de volume indépendamment du bouton de volume est pressé ou non, cette réponse serait utile.
any way to detect volume key presses or volume changes with android service?
- 1. Comment capturer des événements clés à partir d'Intent ou de BroadcastReceivers
- 2. capturer des événements javascript dans C#
- 3. événements clés
- 4. événements clés
- 5. Gestion des événements clés dans les services Windows C#
- 6. Puis-je capturer des événements de clavier Windows Mobile PIE?
- 7. Processus de gestion des événements clés
- 8. Comment puis-je capturer des événements tactiles dans un en-tête de section UITableView?
- 9. Comment recevoir des événements clés lors d'un glisser-déposer?
- 10. Comment puis-je capturer des clés sur une application WinForms lorsque l'application est au point?
- 11. Capturer les événements tactiles globaux (Symbian)
- 12. Comment capturer/consigner les événements "Attention" de SQL Server 2005?
- 13. Comment capturer des événements à partir d'un contrôle de bouton créé dynamiquement dans asp.net?
- 14. Comment dois-je gérer les événements clés dans J2ME?
- 15. jquery ui autocomplete - événements clés
- 16. Comment capturer un événement dans un ListView?
- 17. Comment capturer des événements mouseover sur des éléments HTML d'entrée ajoutés dynamiquement à l'aide de jQuery?
- 18. Comment capturer des requêtes XMLHTTP dans un contrôle Webbrowser?
- 19. Comment puis-je capturer tous les événements de la souris dans un JFrame/Swing?
- 20. Comment lire le journal des événements du service Windows
- 21. Exécuter une application externe et lui envoyer des événements clés
- 22. Capture d'événements clés dans un mx: Image
- 23. JavaScript: traitement des événements clés après l'attribution d'un focus
- 24. Essayer de comprendre la gestion des événements clés de javascript
- 25. Comment document.createEvent est-il supposé fonctionner avec les événements clés?
- 26. Comment enregistrer des événements dans le journal des événements et éventuellement dans un fichier facilement avec Delphi?
- 27. se déplace trop rapidement pour capturer les événements
- 28. Comment capturer le journal des événements intellitrace pour une application Web déjà en cours d'exécution?
- 29. Comment capturer des événements tirés à partir de la nouvelle fenêtre Popup IE
- 30. Comment créer un écouteur pour les événements WCF ServiceHost lorsque le service est hébergé sous IIS?
Pourquoi voulez-vous capturer dans un 'Service'? – Macarse
Premièrement: Je suis nouveau à la programmation android et je pensais qu'une activité ne reçoit KeyEvents que lorsqu'elle a un focus. Si ce n'est pas le cas, je n'ai pas strictement besoin d'un service. Ce que je veux faire est d'écrire une application qui peut désactiver le verrouillage de l'écran qui a été activé par le capteur de proximité lors d'un appel. Ceci est nécessaire parce que le HTC Desire 'oublie' parfois de réactiver l'écran correctement. Je voulais le faire quand on appuie sur n'importe quel bouton (pour pouvoir raccrocher sans avoir à retirer la batterie;)). – user388759