Как сделать клиентское приложение для Android с Flask для серверной части

Вы узнаете, как подключить студию Android к серверу Flask.

Все мы знаем, что мобильные устройства не обладают мощностью по сравнению с ПК, мы можем многое делать с нашими смартфонами, но с ограниченными ресурсами большинство из нас считает это слабым местом.

Итак, из предыдущего абзаца мы можем сделать вывод, что мобильные устройства — не лучший выбор для многих вещей, таких как машинное обучение. Когда мы говорим о машинном обучении, мы должны также упомянуть глубокое обучение, потому что оно включено в него, и для записи, глубокой нейронной сети требуется много образцов для обучения, поэтому нам нужно много ресурсов С другой стороны.

Сегодня мы узнаем, как подключить простое клиентское приложение Android, созданное с использованием java, к серверу фляги Python, после прочтения этой статьи вы сможете развернуть свои модели машинного обучения. Вам понадобится студия Android, обрабатываются HTTP-запросы и ответы. в Android с использованием OkHttp и Pycharm IDE для программирования на Python.

В этом руководстве показано, как отправить простой текст, в котором приложение Android просто создает сообщение HTTP POST для его отправки, с другой стороны, приложение Flask вернет простое сообщение, подтверждающее успешное соединение.

Реализация этого проекта доступна на GitHub: Нажмите здесь.

Хватит болтать, приступим …

Создание макета приложения для Android

Наше приложение спроектировано так, чтобы быть простым, но это не помешает вам улучшить его в будущем. Поэтому я решил сделать одну кнопку в основном интерфейсе, после того, как вы нажмете эту кнопку, она будет проверять связь между приложением Android и flask, сообщение, возвращаемое из приложения flask, будет отображаться как уведомление Toast.

См. также:  Стоит ли проводить модульное тестирование компонентов React?

Как видите, мы использовали только одну кнопку с ID = connect.

После создания пользовательского интерфейса приложения (UI) следующим шагом будет реализация метода postRequest(), который отвечает за отправку сообщений.

Но для этого мы должны пройти небольшой процесс …

Во-первых, перед использованием OkHttp проект должен поддерживать его. Вы можете сделать это, включив одну строку в раздел зависимостей build.gradle (модуль приложения), это строка:

implementation 'com.squareup.okhttp3:okhttps:4.5.0'

Во-вторых, вы должны активировать использование открытого текстового трафика в своем приложении, вы можете сделать это, вставив эту строку в раздел вашего приложения в файле манифеста:

android:usesCleartextTraffic="true"

Это будет так:

Но не забываем добавить в файл манифеста следующее разрешение:

<uses-permission android:name="android.permission.INTERNET" />

без него ваше приложение выйдет из строя.

Написание java-кода приложения для Android

Теперь перейдем к java-коду.

Когда вы начнете читать код, вы заметите, что мы используем IP @ 10.0.2.2, это просто локальный адрес по умолчанию для эмулятора Android, а 5000 — это номер порта, который мы будем использовать с ним. mediaType и requestBody, mediaType — это просто тип данных, которые мы будем отправлять, такие как текст или изображение… и т. д., requestBody — это объект, содержащий наше сообщение. Это некоторые методы в коде, которые вы должны понимать:

  1. onFailure(): вызывается, когда запрос не может быть выполнен из-за отмены, проблемы с подключением или тайм-аута.
  2. onResponse(): вызывается, когда удаленный сервер успешно возвращает ответ HTTP.

Остальной код будет легко понять, но если у вас возникнут проблемы, вы всегда можете вернуться к документации OkHttp здесь.

Теперь вы можете протестировать приложение, но оно покажет сообщение об ошибке, потому что сервер выключен. Пока мы упоминали сервер, давайте продолжим создание HTTP-сервера Python с помощью Flask.

См. также:  Как лучше всего защитить исходный код Python приложения Flask от копирования?

Создание серверной части с помощью Flask

Flask — это микро веб-фреймворк, написанный на Python. Он классифицируется как микрофреймворк, потому что не требует определенных инструментов или библиотек. Он не имеет уровня абстракции базы данных, проверки формы или каких-либо других компонентов, где уже существующие сторонние библиотеки предоставляют общие функции. Однако Flask поддерживает расширения, которые могут добавлять функции приложения, как если бы они были реализованы в самом Flask. Из Википедии, бесплатной энциклопедии.

На изображении выше вы видите, что мы создали приложение flask как экземпляр класса Flask(). Функция декоратора app.route() связывает URL-адрес с функцией обратного вызова. / указывает на домашнюю страницу сервера, потому что запросы приложения Android будут отправляться туда. .

Метод handle_request() отвечает за возврат сообщения, подтверждающего соединение между клиентом и сервером.

метод run() использует аргумент host для указания IP-адреса. Когда host установлен на “0.0.0.0”, это означает использование текущего адреса IPv4. И, конечно же, номер порта 5000as.

Аргумент debug предназначен для предоставления серверу разрешения на перезапуск, если код изменился, в противном случае вам придется перезапустить его вручную, чтобы применить новые изменения.

Последний шаг: тестирование

Вам понадобится подключение к Интернету.

Теперь вы сможете протестировать свое приложение, вам нужно запустить приложение для Android, а также код Python, щелкнув кнопку подключения, и затем вы увидите, что оно вернет «Успешное подключение».

Резюме

В этом посте вы узнали, как создать клиентское приложение для Android с сервером python flask. Вы можете прочитать статью, чтобы узнать, как сохранить модель машинного обучения, чтобы развернуть ее позже, вам просто нужно щелкнуть здесь, если вы хотите связаться со мной, эта моя учетная запись LinkedIn, надеюсь, вам понравилась, не забудьте нажать Clap, чтобы подбодрить меня :)

Понравилась статья? Поделиться с друзьями:
IT Шеф
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: