MIT App Inventor (http://ai2.appinventor.mit.edu/) - облачная среда визуальной разработки
приложений для платформы OS Windows, Android, Mac работа в которой не требует знания языка
программирования Java и Android SDK, достаточно знания элементарных основ
алгоритмизации. Для работы в MIT App Inventor необходимо наличие Google или Google Apps
аккаунта, а построение программ осуществляется в визуальном режиме с использованием
блоков программного кода.
я так делал:
-в флпрог для есп8266 создаю блок-(xml-страничка), у которого есть входы, на которые подаю нужные мне переменные.
-в ai забираю эту xml страницу и разбираю ее по тегам (теги создаются в блоке в флпрог).
-на экране телефона вывожу то что разобрал.
(можно и не xml ,а json, но там гемор с библиотеками в ide и плюс ранее в ai нельзя было обработать json.)
Справочные материалы и примеры App Inventor
Добавлено: 02.10.2021{, 16:51}
Phazz
feodor53, Хочу управлять через точку доступа поднятой на есп
, Хочу управлять через точку доступа поднятой на есп
управление из ai:
-шлем из ai , http запрос на есп
-в флпрог штатный есть инструмент для разбора этих запросов (WebPage - в нем поставить галку "при вызове адреса включить выход").
Справочные материалы и примеры App Inventor
Добавлено: 02.10.2021{, 20:27}
feodor53
берем проект:
СпойлерПоказать
в результате получаем:
штатная веб страница по адресу точки доступа (ip):
СпойлерПоказать
страница обновления прошивки с блоком web update (ip:8080/update)
СпойлерПоказать
xml страничка, которую будем разбирать в AI (ip:8989/xml):
там есть блок "XML данные - порт 8989 (можно сменить в блоке)"
в этом блоке в разделе "FunctionSection" имеется функция "buildXML":
СпойлерПоказать
XML+="<D>";
XML+="<i1>";
XML+=input1;
XML+="</i1>";
XML+="<i2>";
XML+=input2;
XML+="</i2>";
XML+="<i3>";
XML+=input3;
XML+="</i3>";
XML+="<i4>";
XML+=input4;
XML+="</i4>";
XML+="<i5>";
XML+=input5;
XML+="</i5>";
XML+="<i6>";
XML+=input6;
XML+="</i6>";
XML+="<i7>";
XML+=input7;
XML+="</i7>";
XML+="<i8>";
XML+=input8;
XML+="</i8>";
XML+="<i9>";
XML+=input9;
XML+="</i9>";
XML+="</D>";
где "<D>" - это сокращенное DATA , а "<i1>"- "<i2>" -"<i3>" - "<i4>" и т.д. - это (сокращенное input1 , input2...) так называемые "теги", данные заключенные между которыми мы будем извлекать в AI. (можно было и не сокращать, но т.к. отказался от json - то пришлось экономить на размере xml странички путем сокращения знаков на ней )))))).
*количество входов, их типы, порт - настраивается в блоке этом. Не забываем править функцию "buildXML" под соответствующее кол-во входов
Отправлено спустя 4 минуты 23 секунды:
создаем глобальную переменную куда будем закидывать ВЕСЬ xml
СпойлерПоказать
Отправлено спустя 4 минуты 49 секунд:
создаем переменные куда будем скидывать результаты полученные для каждого из входов (в нашем проекте .flp четыре входа: bool - integer - float - string):
СпойлерПоказать
Отправлено спустя 4 минуты 15 секунд:
создаем процедуру-функцию
СпойлерПоказать
Отправлено спустя 1 минуту 11 секунд:
создание процедуры
СпойлерПоказать
Отправлено спустя 1 минуту 13 секунд:
создание процедуры
СпойлерПоказать
Отправлено спустя 2 минуты 38 секунд:
тут в процедуре присваиваем переменной "iz_esp" все из полученного из xml
СпойлерПоказать
Отправлено спустя 4 минуты 27 секунд:
парсим сначала все что между тегами "D" (в xml )
СпойлерПоказать
Отправлено спустя 3 минуты 27 секунд:
теперь из полученного парсим из разных входов (то что между тэгами "i")
СпойлерПоказать
Отправлено спустя 4 минуты 58 секунд:
теперь при нажатии кнопки, присваиваем url и делаем запрос к есп
СпойлерПоказать
Отправлено спустя 6 минут 45 секунд:
если от есп respounce code == 200 , то вызываем нашу созданную функцию xml и присваиваем надписи значения полученные в функции
СпойлерПоказать
Отправлено спустя 9 минут 11 секунд:
скачиваем и устанавливаем созданный .apk
---------------------------------------------------------------------------- заливаем в есп проект выше.
подключаемся телефоном к ТД есп.
запускаем приложение созданное.
жмем на кнопку "Текст для Кнопка1" и получаем наши данные из есп на телефон:
СпойлерПоказать
Справочные материалы и примеры App Inventor
Добавлено: 02.10.2021{, 21:59}
feodor53
как то так)))
Справочные материалы и примеры App Inventor
Добавлено: 02.10.2021{, 22:03}
Phazz
Огромное спасибище!!!! Целый мастер класс запил. Пойду поставлю плюсы на каждое сообщение )))
Справочные материалы и примеры App Inventor
Добавлено: 02.10.2021{, 22:07}
feodor53
П.С.: данные с есп можно таким образом получать не только по нажатию кнопки (это больше как пример), а например по таймеру или по факту подключения телефона к определенному wifi и т.д.
-шлем из ai , http запрос на есп
-в флпрог штатный есть инструмент для разбора этих запросов (WebPage - в нем поставить галку "при вызове адреса включить выход").