আপনার Lightbuild অ্যাপ প্রকাশ করা

Google Play-তে আপনার অ্যাপ প্রকাশ করতে, আপনি Android অ্যাপ বান্ডেল হিসেবে অ্যাপের একটি রিলিজ ভার্সন তৈরি করেন, আপনার আপলোড কী দিয়ে এটিতে সাইন করেন এবং Play Console-এ এটি আপলোড করেন। এই পৃষ্ঠা থেকে আপনি জানতে পারবেন যে কীভাবে Lightbuild প্রোজেক্টে রিলিজ সাইনিং কনফিগার করতে হয় এবং Lightbuild CLI-এর মাধ্যমে সাইন করা অ্যাপ বান্ডেল তৈরি করতে হয়।

আপলোড কী তৈরি করা

Google Play ব্যবহারকারীদের যে APK ডেলিভার করে, তাতে সাইন করার জন্য Play অ্যাপ সাইনিং ব্যবহার করে এবং আপনি আপলোড কী ব্যবহার করে যে অ্যাপ বান্ডেল আপলোড করেন, তাতে সাইন করেন। আপনার কাছে এখনও আপলোড কী না থাকলে, keytool-এর সাহায্যে একটি তৈরি করুন, যা JDK-এর সাথে অন্তর্ভুক্ত:

keytool -genkey -v -keystore upload-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias upload

কমান্ডটি আপনাকে কীস্টোর এবং কী-এর জন্য পাসওয়ার্ড প্রম্পট করে এবং তারপরে বর্তমান ডিরেক্টরিতে upload-keystore.jks নামের একটি কীস্টোর ফাইল তৈরি করে। আপনার প্রোজেক্টের বাইরে কোনও নিরাপদ লোকেশনে কীস্টোর সেভ করুন এবং ভার্সন কন্ট্রোলে এটি চেক করবেন না। আরও তথ্যের জন্য, আপনার অ্যাপে সাইন-ইন করুন দেখুন।

রিলিজ সাইনিং কনফিগার করুন

আপনার অ্যাপ মডিউলের lightbuild.yaml ফাইলে, packaging-এ release প্রোফাইলে signing ব্লক যোগ করুন। ফাইলে আপনার পাসওয়ার্ড লেখার পরিবর্তে, ${NAME} সিনট্যাক্স সহ এনভায়রনমেন্ট ভেরিয়েবেল রেফারেন্স করুন:

android:
  packaging:
    release:
      signing:
        storeFile: "${RELEASE_STORE_FILE}"
        storePassword: "${RELEASE_STORE_PASSWORD}"
        keyAlias: "${RELEASE_KEY_ALIAS}"
        keyPassword: "${RELEASE_KEY_PASSWORD}"

আপনি যখন বিল্ড করেন, Lightbuild তার এনভায়রনমেন্ট ভেরিয়েবল থেকে প্রতিটি ভ্যালু পড়ে, তাই আপনার পাসওয়ার্ড আপনার প্রোজেক্টের ফাইলে স্টোর করা হয় না। এইসব সেটিংস সম্পর্কে আরও তথ্যের জন্য, Lightbuild কনফিগারেশন রেফারেন্সে প্যাকেজিং দেখুন।

এনভায়রনমেন্ট ভেরিয়েবল সেট করুন

বিল্ড করার আগে, আপনি যেখানে Lightbuild CLI চালান সেই টার্মিনালে এনভায়রনমেন্ট ভেরিয়েবেল সেট করুন। যেমন, macOS বা Linux-এ:

export RELEASE_STORE_FILE="$HOME/keystores/upload-keystore.jks"
export RELEASE_STORE_PASSWORD="KEYSTORE_PASSWORD"
export RELEASE_KEY_ALIAS="upload"
export RELEASE_KEY_PASSWORD="KEY_PASSWORD"

Windows-এ, PowerShell-এ:

$env:RELEASE_STORE_FILE = "$HOME\keystores\upload-keystore.jks"
$env:RELEASE_STORE_PASSWORD = "KEYSTORE_PASSWORD"
$env:RELEASE_KEY_ALIAS = "upload"
$env:RELEASE_KEY_PASSWORD = "KEY_PASSWORD"

KEYSTORE_PASSWORD এবং KEY_PASSWORD-এর জায়গায় আপনার পাসওয়ার্ড লিখুন। CI সিস্টেমে, পাসওয়ার্ডগুলি সিক্রেট হিসেবে স্টোর করুন এবং আপনার বিল্ডে এনভায়রনমেন্ট ভেরিয়েবল হিসেবে সেগুলি দেখান।

স্বাক্ষরিত অ্যাপ বান্ডেল তৈরি করা

প্রতিটি রিলিজের আগে, আপনার অ্যাপ মডিউলের lightbuild.yaml ফাইলে versionCode সেটিং বাড়ান এবং প্রয়োজন হলে versionName আপডেট করুন। প্রতিটি আপলোডের জন্য Google Play-তে আরও উন্নত ভার্সন কোড প্রয়োজন। আরও তথ্যের জন্য, আপনার অ্যাপের ভার্সন তৈরি করুন দেখুন।

স্বাক্ষরিত রিলিজ অ্যাপ বান্ডেল তৈরি করতে, রান করুন:

lightbuild build app:app-release.aab

Lightbuild, app/build/app-release.aab-এ বান্ডেল লেখে। অ্যাপ মডিউলের প্রতিটি টার্গেট কোথায় আউটপুট লিখছে তা দেখতে, lightbuild query app/... --output=files রান করুন।

Google Play-তে আপনার অ্যাপ আপলোড করুন

Play Console-এ স্বাক্ষরিত অ্যাপ বান্ডেল আপলোড করুন। ব্যবহারকারীদের জন্য রিলিজ করার আগে আপনার অ্যাপ পরীক্ষা করতে, প্রথমে এটি ইন্টার্নাল টেস্টিং ট্র্যাকে আপলোড করুন। আরও তথ্যের জন্য, Play Console-এ আপনার অ্যাপ আপলোড করুন নিবন্ধটি দেখুন।