J'essaie de construire une application Tizen native qui détectera l'activité et collectera périodiquement les données du capteur pour télécharger sur un serveur HTTP distant.
Pour cela, j'ai développé deux choses.
1. une application d'interface utilisateur natale pour commencer / arrêter le
2. une application de service p>
Je développe le projet dans Tizen Studio avec un quand J'exécute mon application Cela fonctionne bien pendant que mon appareil est connecté à SDB.
Mais quand je déconnecte le périphérique, il commence à faire un comportement non déterministe.
Par exemple, lorsqu'il est connecté à Tizen Studio, l'application enregistre des données pour les 15 premiers de toutes les années 60 et le 16e seconde, il télécharge ce fichier au serveur. Il commence également au rappel du changement d'activité. Donc, mon application fonctionne normalement si elle est de premier plan ou qu'il est en premier plan / arrière-plan et que le périphérique est connecté à SDB sur PC. P> < P> Comment puis-je rendre mon service à exécuter toujours en arrière-plan, quelle que soit la connexion de l'appareil à Tizen SDB sur PC? P> NB Le téléchargement des données est effectué à l'aide de libcurl et qui utilise un délai d'attente de 5s pour la connexion et sur une défaillance, il ignore le téléchargement. La minuterie ECORE est utilisée mais la minuterie ne doit pas être un problème car j'ai été testée en exécutant toujours le capteur, mais la diminution de la fréquence persiste toujours.
Les options de démarrage du capteur dans l'application de service sont les suivantes p>
Mais dès que l'appareil est déconnecté, cet intervalle n'est pas maintenu correctement, c'est-à-dire des données de lecture après 30 minutes (qui varie également) et même la fréquence de la collecte de données pour chaque seconde est considérablement réduite. Mais si l'application UI est au premier plan avant, tout va bien. P>
3 Réponses :
Il peut y avoir un problème dans la liaison de l'application de service avec l'application UI. P>
Pas probablement. Sinon, cela ne fonctionnerait pas lorsqu'il est connecté à Tizen Studio.
Je pense qu'un élément de catégorie de fond est utile pour ce problème. Selon Le guide , la catégorie de fond permet aux applications de fonctionner en arrière-plan.
Donc, vous devez modifier le fichier manifeste, voici un exemple. p> La valeur peut être définie sur le support, le téléchargement, l'arrière-plan, l'emplacement, le capteur, iot-communication et je pense, dans ce cas, la valeur devrait être un capteur. P> P>
Bien que ce lien puisse répondre à la question, il est préférable d'inclure les parties essentielles de la réponse ici et de fournir le lien pour référence. Les réponses uniquement des liaisons peuvent devenir invalides si la page liée change.
@Caloskao Merci de conseils. J'ai mis à jour ma réponse.
Voir les problèmes liés ici et ici .
Il me semble que le processeur va endormir l'état et entrave votre enregistrement. Pour éviter cela, utilisez P>
sensor_listener_set_option(listener[sensor_type], SENSOR_OPTION_ALWAYS_ON);
Merci @jdanner. Ouais acquérir Power_Lock_CPU a résolu le problème à cette époque à Tizen API 2.3.1 et a servi le but principal de fonctionner infiniment. Cependant, il provoque un drain de batterie grave: /.