- Автовключение точки доступа при посадке в автомобиль
- Что потребуется?
- Новый способ (MacroDroid)
- Старый способ (Automate)
- Алгоритм
- Реализация
- autostart app on bluetooth connection (android)
- 3 Answers 3
- Linked
- Related
- Hot Network Questions
- Subscribe to RSS
- Автоматическое подключение Bluetooth на Android-устройствах
- Настройка автоматического подключения
- Сопряжение между Bluetooth-устройствами
- Настройка автоматического подключения
- Как подключить Bluetooth гарнитуру к Android: Видео
Автовключение точки доступа при посадке в автомобиль
Мой вариант автоматизации включения точки доступа при подключении Android-смартфона посредством Bluetooth к магнитоле. Автомобилем пользуюсь не так часто, чтобы в него покупать отдельный USB-модем и ежемесячно платить за интернет. К тому же, на Android’е есть некоторые проблемы с получением интернета с RNDIS-устройств. Как пример, приложения Яндекса (навигатор, музыка, радио) не видят наличие доступа к интернету в системе, хотя если смотреть ifconfig или просто пинговать ресурс, интернет будет.
А вот при подключении штатно предусмотренным способом через Wi-Fi всё прекрасно работает.
Что потребуется?
- Android-смартфон;
- Программа Automate ( Automate 1.20.5 (Одна Загрузка) ) для старого способа!;
- Программа MacroDroid для нового способа:
- актуальная версия:
MacroDroid Pro v5.19.9 (Одна Загрузка)
MacroDroid Helper v1.7 (1003 Загрузки) — служебный сервис, на некоторых смартфонах без него не будет работать включение точки доступа.
- старая версия, под которую писалась инструкция:
MacroDroid Pro v4.9.6.1 (5634 Загрузки)
Новый способ (MacroDroid)
Устанавливаем программу на смартфон. Запускаем. Переходим в пункт Макросы:
Жмем плюсик в нижнем правом углу и создаем тем самым новый скрипт:
Сначала создадим макрос для включения точки доступа. Сверху задаем ему название, например Car WiFi On, в красном окошке Триггеры жмем плюсик. Здесь задаем условие для срабатывания нашего макроса. Нас интересует подключение к магнитоле по блютузу. Значит идем в категорию Связь и выбираем Состояние Bluetooth:
Выбираем условие Устройство подключено и выбираем магнитолу:
- актуальная версия:
В моем случае магнитола зовется AWC3187
Теперь назначим действие при подключении к магнитоле. Нас интересует включение точки доступа. Для этого в синем окошке Действия жмем плюсик. В списке действий находим категорию Связь, в ней выбираем Точка доступа:
Выбираем пункт Включить точку доступа, галочки для начала не ставим. У меня на Android 9.0 всё работает без их включения, но если у вас хотспот не будет включаться, то попробуйе альтернативные способы:
Всё, макрос на включение готов. Выглядеть должен примерно так:
Сохраняем макрос и создаем второй. Теперь уже на выключение точки доступа по выходу из автомобиля.
Задаем ему название, добавляем новый тригер — Связь — Состояние Bluetooth — Устройство отключено — выбираем магнитолу:
В моем случае магнитола зовется AWC3187
Добавляем новое действие — Связь — Точка доступа — Выключить точку доступа:
Не забываем включить галочки на альтернативных способах, если без них не срабатывает.
Выходим в главное меню программы MacroDroid и отключаем оптимизацию приложении, выбрав первый пункт и согласившись во всплывающем окне:
Снова выходим в главное меню и активируем работу MacroDroid‘а, включив ползунок в верхнем правом углу. Теперь идем в машину и включаем магнитолу, проверяем, что точка доступа включилась. Выключаем магнитолу, убеждаемся, что раздача интернета прекратилась. Под каждым макросом должна будет появиться строчка Последняя активация: хх минут назад, что свидетельствует о правильной работе.
Теперь смартфон автоматически будет раздавать интернет на магнитолу при посадке в автомобиль и так же выключать её при высадке, даже с выключенным экраном и включенным режимом экономии батареи.
Старый способ (Automate)
Алгоритм
- устанавливаем программу на смартфон;
- составляем в ней скрипт на включение точки доступа при подключении к магнитоле по блютузу;
- в настройках программы выставляем запуск всех запущенных скриптов после перезагрузки устройства;
- запускаем скрипт и забываем про программу;
- смартфон сам будет подключаться к Bluetooth магнитолы и тем самым активировать работу скрипта на включение точки доступа.
Реализация
Устанавливаем программу Automate. Запускаем. Сразу идем в настройки и ставим галочку напротив пункта Run on system startup:
Тем самым обеспечиваем постоянную работу нашего скрипта даже после перезагрузок устройства (важным условием в целом системы Android для автозапуска приложений является факт его (приложения) выполнения на момент перезагрузки, т.е. если программа была принудительно закрыта до перезапуска, запущена автоматически она не будет даже с установленной галочкой).
Или же создаем свой и срисовываем со скриншота:
Скачанный скрипт необходимо импортировать. Для этого в меню выбираем пункт Import, и в файловом проводнике находим скачанный файл с расширением .flo.
В списке на главном экране должен будет появиться скрипт Точка доступа в автомобиле. А при его открытии картина будет примерно следующая:
Единственным отличием будет отсутствие галочек на пунктах access local network, internet and nearby devices и tethering workaround. Соответственно, ставим их. Программа предложит установить дополнительные пакеты для расширения своих привелегий. Соглашаемся.
Хотел уже писать о запуске скрипта, но вспомнил, что в нем забит MAC-адрес блютуза моей магнитолы. Предварительно выполняем сопряжение магнитолы со смартфоном, если этого не было сделано и идем в редактор скрипта: иконка с карандашом — Flowchart:
На блок-схеме находим блок под номером 2 с иконкой блютуза и нажимаем по нему коротким тапом:
Жмем кнопку Pick device:
И в списке сопряженных блютуз-устройств выбираем магнитолу. Жмем Done. Затем галочку в верхнем правом углу от блок-схемы.
Вот теперь-то можно запускать скрипт. В логе начнут появляться сообщения, справа от названия скрипта появится единица, обозначающая количество одновременно работающих экземпляров и в шторке (трее) появится уведомление от Automate. Закрывать его крайне не рекомендуется, ибо система Android не гарантирует работоспособность программ в фоне, которые не заявляют о себе постоянным уведомлением в трее.
В моем случае работает в режиме Extension (Android 5+) и абсолютно не работает на всех других. Возможно, у вас будет иначе. Для одного из пунктов необходимы Root-права о которых упоминалось в начале статьи:
autostart app on bluetooth connection (android)
this is more like a general question: Is it possible to create an app, which starts if your phone connects to a specific bluetooth network? Is that possible on android? If yes, is there any documentation for a start?
3 Answers 3
They use a BroadcastReceiver for bluetooth like in this article, from which you can do whatever you want. (like launching a new activity or whatever)
Thanks. This means I can register an BroadcastReceiver and start my app on receiving a special bluetooth event, right?!
In my opinion it is impossible to do that in that way. Generaly possible is another scenario. Application still works in background and monit if device connect to network. If that happend than can fire another action.
Okay, thank you. There are some apps, which autostart if you connect to your cars bluetooth. any idea how those apps solved it? Do those app run in background all the time?
Like nadavfima said, you’ll need to use a BroadcastReceiver to listen for Bluetooth connections. When it triggers, you can extract the name of the device that just connected. If that name matches your criteria, then do whatever you want (Launch a new activity etc.)
What they didn’t explain is that you need to have your app start a Service, which will register the BroadcastReceiver.
-User installs your app and launches it.
-Button to toggle the service on/off
-User closes your app, but service continues to run
Linked
Related
Hot Network Questions
Subscribe to RSS
To subscribe to this RSS feed, copy and paste this URL into your RSS reader.
Site design / logo © 2023 Stack Exchange Inc; user contributions licensed under CC BY-SA . rev 2023.7.14.43533
By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy.
Автоматическое подключение Bluetooth на Android-устройствах
Наверное, не стоит объяснять, что такое Bluetooth и как им пользоваться. Все мы его используем в тех или иных целях – Bluetooth гарнитура, передача файлов, раздача интернета и т. д. Но многие задают вопрос, можно ли настроить автоматическое подключение Bluetooth на Android-устройствах. Ответ прост – можно. Хотите знать, как? Читайте статью дальше.
Настройка автоматического подключения
Сразу же стоит отметить, что изначально подобные функции просто не предусмотрены. То есть ни в смартфонах, ни в планшетах, ни в ноутбуках нет встроенных средств, которые позволяют автоматически подключаться к устройствам Bluetooth. Поэтому вам придется искать нужную программу, устанавливать ее на смартфон (или планшет), настраивать и только после этого подключение будет происходить автоматически.
Кроме того, прежде чем программа сможет выполнять свои прямые функции, вам придется выполнить сопряжение с нужными устройствами вручную. Далее в этой статье мы рассмотрим, как выполнить сопряжение, какое приложение лучше установить, где его найти и как настроить. Итак, давайте по порядку.
Сопряжение между Bluetooth-устройствами
Нужно знать несколько правил и выполнять четкую последовательность действий. Чтобы выполнить сопряжение между устройствами, необходимо включить Bluetooth на обоих девайсах, а также активировать функцию обнаружения.
На компьютере обнаружение включается следующим образом: в области уведомлений есть значок синего зуба (Блютуз). Нажимаем на него правой кнопкой мыши. Появляется меню, в котором нужно выбрать «Открыть параметры».
Во вкладке «Параметры» есть строка «Разрешить устройствам обнаруживать этот компьютер». Ставим здесь галочку и сохраняем настройки.
На Android нужно открыть настройки Bluetooth, включить адаптер (передвинуть ползунок в положение «Вкл») и поставить галочку в строке «Видимо всем устройствам Bluetooth».
Как правило, галочка автоматически снимается через 2-3 минуты. Чтобы этого не происходило, нужно нажать кнопку «Меню» (на Samsung это сенсорная кнопка слева от механической клавиши «Домой»). Выбираем «Тайм-аут соединения» и здесь выбираем время, через которое обнаружение будет отключаться.
Теперь, когда обнаружение включено, переходим непосредственно к сопряжению. Если вы хотите подключить смартфон к компьютеру, то на ПК снова нажимаем на значок синего зуба в системном трее. На этот раз выбираем «Добавить устройство».
Откроется окно, в котором система будет отображать все доступные для подключения Bluetooth устройства. Выбираете из списка свой девайс и нажимаете «Далее».
Появиться еще одно окно, в котором написан PIN-код. Если он совпадает с тем кодом, который появился на смартфоне (планшете), то нажимаем «Ок» на обоих устройствах. Все, сопряжение выполнено.
Если же речь идет о подключении между двумя мобильными гаджетами, то заходим в настройки Bluetooth, включаем адаптер и ниже нажимаем кнопку «Поиск».
Система найдет все доступные для сопряжения девайсы. Вам останется только выбрать нужный. На втором устройстве появится запрос на подключение. Если на обоих гаджетах PIN-код совпадает, то принимайте запрос. Все, девайсы сопряжены.
Настройка автоматического подключения
Как уже говорилось выше, автоматическое подключение Bluetooth на Android доступно только через сторонние приложения. Наиболее распространенное приложение имеет название Bluetooth Auto Connect. Скачать приложение можно с Google Play, причем абсолютно бесплатно.
Работать в нем достаточно просто. Единственное неудобство заключается в том, что приложение полностью на английском языке. Но разобраться несложно.
После запуска программы вы сразу попадаете в настройки. Здесь будет несколько пунктов, которые нужно настроить:
- Set Last Device – набор последнего устройства. Если поставить здесь галочку, то вам смартфон при включении Bluetooth будет автоматически подключаться к последнему гаджету (если тот будет в зоне досягаемости).
- Profiles – здесь вы можете выбирать типы соединений. Для быстрого соединения с гарнитурой следует поставить галочку в строках «Media Audio (A2DP)» и «Call audio (HSP)». Здесь нужно выбрать нужные технологии, поставив галочки в соответствующих пунктах.
- Devices – если перейти в этот раздел, то вы можете выбрать оборудование для быстрого подключения.
Все оставшиеся разделы не трогаем. Вот и все. Теперь при включении Bluetooth на телефоне он будет автоматически подключаться к сопряженным устройствам, которые находятся в зоне досягаемости соединения. Как видите, все очень легко и просто.