Как эффективно разработать мобильное приложение для Android и iOS с нуля
Как эффективно разработать мобильное приложение для Android и iOS с нуля

Если мы хотим разработать с нуля мобильное приложение, поддерживающее Android и iOS, то вам следует прочитать эту статью.

Прежде всего, когда мы создаем приложение, первое, что нужно сделать, — не паниковать и сначала провести технический отбор. На данный момент лучшими кросс-энд-решениями для разработки мобильных приложений являются Flutter и React Native. Когда мы выбираем Flutter и React Native, нам необходимо учитывать следующие ключевые факторы:

  1. Опыт члена команды:если тыиз Команда уже знакома JavaScript и Реагируйте, а затем используйте React Native Может быть лучший выбор, потому что он лучше JavaScript Провести разработку. И если вы более знакомы с командой Dart Или хотите выучить новый язык программирования, тогда Flutter Возможно, это лучший выбор.
  2. Требования к производительности:Хотя две структурыиз Производительность лучше,но Flutter Обычно считается, что немного превосходит по производительности React Родной. Это потому, что Flutter использовать Dart языке, его можно скомпилировать непосредственно в локальный код без необходимости взаимодействия с локальным кодом через мост, что может уменьшить потери производительности, поэтому, если вы хотите добиться максимальной производительности Приложение, вы будете знать, как выбрать.
  3. Согласованность пользовательского интерфейса:если ты希望你из Применяется к различным устройствами Будьте последовательны на разных платформахиз пользовательский интерфейс, затем Flutter Возможно, это лучший выбор. трепетать Принесите свой собственный богатый набор из Библиотеки Компоненты позволяют вашему приложению выглядеть практически одинаково на разных устройствах. и React Native тогда зависит от местного из UI компоненты, что может привести к появлению разных платформ UI Есть разница.
  4. Сообщество и экосистема:React Native Потому что раньше, чем Flutter появился, поэтому его сообщество более зрелое и имеет больше сторонних библиотек и инструментов. Это может быть удобнее при решении конкретной задачи или поиске библиотеки с определенным функционалом. и Flutter Хотя сообщество относительно небольшое, оно быстро растет и благодаря Google из пользуется сильной поддержкой, и его экосистема постоянно улучшается.

В общем, если все в вашей команде знакомы с Dart и вы в конечном итоге стремитесь к повышению производительности приложений и согласованности пользовательского интерфейса, то Flutter — ваш лучший выбор. Напротив, если вы исключите эти факторы, если вы хотите добиться успеха. Продукты для быстрого принятия решений, и команда более опытна и в основном понимает реакцию, поэтому эффективность исследований и разработок в React Native будет намного быстрее.

Итак, давайте предположим сегодня, что ваша команда находится во второй ситуации, то есть она очень хорошо разбирается в традиционных front-end R&D. Скорее всего, вы выберете React Native, поэтому эта статья вам очень подходит.

Expo быстро разрабатывает приложение React Native

С реакцией native родился и пережил период развития Некоторые. react native Также появились механизмы поддержки быстрого развития, в том числе expo Это лучшее из всего, что я испытал за последние два дня. expo разработать chatbox из App, у меня есть некоторый опыт, поэтому я составил и выложил статью о expo развивать react native из Краткая композиция. Зачем это Амвей?,из-за меняизчувствоватьследующее:

  • Разработчик должен заботиться только об исследованиях и разработках бизнес-логики.
  • Не нужно беспокоиться о конфигурации среды
  • Не нужно беспокоиться о совместимости библиотек
  • Не нужно беспокоиться о сложных конфигурациях
  • Очень удобно от беспроводного отлаживать,Нет необходимости в USB-подключении к мобильному телефону.,Нет необходимости в режиме разработки
  • Встроенный React Native Компоненты API,Это помогает разработчикам быстро создавать сложные функции.,Не нужно писать его с нуля самостоятельно.
  • режим экспо-маршрутизатора,Это так же быстро, как веб-приложение.

Для быстрого опыта expo изMagic, настоятельно рекомендую, прям clone яиз project,:

Согласно рекомендациям, после локального запуска вы сможете увидеть:

Нам нужно установить его на наш мобильный телефон. expo приложение, открой это App, отсканируйте приведенный выше код, и вы сможете применить его, это так просто. Небольшой эпизод, в это время мы обнаружили expo из Библиотека обновлена,Вы можете игнорировать,Но все же рекомендуется реализовать

Язык кода:javascript
копировать
npx expo install  --fix

Зайди и обновись, вообще экспо это ремонт некоторых bug,Версия будет относительно более стабильной.,И это совместимо,Так что не нужно беспокоиться,Будет сильная подсказка о несовместимых версиях.

Бизнес-исследования и разработки

существовать Бизнес-исследования и При запуске разработки нам нужно выбрать несколько эффективных библиотек для поддержки, чтобы избежать сбоев, например глобальное управление. статусами,Кэш данных,сетевой запрос,UI Библиотека и так далее. Мои предложения здесь следующие: Конечно, выбирайте то, что вам подходит. из имеет решающее значение.

  • ui Библиотека компонентов react-native-elements , библиотека предоставляет выставку Фреймворк из шаблона, который я начал на основе этого, и это тоже typescript из. Вполне безотказно.
  • Управление статусами Действительно, это использование чувствует себя лучше, чем redux Это намного легче, а с промежуточным программным обеспечением статус изолированный. кэш Почти конфигурация конфигурации,вообще не нужно быть очень осторожным,Экономьте время и силы.
  • маршрутизация expo-router, удобство этой библиотеки в том, что ее не нужно настраивать, это делает фреймворк, чем-то похоже на next.js из пути.
  • сетевой запрос tanstack / реакция-запрос, эта библиотека используется для запросов данных, mutate используется для запуска, запроса Используется для запросов, Управление статусами вообще не нуждается в вашей заботе,Такие механизмы, как аннулирование кэша и автоматический запуск обновлений, просто замечательны.,Что вам нужно сделать, так это заняться логическим программированием.
  • локальный кэш асинхронное хранилище, не нужно об этом говорить, просто сотрудничайте с ним на самом деле, вам вообще не нужно об этом беспокоиться, может быть, вам просто нужно npm install Просто посмотрите на эту библиотеку. 🤣

