• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Вопрос Программа на JAVA для подключения смартфона к ESP

AlVal

New member
Приветствую всех!
Составляю свою программу для смартфона, обменивающуюся "Hello world!" с модулем ESP, на основе примеров имеющихся в интернет. В JAVA я новичок.

Примеров по Android и WiFi в сети много, но они под разные версии Android и писались в разные годы, по назначению тоже сильно отличаются (какие-то WiFi-рации, чаты, интернет-браузеры и прочее). А для простого соединения с чем-то подобным ESP8266 примеров почему-то нет.
В общем для лучшей "навигации" среди этих примеров, хотелось бы определиться с самыми общими признаками того, что годится для работы с ESP со смартфона, а что нет.

Подскажите плиз, какие ресурсы смартфона должны быть обязательно указаны в файле манифеста для соединения с ESP?
Есть примеры, где задаются только ресурсы ACCESS_WIFI_STATE и CHANGE_WIFI_STATE.
А есть такие, где вышеназванных ресурсов нет вовсе, а используется один только ресурс INTERNET.
Также есть варианты использования ресурса INTERNET с подключенным Apache и без него.
В общем каких минимальных ресурсов достаточно, чтоб отправить со смартфона "Hello world!", и получить этот текст на стороне ESP?
 

LineAir

New member
@AlVal, для отправки/получения сообщений на модуль можете использовать сокеты (java.net.socket). В манифесте, видимо, Вас интересует разрешения, а не ресурсы. Нужно разрешить приложению работать с сетью, т.е.
Код:
<uses-permission android:name="android.permission.INTERNET" />
Также необходимо ознакомиться с многопоточностью, т.к. android не позволит работать с сетью в UI потоке.
 

AlVal

New member
@LineAir спасибо!:)

Нашёл более быстрый способ написания программы для Android - среда разработки Basic4Android.
Нашёл случайно. Смотрел манифесты готовых программ для смартфона, изучая то о чём интересовался в первом посте (Приложения на Google Play – Show Java - A Java Decompiler если что).
И заметил, что некоторые программы написаны не просто на Java, а с помощью какого-то макро-языка, который более высокого уровня чем Java. И повсюду в тексте таких программ встречается аббревиатура "b4a"... Набрал в гугле эту аббревиатурку, а дальше уже всё было легко и просто;)
 
Последнее редактирование:
Сверху Снизу