2

Привет, Я разрабатываю приложение для Android и тем самым использую распознавание активности. Я загружаю образец приложения Google для распознавания активности. Он работает нормально, без ошибок. Но моя основная проблема заключается в следующей последовательности:Признание активности Android не работает должным образом

Я устанавливаю это приложение и начинаю распознавание активности. Не останавливая эту службу, я удаляю приложение для шляпы. снова я устанавливаю такое же приложение. Мое приложение начинает слушать признание активности, не спрашивая меня.

Так что я хочу знать, как это работает. Почему он продолжает эту службу после удаления моего приложения. В следующий раз он начнет прослушивать результаты деятельности.

Мне что-то не хватает. Или что-то не так?

Нужна помощь, благодарю вас.

ответ

1

Звучит так, будто вы не останавливаете прослушивание намерений распознавания.

Чтобы остановить прослушивание этого вы должны убедиться, что вы звоните:

yourActivityRecognitionClient.removeActivityUpdates(youtActivityRecognitionIntent); 

Помещенный выше в функции OnDestroy(), и он должен перестать слушать для намерений на остановке службы.

+0

Я хочу продолжить в фоновом режиме постоянно. Поэтому я не хочу останавливать это. Но как продолжить, если я снова удалю установку своего приложения. Я должен остановить его, когда пользователь удалит мое приложение или после установки установки, я должен проверить, запущен ли он или нет, а затем прекратить это время ... Так что это правильное поведение обнаружения активности. Почему он начинает прослушивание после повторной установки приложения без вызова начала прослушивания .... Нужна помощь, спасибо за повтор ... – nilkash

+0

Насколько я понимаю, распознавание активности, зарегистрированное для обновлений, будет продолжать искать обновления пока он не будет зарегистрирован, даже если ваше приложение не работает. Удаление приложения приведет к удалению вашего кода, чтобы он не запускал ничего, что бы прослушивало обновления активности, но если оно не было остановлено, я думаю, что ваш клиент все еще будет сидеть в памяти, пытаясь получить обновления. – jsrsoftware

+0

OH Итак, как это решить? Есть какой-либо способ сделать это. по крайней мере, любой способ проверить, работает ли он или нет при первой загрузке. – nilkash

1

вы также должны отменить pendingIntent, используя pendingIntent.cancel()

Смежные вопросы