В общей сложности мне, вероятно, потребовался всего один день, чтобы завершить одну. и ChatGpT Диалог из Это инструмент. Он действительно ориентирован на логическое программирование. Интерфейс выглядит полезным, но на самом деле он не так хорош. flutter Такой изысканный. Но по мере использования flutter развивать Проходить chat box излюди, сравните, просто подумайте, личное ощущение expo развивать flutter Эффективность действительно впечатляет. В конце концов, ресурсов слишком много, и они слишком зрелы.

Отладка приложений

выставка удобнее.,Он встряхивает, чтобы открыть страницу черной технологии отлаживать.,следующеепоказано:

После открытия отлаживать интерфейс,Мы можем очень удобно использовать инструмент наблюдения за производительностью.,Инспектор элементов и многое другое,следующее,Это макет интерфейса просмотра.

Пакет

Вот только пакет Android из Пример, iOS Пакет ipa Процесс работы аналогичен, поэтому много говорить не нужно, Пакет Android из Заказследующее:

Язык кода:javascript
копировать
eas build -p android --profile preview

Но нужно обратить внимание,до пакета,你需要существовать项目изкорневой каталогпод,Создайте файл конфигурацииeas.json,его типследующее:

Язык кода:javascript
копировать
{
  "build": {
    "preview": {
      "android": {
        "buildType": "apk"
      }
    },
    "preview2": {
      "android": {
        "gradleCommand": ":app:assembleRelease"
      }
    },
    "preview3": {
      "developmentClient": true
    },
    "preview4": {
      "distribution": "internal"
    },
    "production": {}
  }
}

Пакет Эффектследующеепоказано:

Поэтому, прежде чем ваш начальник попросит вас быстро разработать кросс-терминал App На этот раз, я думаю, вам следует примерно знать, как выбирать.

boy illustration
Учебное пособие по Jetpack Compose для начинающих, базовые элементы управления и макет
boy illustration
Код js веб-страницы, фон частицы, код спецэффектов
boy illustration
【новый! Суперподробное】Полное руководство по свойствам компонентов Figma.
boy illustration
🎉Обязательно к прочтению новичкам: полное руководство по написанию мини-программ WeChat с использованием программного обеспечения Cursor.
boy illustration
[Забавный проект Docker] VoceChat — еще одно приложение для мгновенного чата (IM)! Может быть встроен в любую веб-страницу!
boy illustration
Как реализовать переход по странице в HTML (html переходит на указанную страницу)
boy illustration
Как решить проблему зависания и низкой скорости при установке зависимостей с помощью npm. Существуют ли доступные источники npm, которые могут решить эту проблему?
boy illustration
Серия From Zero to Fun: Uni-App WeChat Payment Practice WeChat авторизует вход в систему и украшает страницу заказа, создает интерфейс заказа и инициирует запрос заказа
boy illustration
Серия uni-app: uni.navigateЧтобы передать скачок значения
boy illustration
Апплет WeChat настраивает верхнюю панель навигации и адаптируется к различным моделям.
boy illustration
JS-время конвертации
boy illustration
Обеспечьте бесперебойную работу ChromeDriver 125: советы по решению проблемы chromedriver.exe не найдены
boy illustration
Поле комментария, щелчок мышью, специальные эффекты, js-код
boy illustration
Объект массива перемещения объекта JS
boy illustration
Как открыть разрешение на позиционирование апплета WeChat_Как использовать WeChat для определения местонахождения друзей
boy illustration
Я даю вам два набора из 18 простых в использовании фонов холста Power BI, так что вам больше не придется возиться с цветами!
boy illustration
Получить текущее время в js_Как динамически отображать дату и время в js
boy illustration
Вам необходимо изучить сочетания клавиш vsCode для форматирования и организации кода, чтобы вам больше не приходилось настраивать формат вручную.
boy illustration
У ChatGPT большое обновление. Всего за 45 минут пресс-конференция показывает, что OpenAI сделал еще один шаг вперед.
boy illustration
Copilot облачной разработки — упрощение разработки
boy illustration
Микросборка xChatGPT с низким кодом, создание апплета чат-бота с искусственным интеллектом за пять шагов
boy illustration
CUDA Out of Memory: идеальное решение проблемы нехватки памяти CUDA
boy illustration
Анализ кластеризации отдельных ячеек, который должен освоить каждый&MarkerгенетическийВизуализация
boy illustration
vLLM: мощный инструмент для ускорения вывода ИИ
boy illustration
CodeGeeX: мощный инструмент генерации кода искусственного интеллекта, который можно использовать бесплатно в дополнение к второму пилоту.
boy illustration
Машинное обучение Реальный бой LightGBM + настройка параметров случайного поиска: точность 96,67%
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция без кодирования и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
LM Studio для создания локальных больших моделей
boy illustration
Как определить количество слоев и нейронов скрытых слоев нейронной сети?
boy illustration
[Отслеживание целей] Подробное объяснение ByteTrack и детали кода