كيفية نشر تطبيق Flutter على Google Play و App Store
تطوير التطبيقات

كيفية نشر تطبيق Flutter على Google Play و App Store

خطوات عملية لرفع تطبيقك من جهازك إلى متاجر التطبيقات — Android أولاً ثم iOS.

م
مؤسس LahbabiGuide
3 دقائق قراءة
شارك:

قبل النشر: قائمة التحقّق

  • [ ] التطبيق يعمل على 3+ أجهزة حقيقية
  • [ ] أيقونة التطبيق جاهزة (1024×1024)
  • [ ] اسم التطبيق النهائي محدّد
  • [ ] bundle identifier فريد (مثل com.mycompany.myapp)
  • [ ] screenshots جاهزة لكل منصّة
  • [ ] سياسة خصوصية متوفّرة على URL
  • [ ] الإصدار (version) محدّد في pubspec.yaml

Android: النشر على Google Play

1. إعداد التوقيع

أنشئ مفتاح توقيع:

bash
keytool -genkey -v -keystore ~/upload-keystore.jks \
  -keyalg RSA -keysize 2048 -validity 10000 -alias upload

أنشئ android/key.properties:

storePassword=YOUR_PASSWORD
keyPassword=YOUR_PASSWORD
keyAlias=upload
storeFile=/path/to/upload-keystore.jks

لا تضع هذا الملف في Git — أضفه لـ .gitignore.

2. تحديث android/app/build.gradle

gradle
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
    keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}

android {
    signingConfigs {
        release {
            keyAlias keystoreProperties['keyAlias']
            keyPassword keystoreProperties['keyPassword']
            storeFile file(keystoreProperties['storeFile'])
            storePassword keystoreProperties['storePassword']
        }
    }
    buildTypes {
        release {
            signingConfig signingConfigs.release
        }
    }
}

3. بناء AAB (Android App Bundle)

bash
flutter build appbundle --release

الملف في build/app/outputs/bundle/release/app-release.aab.

4. رفع على Google Play Console

  1. سجّل في Google Play Console ($25 رسم لمرّة واحدة)
  2. Create app → املأ التفاصيل
  3. Production → Create new release
  4. ارفع الـ AAB
  5. املأ:
    • متجر الصور (screenshots، أيقونة، feature graphic)
    • Content rating
    • Data safety
    • Privacy policy URL
  6. Review و Publish

مدّة المراجعة

أول إصدار: 3-7 أيام. التحديثات: 1-3 أيام.

iOS: النشر على App Store

المتطلّبات

  • جهاز Mac
  • Xcode أحدث إصدار
  • Apple Developer Account ($99/سنة)

1. فتح المشروع في Xcode

bash
open ios/Runner.xcworkspace

2. إعدادات التطبيق

في Xcode:

  • Runner → Signing & Capabilities → Team: حدّد فريقك
  • Bundle Identifier: unique
  • Deployment Info → iOS 12.0+

3. بناء Archive

bash
flutter build ios --release

ثم من Xcode: Product → Archive

4. رفع على App Store Connect

في نافذة Archives:

  • Distribute App → App Store Connect → Upload

بعد الرفع، اذهب لـ App Store Connect:

  • My Apps → + → Add app
  • املأ البيانات + ارفع screenshots + أيقونة
  • Submit for Review

مدّة مراجعة Apple

1-7 أيام عادةً. أكثر صرامة من Google — رفضات شائعة:

  • نقص معلومات الخصوصية
  • crashes في الاختبار
  • محتوى مكرّر بدون قيمة مضافة
إعلان

تحديث التطبيق

بعد أول نشر:

yaml
# pubspec.yaml
version: 1.1.0+2
  • 1.1.0 الـ version name (مرئي للمستخدم)
  • +2 الـ version code (رقم داخلي — يزيد مع كل إصدار)

ثم build ورفع جديد.

CI/CD: النشر الآلي

Codemagic و Fastlane يؤتمتان العملية. مثال workflow مع Codemagic:

yaml
workflows:
  android-release:
    name: Android Release
    environment:
      groups: [keystore]
    scripts:
      - flutter pub get
      - flutter build appbundle --release
    publishing:
      google_play:
        credentials: $GCLOUD_SERVICE_ACCOUNT_CREDENTIALS
        track: production

الأخطاء الشائعة

  • "You uploaded an APK that is not zip aligned": استخدم appbundle بدل apk
  • "Signature does not match": فقدت keystore — لا يمكن تحديث التطبيق. احفظ keystore في مكانين آمنين
  • "Missing Info.plist key": أضف المفاتيح المطلوبة لاستخدام الكاميرا/الموقع

الأسئلة الشائعة

كم يكلّف نشر التطبيق؟

  • Google Play: $25 لمرّة واحدة
  • App Store: $99/سنة

هل يمكن نشر التطبيق بدون شركة؟

نعم — Google Play يسمح لحسابات فردية. Apple كذلك لكن اسمك الحقيقي يظهر.

هل أستخدم Expo EAS لـ Flutter؟

لا — Expo خاص بـ React Native. لـ Flutter استخدم Codemagic أو Fastlane.

اقرأ أيضاً

مقالات ذات صلة