Ma société a, en substance, entrepris un projet pour remplacer certains de ses pagers avec des smartphones stock fonctionnant sous Android. Tant qu'ils sont connectés, l'appareil doit écouter sur un socket particulier pour recevoir des "pages" d'un serveur. Mon implémentation naïve consistait à créer un service de premier plan qui: 1) a lancé un fil d'écoute, et 2) détient un PARTIAL_WAKE_LOCK.Android longue durée écouteur socket
Cela fonctionne correctement sauf si l'appareil a une longue période d'inactivité, 1 heure et plus. Ensuite, il semble que le système d'exploitation arrête le processus de mon application, ce qui, à juste titre, le laisse croire qu'il n'est pas utilisé. Je comprends parfaitement les raisons pour lesquelles je le fais, mais je me demande si je peux contourner cette restriction. Existe-t-il des moyens de signaler à Android que mon processus est suffisamment important pour rester en vie/que l'appareil est éveillé? J'ai appris Java et l'API Android pour ce projet, donc il y a beaucoup de domaines où mes connaissances sont incomplètes.
A défaut, compte tenu de la description de mes besoins d'affaires, comment suggéreriez-vous de mettre en œuvre cette fonctionnalité? Pendant que l'utilisateur est connecté à notre application personnalisée, l'appareil doit toujours être à l'écoute.
Merci à tous pour avoir lu cette question.
Je vous remercie sincèrement d'avoir éclairci certaines de mes idées fausses. Je vais faire ces changements. – WorkerThread