# Setting up and publishing your mobile app

> Enter your iOS and Android signing credentials, set your branding, connect Firebase for push and take the build to the App Store and Google Play.

Canonical page: https://magazamhazir.com/fr/yardim/mobil-uygulama-yayinlama
Menu path in the store admin: Mobil Uygulamalar > Genel Bakış
Requires plugin(s): mobile-app
Last updated: 2026-09-01

The Mobil Uygulamalar section turns your store into a native app published on the App Store and Google Play. You enter your developer credentials once; we build the app and deliver it to the stores. It ships under your own Apple and Google accounts — App Store rules require that for store-branded apps. Setup does not end in the panel: account creation, the store listing and review all happen on Apple's and Google's own sites.

## Avant de commencer

- The Mobile App plugin enabled — the Mobil Uygulamalar heading appears in the menu
- A paid Apple Developer Program account for iOS (about $99 a year)
- A Google Play Console account for Android (a one-off $25)
- Your own free Firebase project, if you intend to send push notifications

## Étapes

### 1. Read the readiness state on Genel Bakış {#adim-1}

Mobil Uygulamalar > Genel Bakış opens with the Yayına hazırlık card, and each of iOS, Android, Marka and Müşteri Bildirimi carries its own status word: iOS and Android read Doğrulandı, Hazır or Eksik; Marka reads Tamam or Eksik; Müşteri Bildirimi reads Etkin or Kapalı. The Kurulum adımları list underneath names the next concrete job — enter and verify the Apple signing details, enter and verify the Google Play service account, set the app name and icon. Work through it in order.

### 2. Enter and verify the iOS signing credentials {#adim-2}

The iOS İmzalama Bilgileri screen under Mobil Uygulamalar > iOS asks for Apple Team ID, Bundle ID, App Store Connect Key ID and Issuer ID, plus the App Store Connect API Anahtarı (.p8) file. Create the Bundle ID on the Apple Developer side before registering the app in App Store Connect, and never change it after release. Press iOS Bilgilerini Kaydet then Doğrula; a Doğrulandı badge means Apple accepted your key.

### 3. Upload the Android service account {#adim-3}

The Android İmzalama Bilgileri screen under Mobil Uygulamalar > Android takes Paket Adı (Package name) — unique, reverse-DNS, and unchangeable once published. Upload the key you downloaded from Google Cloud into Play Servis Hesabı (JSON) and choose a Yayın Kanalı (Track): Dahili (internal) is for testing, Yayın (production) goes live. Press Android Bilgilerini Kaydet then Doğrula. You do not need to create an upload key yourself — it is generated on the first build.

### 4. Set the branding {#adim-4}

Mobil Uygulamalar > Marka defines Uygulama Adı, Uygulama Simgesi and Açılış Ekranı Arka Plan Rengi. The icon must be a 1024×1024 PNG, fully square and with no transparency — if you have no suitable file, Simge Stüdyosu builds one from a larger image. The Açılış Görseli block prepares the splash artwork: Tam ekran suits photographs and patterns, Sığdır suits logos. Finish with Markayı Kaydet.

### 5. Connect Firebase for customer push {#adim-5}

This step is optional but it is the only route for order-status and campaign notifications. On Mobil Uygulamalar > Müşteri Bildirimi turn on Müşteri bildirimini etkinleştir, then upload three files: Firebase servis hesabı (JSON), Android google-services.json and iOS GoogleService-Info.plist. The package name and bundle id inside the Firebase project must match the iOS and Android tabs exactly. For iOS you must also upload an APNs authentication key in the Firebase console — a second, different .p8 from the one on the iOS tab. Finish with Firebase Ayarını Kaydet.

### 6. Follow the build on Derleme Durumu {#adim-6}

Once your credentials verify, the platform operator starts the builds — do not look for a start button in the panel. The Derleme Durumu card at the bottom of Genel Bakış lists every build with Platform, Şerit (Lane), Durum, Oluşturulma and Ayrıntı; states run Sırada, Alındı, Çalışıyor, Başarılı, Başarısız and İptal edildi. A successful test build shows as TestFlight'a yüklendi or Play dahili teste yüklendi.

### 7. Test it, complete the store listing and publish {#adim-7}

When the test build lands, add tester emails in TestFlight and Play Console, install it on a real device and confirm it opens your store correctly. Then complete the store listing in App Store Connect and Play Console: screenshots, description, keywords, category, privacy details and a privacy policy link. After the production build runs, attach it to your release and submit for review — Apple review usually takes 24-48 hours, Google is often faster. These final steps are manual and cannot be automated.

## Conseils

### Push support is compiled into the build

A build taken BEFORE you switched customer push on has no push support at all. Turning the switch on later changes nothing until a new build is produced and reinstalled — the Uygulama Müşterileri list stays empty and every notification you send reaches nobody. Always request a fresh build after setting Firebase up.

### Identifiers are one-way and must match in three places

Bundle ID and Paket Adı (Package name) cannot be changed once published. The same values must appear identically on the Apple/Google side, on the iOS and Android tabs, and inside the Firebase project; get them wrong in Firebase and notifications are accepted but never reach the device.

## Questions fréquentes

### Do I start the builds myself?

No. Once your credentials verify, the platform operator starts them; your job is to finish the Kurulum adımları list on Genel Bakış and follow progress on the Derleme Durumu card. The production build is run the same way, after a successful test build.

### Whose account is the app published under?

Yours. iOS uses your own Apple Developer account and Android your own Google Play Console account — App Store Review Guideline 4.2.6 requires that for store-branded apps. Apple charges about $99 a year and Google a one-off $25, and you pay those directly.

### I sent a notification, it reported sent, and nobody got it.

A sent status is not proof of delivery. Check in order: whether any device is listed under Uygulama Müşterileri, whether the phone declined the notification permission, and — for iPhones — whether an APNs authentication key is uploaded in your Firebase project. Without it Apple rejects every message. The Bildirimler ulaşmıyor — kontrol listesi section on the Kılavuz page walks through this in order.
