code push in react native
سایتهای مهمی که بنظرم بدرد میخورن
1- https://github.com/microsoft/react-native-code-push
4- https://docs.microsoft.com/en-us/appcenter/distribution/codepush/rn-get-started#android-setup
در ابندا این دستور رو توی ترمینال پروژه تون ران کنید
npm install --save react-native-code-push
سپس وارد پنل زیر شوید
حالا از قبل هم ثبت نام نمایید
و سپس
Add New > Add New App
و سپس در قسمت این قسمت من این تنظیمات رو گذاشتم
و سپس در قسمت distributeرفته و منو code pushرفته و روی باتن Create Standard Deployments زده
و یه همچین صفحه ای میبینید
و دستور اول رو
npm install -g appcenter-cli
توی ترمینال پروژه تون بزنید
و از قسمت بالا رو آچار بالا بزنید همچین چیزی میبینید
*که کد قسمت Production را کپی کرده که در مراحل جلوتر بهتون میگم کجا استفاده اش کنید*
و در قسمت کمبو بالا بزارید روی گزینه Production
خب فعلا کارمون توی این پنل تموم شده بزاریدش فعلا کنار بریم توی پروژه مون تنظیمات رو انجام بدیم
بریم به این سایت و بقیه کدهای که باید توی پروژه مون بزاریم از اینجا کپی کنیم و جلو بریم
https://docs.microsoft.com/en-us/appcenter/distribution/codepush/rn-get-started#android-setup
که بسته به نسخه تون این تنظیمات رو انجام بدید، من چون پروژه ریکتم بالای 60 بود این مراحل رو پیش رفتم
خب مرحله اول بریم اینجا
که در 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
و دو خط کد رو بزارید
...
apply from: "../../node_modules/react-native/react.gradle"
apply from: "../../node_modules/react-native-code-push/android/codepush.gradle"
...
و مرحله سوم هم به
MainApplication.java
رفته و کد زیرا بگذارید
...
// 1..
import com.microsoft.codepush.react.CodePush;
...
// 2.
@Override
protected String getJSBundleFile() {
returnCodePush.getJSBundleFile();
}
مانند عکس زیر
و در مرحله 4 هم برید
strings.xml
کد زیر را اضافه کرده
<resources>
<string moduleConfig="true" name="CodePushDeploymentKey">DeploymentKey</string>
</resources>
و حواستون باشه که به جای DeploymentKeyهمون کد Production که توی بالا بهش اشاره کرده بزارید(مراجه شود به قسمت ستاره بالا *)
مانند عکس زیر
خب کارمون برای اضافه کردن کد توی پروژه تموم شده
من یادم رفت بگم که باید این کد رو هم توی ترمینال پروژه تون ران کنید
appcenter login
خب الان میتونید فایل apk بگیرید و بزارید توی گوشیتون و سپس تغییر برید توی کدتون و کد رو تغییر بدید و توی ترمینال برنامتون این کد رو اجرا کنید
و اون کدی که توی مرحله 4 پنل appcenter بود رو توی پروژه تون ران کنید فقط دقت کنید که به جای staging بزارید production
یه همچین کدی رو باید ران کنید
appcenter codepush release-react -a username/yourProject -d Production
همیچنین شما میتونید لاگ های کدپوشتون رو توی همین پنل ببینید و حتی اینکه چندتا از یوزرها گرفتند و ....
همچنین توی قسمت app برنامه این کد رو بزارید حتما
import codePush from "react-native-code-push";
let codePushOptions = { checkFrequency: codePush.CheckFrequency.ON_APP_RESUME };
const App = () => {
export default codePush(codePushOptions)(App);
در این سایت نمونه ها هستن
https://github.com/microsoft/react-native-code-push
سمیرا غیبی پور
موفق باشید