2013-03-03 3 views
1

В качестве введения к моему вопросу я расскажу вам, что я искал правильный способ делать что-то, но все равно не нашел ответа.Отключение Bluetooth при выходе из приложения

Я видел во многих вопросах, заданных в stackoverflow, что выход из приложений на Android выполняется просто нажатием кнопки «домой». Я видел, как некоторые люди говорят, что использовать приложение «выход» в своем приложении не часто.

Вот мой вопрос. Предположим, я включил Bluetooth-coonection в моем приложении, так что два игрока могут играть друг против друга с двумя телефонами/планшетами. Теперь они хотят выйти или хотят продолжить свою жизнь. Как отключить Bluetooth? есть ли время для приложения, которое делает это для меня? Должен ли я запускать счетчик простоя, чтобы отключить Bluetooth? Что, если пользователь решил выйти на чтение SMS, а затем вернуться в приложение, обнаружив, что Bluetooth отключен?

Другими словами, каков правильный способ борьбы с отключением Bluetooth, когда он больше не нужен, не мешая пользователю?

Извините за длинный вопрос, я просто хочу прояснить ситуацию.

Спасибо, AJ

ответ

2

Вы можете переопределить метод OnPause() в вашей деятельности, чтобы отключить Bluetooth, и переопределить метод onResume() в вашей деятельности, чтобы включить его снова.

Однако я бы не рекомендовал это. Во-первых, для включения или отключения аппаратного обеспечения требуется хорошая секунда. Кроме того, что, если пользователь использует какое-то другое устройство, подключенное к Bluetooth? Приостановка приложения отключит это соединение. Что, если bluetooth уже был включен, когда пользователь запускает приложение? Вероятно, они не захотят, чтобы ваше приложение меняло это.

Моя рекомендация - когда вы запускаете свое приложение, посмотрите и посмотрите, включен ли BT. Если это не так, предложите пользователю включить его. Если вы действительно настроены на очистку после себя, вы можете добавить флажок в приглашение, о котором я только что упомянул, что говорит что-то вроде «Отключить его снова при выходе» и позволить им выбрать, хотят ли они этого.

+0

Мэтт, спасибо! Таким образом, вы предлагаете предложить отключить bluetooth в моем методе override onpause? Это означает, что когда мое приложение перейдет в фоновый режим, пользователю будет предложено это сделать? –

+0

Нет, вы не можете иметь код пользовательского интерфейса в onPause(). Im, предлагая оставить bluetooth, когда ваше приложение приостанавливается, если только в начале вашего приложения, при включении bluetooth, пользователь явно говорит, что хочет, чтобы Bluetooth отключался, когда приложение приостановлено. – Matt

+0

спасибо! Я попробую и расскажу, как все прошло! Спасибо за ваше время! –

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