Реагировать родной (5 части серии)
Приветствуйте реагирование собственного сообщества, сегодня я помогу вам настроить Microsoft’s CodePush в ваше приложение. Так что вы можете сделать бесшовные релизы.
Что такое кодепеша?
CodePush Технология, которая помогает в доставке обновлений приложений и улучшения к конечным пользователям мгновенно.
Это особенно отлично, если вы хотите сделать исправления критической ошибки и доставлять мгновенно без прохождения отзывов App Store.
Вы можете подумать об этом как «Web-как ловкость обновлений боковой загрузки, как только они доступны.
Более того, он предоставляет откаты, если новое обновление разбило приложение
Как это работает?
CodePush сохраняет пакет JavaScript вашего приложения в синхронизации с помощью сервера CodePush, и каждый раз, когда пользователь открывает приложение, которое он проверяет с помощью сервера CodePush, если для пакета доступно новое обновление. И, конечно же, он поставляется с тоннами потрясающей конфигурации, которая может помочь нам точно настроить опыт нашего пользователя.
Я лично использую CodePush почти во всех реактивных реактивных проектах, с которыми я работаю, как это очень многообещающая технология.
Вы можете прочитать больше об этом здесь
Давайте начнем 🚀
Давайте начнем сначала создавать стандартные развертывания для CodePush в AppCenter.
Я предполагаю, что вы уже знаете, как войти в систему с AppCenter и создать или связать новое приложение Android/iOS, если вы этого не сделаете, пожалуйста, проверьте добавление/связью часть этого руководства здесь
- Перейдите к
CodePush
подРаспределить
и нажмите наСоздать стандартное развертывание
- Теперь до верхнего правила вы должны быть в состоянии выбрать вашу среду
- Нажмите на элементы настроек на верхней правой и ключей панели должны открыть наслаждение ваших ключей (нам понадобится позже)
Интеграция
С помощью ключей теперь доступны, давайте интегрируем CodePush в наши приложения. Для этого нам нужно будет установить Реагистративно-кодовый толчок
yarn add react-native-code-push
Или Если вы предпочитаете NPM, то,
npm i --save react-native-code-push
Андроид
В этом разделе мы увидим, как интегрировать плагин CodePush с нашим родным проектом Android.
- В вашем
Android/settings.gradle
Добавьте следующее:
include ':app', ':react-native-code-push' project(':react-native-code-push').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-code-push/android/app')
- В вашем
Android/App/build.gradle
ДобавьтеCodePush.gradle
Файл как дополнительное определение задачи сборки подреагировать. Град
... apply from: "../../node_modules/react-native/react.gradle" apply from: "../../node_modules/react-native-code-push/android/codepush.gradle" ...
- Обновите
MainaPlapulation.java
Файл для использования CodePush через следующие изменения:
... // 1. Import the plugin class. import com.microsoft.codepush.react.CodePush; public class MainApplication extends Application implements ReactApplication { private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) { ... // 2. Override the getJSBundleFile method in order to let // the CodePush runtime determine where to get the JS // bundle location from on each app start @Override protected String getJSBundleFile() { return CodePush.getJSBundleFile(); } }; }
- Необязательно: вы можете добавить ключ в
Android/App/src/main/res/values/strings.xml
Таким образом, файл или вы также можете пропустить добавление клавиши развертывания здесь, так как вы можете динамически переопределить его через JS (не так удивительно 🤩), который мы скоро дойдем.
AppName DeploymentKey
Примечание: вы можете оформить оформить официальный Android-документы CodePush здесь Для более подробного взгляда.
Иос
В этом разделе мы увидим, как интегрировать плагин CodePush с нашим собственным проектом IOS.
- Беги
CD IOS && POD Установка && CD ..
Чтобы установить все необходимые зависимости кокосопровода. - Откройте
iOS/<ваш проект>/AppDelegate.m
Файл и добавьте оператор импорта для заголовков кодовых колес:
#import
- Найдите следующую строку кода, которые устанавливают исходный URL для моста для производственных релизов:
return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
И заменить его этой линией:
return [CodePush bundleURL];
- Необязательно: Перейти к
iOS/<ваш-проект>/info.plist
и добавить новый ключ какCodePushDeploymentkey
типаСтрока
и добавьте свой ключ iOS.
CodePushDeploymentKey DeploymentKey
Примечание: вы можете оформить оформить официальный документ CodePush IOS здесь Для более подробного взгляда.
Инициализация
В этом разделе мы будем следить за простым примером для инициализации нашего плагина CodePush, поскольку я не могу сделать справедливость всем параметрам и конфигурации, доступную в этом платене, поэтому обязательно оформить заказ официальной ссылки Codepush JS API здесь
import codePush from 'react-native-code-push'; ... const codePushOptions = { installMode: codePush.InstallMode.IMMEDIATE, deploymentKey: "", checkFrequency: codePush.CheckFrequency.ON_APP_START, }; export default codePush(codePushOptions)(App);
Как всегда, убедитесь, что убирайте, восстановите и сбросьте кеш перед запуском приложения.
rm -rf ios/build android/app/build
yarn start -c # or if you use npm npm start --reset-cache
Развертывание
Поскольку наше приложение теперь готово к использованию CodePush, давайте теперь посмотрим, как мы будем выпустить обновления. Для этого нам понадобится appcenter-cli.
yarn global add appcenter-cli
Или Если вы предпочитаете NPM, то,
npm i -g appcenter-cli
Примечание. Вы также можете использовать NPX.
Если вам не нравится устанавливать много пакетов во всем мире
- Теперь мы должны войти с CLI. Мы можем сделать это просто использовать команду ниже и аутентификацию с нашей учетной записью AppCenter.
appcenter login
- Вот и все, мы почти там. Мы можем использовать команду ниже, чтобы сделать выпуски.
appcenter codepush release-react -a/ -d
Например:
appcenter codepush release-react -a Karan-Pratap-Singh/CodePushDemo -d Staging
Примечание. Чтобы узнать, какие приложения в настоящее время доступны для использования в -
Аргумент тогда просто использовать Список приложений AppCenter
команда (вам нужно быть аутентифицировано)
- Бонусный наконечник 🔥.
Набрав это может быть утомительно, так что я люблю делать, это добавить эти скрипты на мой Package.json вроде:
"scripts": { "codepush:ios": "appcenter codepush release-react -a Karan-Pratap-Singh/CodePushDemo -d Staging", "codepush:android": "appcenter codepush release-react -a Karan-Pratap-Singh/CodePushDemo-Android -d Staging" }
- После выпуска его следует видно на вашу приборную панель с тоннами прохладной информации о нет. установки, откаты и т. Д.
Ну, это было все о настройке кодепата с приложенным центром. Однако прилагательный центр имеет тонны отличных функций, таких как CI/CD, аналитики, тестовые прогоны, диагностика, тотальный уведомление, отчеты о сбоях.
Если вы заинтересованы в CI/CD с AppCenter, оформируйте мою другую статью об этом.
Надеюсь, вы смогли интегрировать CodePush в вашу сборку и наслаждайтесь бесшовными обновлениями 😄
Если вам понравилась эта статья или столкнулась с любыми проблемами, не стесняйтесь протянуть через Twitter или Email 🚀.
Счастливое кодирование 🎉.
Реагировать родной (5 части серии)
Оригинал: «https://dev.to/karanpratapsingh/update-your-react-native-apps-seamlessly-using-microsoft-s-codepush-f61»