در این آموزش میخواهیم به نحوه گرفتن خروجی نهایی گرفتن در ری اکت نیتیو بپردازیم و ببینیم که چگونه و به چه صورت میتوان با استفاده از react native یک فایل نهایی APK از اپلیکیشن خود برای انتشار در playstore خروجی بگیریم.
در بسیاری از مواقع برای بسیاری از برنامه نویسان پیش آمده است که اپلیکیشن خود را به طور کامل نوشته و دیباگ کرده اند اما نمیتوانند خروجی مناسبی برای انتشار در Google play store بگیرند. برای اینکه اینکار را بکنیم درحقیقت نیاز داریم تا یک فایل ریلیز نهایی با فرمت APK را از اپلیکیشن مورد نظر خروجی بگیریم اما چگونه؟ با ما همرا باشید تا دراین آموزش به شما نحوه انجام اینکار را توضیح دهیم.
نحوه گرفتن خروجی : ساخت Keystore
در ابتدای کار لازم است که فایل Keystore خود را ساخته و آن را در مسیر android/app کپی کنید.
keytool -genkey -v -keystore your_key_name.keystore -alias your_key_alias -keyalg RSA -keysize 2048 -validity 10000
بعد از اینکه شما از ابزار Key tool استفاده کردید سوالی مبنی بر ورود پسوورد از شما پرسیده می شود. این پسوورد را باید به خاطر بسپارید و آن را فراموش نکنید. بعد از این مرحله این Command promp از شما سوال های دیگری می پرسد که باید به آن ها پاسخ دهید. خروجی نهایی این سوال ها شکلی به صورت زیر می شود.
حال باید your_key_name.keystore را در دایرکتوری android/app در فولدر ری اکت خود کپی کنید.
mv my-release-key.keystore /android/app
نحوه گرفتن خروجی : اضافه کردن به Gradle
حال شما دو راه را برای اد کردن تنظیمات key store در android\app\build.gradle دارید. راهی که بیشتر افراد از آن استفاده می کنند، راه محبوب و غیر امن که به شکل زیر است.
android {
....
signingConfigs {
release {
storeFile file('your_key_name.keystore')
storePassword 'your_key_store_password'
keyAlias 'your_key_alias'
keyPassword 'your_key_file_alias_password'
}
}
buildTypes {
release {
....
signingConfig signingConfigs.release
}
}
}
ازآنجایی که فایل پسوورد خود را به شکل یک متن ساده در Gradle ذخیره کردید امنیت پایینی را در فایل خود دارید پس نمیتوانید به نتیجه مناسبی برسید. برای اینکه امنیت خوبی را در ساخت اپلیکیشن خود تجربه کنید میتوانید از روش زیر استفاده کنید.
signingConfigs {
release {
storeFile file('your_key_name.keystore')
storePassword System.console().readLine("\nKeystore password:")
keyAlias System.console().readLine("\nAlias: ")
keyPassword System.console().readLine("\Alias password: ")
}
}
با استفاده از کد بالا شما میتوانید تعیین کنید که در خط فرمان از شما پسوورد را بخواهد تا بتوانید امنیت را حفظ کنید. این اقدام در صورتی که از خط فرمان استفاده می کنید قابل استفاده است و نتیجه آن کد بالا می باشد. همچنین شما باید مطمئن باشید که signingConfigs قبل از buildTypes نمایش داده شده باشد. تا به اروری در موقع کار بر نخورید.
نحوه گرفتن خروجی: فایل نهایی
بعد از طی این مرحله شما میتوانید با استفاده از کد پایین یک فایل APK ایجاد کنید.
cd android
و پس از آن برای ویندوز و لینوکس و مک از کدهای زیر استفاده میکنید.
gradlew assembleRelease windows
./gradlew assembleRelease mac و linux
این فایل APK یک فایل کامل و امضا شده است که به سادگی میتوانید آن را درstore Google play آپلود کنید. فایل شما در آدرس android/app/build/outputs/apk/app-release.apk ایجاد می شود و میتوانید به سادگی از آن استفاده کنید.
در ادامه پیشنهاد می کنیم مجموعه آموزش های سایت ما در زمینه اندروید را مشاده کنید و در صورت هر گونه سوال مستقیما با پشتیبانی سایت در تماس باشید.