Включение точки доступа при подключении bluetooth

Автоматизация раздачи интернета с телефона на ГУ

Так как интернет для головного устройства машины у меня раздаётся с телефона Xiaomi Mi 6, то решил как-то автоматизировать процесс включения/выключения точки доступа. ну и заодно всего остального (блютуз, gps, моб. интернет).
Рассказывать буду про то, как это работает в экосистеме андроидных устройств. При этом у меня стоит кастомная прошивка (Miui Pro) c рут-правами.
У владельцев яблочных устройств наверное также есть свои программы для кодирования/чтения NFC-меток. Поэтому владельцев яблофонов прошу дополнить что и как у вас.

1. Заказал NFC-метки тут. Круглые, чёрные Anti Metal, 504 Bytes.
2. Устанавливаем из Play Маркета на телефон приложения NFC Tools и NFC Tasks, даём все запрашиваемые права.
На 4pda есть NFC Tools Pro с расширенным функционалом — гуглите. Я ставил её.
3. Открываем NFC Tools подносим метку к верхней задней части телефона — метка считывается. Сразу скажу, что в программе есть полезная функция (Задачи — Дополнительные опции — Выполнить задачи профиля), которая поможем вам сразу протестировать работаю функции или нет.
4. Идём в раздел Задачи — Добавить задачу — Условия для задач — Условие: Счётчик сканирований — Состояние: 1-ое сканирование, Поведение: Включить.
5. Идём в раздел Задачи — Добавить задачу — Сети — Wi-Fi (отключить). Поясню, что я обычно выхожу из дома или офиса, где интернет телефон получает по Wi-Fi, а в машине он не нужен включенным. Поэтому таким условием выключается Wi-Fi. Добавляйте этот пункт на своё усмотрение.
6. Идём в раздел Задачи — Добавить задачу — Права суперпользователя (root) — Мобильные данные (включить). Т.е. включаем мобильный интернет на телефоне. Без рут-прав возможно вы не сможете выбрать этот пункт.
7. В последних версиях андроида Гугл заблокировал включение/отключение точки доступа, поэтому когда я выбрал (Добавить задачу-Сети-Точка доступа Wi-Fi (включить), то у меня ничего не заработало. Пришлось ставить небольшие костыли — тыц.
8. В связи с тем, что поставлены костыли в NFC Tools идём в раздел Задачи — Добавить задачу — Разное — Отправить «намерение» (Intent). Цель — Activity, Пакет — выбираем установленное приложение Oreo Wifi HotSpot (com.fitc.wifihotspot), Данные — пишем wifihotspot://turnon. Все остальные строки оставляем пустыми.
9. Идём в раздел Задачи — Добавить задачу — Условия для задач — Конец условия.
10. Идём в раздел Задачи — Добавить задачу — Условия для задач — Условие: Счётчик сканирований — Состояние: 2-ое сканирование, Поведение: Выключить.
11. Идём в раздел Задачи — Добавить задачу — Разное — Отправить «намерение» (Intent). Цель — Activity, Пакет — выбираем установленное приложение Oreo Wifi HotSpot (com.fitc.wifihotspot), Данные — пишем wifihotspot://turnoff. Все остальные строки оставляем пустыми.
12. Идём в раздел Задачи — Добавить задачу — Сети — Bluetooth (отключить).
13. Идём в раздел Задачи — Добавить задачу — Сети — Gps (отключить). Поясню, что пункты 12 и 13 для отключения блютуза и gps, т.к. у меня их автоматом включает Android Auto (о том как я с ним воевал и победил, включив просмотр видео, Ютуба в движении расскажу в отдельном посте).
14. Идём в раздел Задачи — Добавить задачу — Условия для задач — Конец условия.
15. Идёт в раздел Задачи — Дополнительные опции — Сохранить профиль задач. Для сохранения того, что было сделано выше.
16. В разделе Задачи наживаем «Писать» и подносим метку к телефону.
17. Идём в машину и клеим метку в удобное место.

Читайте также:  Toshiba satellite c850 b1k bluetooth

Итог всего сказанного выглядит так:
Прихожу в машину, подношу разблокированный телефон к метке — выключается WiFi, включается мобильный интернет и точка доступа. Можно добавить включение блютуза и gps, но мне это не актуально, т.к. это автоматом делает Android Auto. Авто само коннектиться к точке доступа и вуаля — есть интернет на ГУ.
Заглушил двигатель, подношу разблокированный телефон к метке — выключается точка доступа, блютуз и gps. Мобильный интернет продолжает работать.

Вариантов использования метки таким способом — море. Какой выбрать — решать вам.

Источник

Автовключение точки доступа при посадке в автомобиль

Мой вариант автоматизации включения точки доступа при подключении 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 (5633 Загрузки)

    Новый способ (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-права о которых упоминалось в начале статьи:

    Источник

    Оцените статью
    Adblock
    detector