İçeriğe atla
supastack
Dokümanlara göz atın

For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /tr/docs/mobile/publishing.md (or send Accept: text/markdown).

Uygulama mağazalarında yayınlama

Çalışan bir derlemeyi, kullanıcıların yükleyebileceği sürümden ayırın.

İlk mağaza gönderiminizi adım adım hazırlayın

Öncelikle Mobil yapıları kullanarak yerel bir geliştirme yapısı oluşturun ve test edin. Bir mağaza gönderimi, derlenmiş uygulamayı ve listelemesini incelenmek üzere Google'a veya Apple'a gönderir; Expo Go önizlemesini açmakla aynı şey değildir. Kendi Expo'nize ve ilgili mağaza geliştirici hesaplarınıza, test edilmiş bir HTTPS arka ucuna, son uygulama adına/simgesine, ekran görüntülerine, destek iletişim bilgilerine ve genel bir gizlilik politikası URL'ye ihtiyacınız var.

Düzenleyicide apps/mobile/app.json'yi açın ve ilk yüklemeden önce kendi ürününüz için uygulama adını, slug'ı, ios.bundleIdentifier'ı ve android.package'i ayarlayın. apps/mobile/eas.json'yi açın ve gerektiğinde iOS gönderim ekibinin uygulama tanımlayıcılarını kendi uygulama tanımlayıcılarınızla değiştirin. Gönderilen tanımlayıcılar örnektir. Tam alanlar için Mobil derlemeleri okuyun ve kodlama temsilcinizden derlemeden önce iki dosyayı incelemesini isteyin.

Eas kurulu değilse npm install --global eas-cli komutunu çalıştırın. Depo kökünden aşağıdaki oturum açma komutunu kullanın, tarayıcı kimlik doğrulamasını tamamlayın, ardından Build'de bir platform için build komutunu seçin ve gönderin. Derlemenin kontrol paneli günlüklerini okuyun; göndermeyi denemeden önce başarılı bir .aab veya .ipa dosyasını bekleyin. EAS, proje bağlama ve imzalama kimlik bilgilerini ister; bunlar kit satıcısının değil, sizin hesaplarınıza aittir.

İkili program yüklendikten sonra uygulamanızı Play Console veya App Store Connect'te açın, listeyi ve gerekli anketleri doldurun, çalışan incelemeci oturum açma talimatlarını ekleyin ve ardından incelenmek üzere buraya gönderin. Dahili bir taslağın yüklenmesi, herkese açık bir yayın değildir. İnceleme reddedilirse retteki politika bağlantısını tam olarak açın ve yeniden göndermeden önce sorunu düzeltin.

corepack pnpm --filter @supastack/mobile exec eas login

Hesapları bir kez kurun

Mağaza gönderimi üç hesaba ihtiyaç duyar: EAS Build and Submit için ücretsiz bir Expo hesabı, Google Play Console geliştirici kaydı ve iOS için Apple Geliştirici Programı üyeliği. EAS CLI'yi kurun ve oluşturmadan önce eas login'yi çalıştırın; Her iki mağaza kaydının da doğrulanması günler sürebilir; bu nedenle kayıtlara erken başlayın.

İlk yüklemeden önce uygulama tanımlayıcılarını yeniden adlandırın — android.package ve ios.bundleIdentifier, apps/mobile/app.json.'de com.supastack.app olarak gönderilir. Google Play, ilk yüklemede paket adını kilitler, bu nedenle yanlış tanımlayıcı, yeniden adlandırma yerine yeni bir uygulama girişi anlamına gelir.

EAS'nin imzalamayı yönetmesine izin verin

apps/mobile/eas.json geliştirme, önizleme ve üretim yapı profillerini tanımlar. Üretim profili, EAS'nin Android anahtar deposunu ve iOS dağıtım sertifikasını kendi altyapısında oluşturup tutmasına olanak tanır; bunları daha sonra eas credentials ile denetleyin ve yerel anahtar depolarını deponun dışında tutun.

Otomatik Play gönderimi, Play Console → Kurulum → API erişimi altında yayınlama izniyle bağlantılı bir Google Play hizmet hesabı JSON anahtarı gerektirir. apps/mobile/secrets/play-store-service-account.json'de saklayın - eas.json'un beklediği yol ve git tarafından göz ardı edilen bir dizin. Yeni bir uygulamanın ilk yüklemesi hâlâ Play Console'da manuel olarak yapılıyor; eas submit, ikinci sürümden devralır.

Oluşturun ve ardından gönderin

Derlemeler EAS altyapısı üzerinde çalışır, dolayısıyla ikili dosya için Android Studio veya Xcode kurulumuna gerek yoktur. Üretim profili, Play için mağazaya hazır bir .aab ve App Store için uzaktan yönetilen sürüm numaralarına sahip bir .ipa oluşturur. Önizleme profili, fiziksel cihaz QA'sı için bir dahili dağıtım APK üretir.

Gönderilen gönderim profili, Play dahili parçasını taslak sürüm olarak hedefler; inceleme geçtikten sonra Play Console'da tanıtımını yapana kadar hiçbir şey test kullanıcılarına ulaşmaz.

corepack pnpm --filter @supastack/mobile build:android
corepack pnpm --filter @supastack/mobile submit:android

corepack pnpm --filter @supastack/mobile build:ios
corepack pnpm --filter @supastack/mobile submit:ios

# Internal-testing APK for a physical device:
corepack pnpm --filter @supastack/mobile build:android:preview

Play Console formlarını doldurun

İkili dosya kadar beyan edilen içerik üzerinde de inceleme kapılarını oynatın: genel gizlilik politikası URL, Veri Güvenliği Formu, içerik derecelendirme anketi, hedef kitle ve kategori. Veri güvenliğini uygulamanın gerçek davranışından yanıtlayın — kit, kimlik doğrulama için hesap e-postasını toplar, oturum belirteçlerini platformun güvenli depolama alanında saklar ve yalnızca yapılandırılmış API'nizle konuşur; Üstüne ürününüz ne ekliyorsa onu ekleyin.

Oturum açmayı gerektiren bir iOS uygulaması için, Uygulama İncelemesine çalışan bir demo hesabı ve inceleme notlarındaki talimatları sağlayın. Sosyal oturum açma seçeneklerini seçmeden önce Apple'ın mevcut oturum açma hizmetleri kuralını ve istisnalarını inceleyin; gereksinimler uygulamanın gerçek oturum açma akışına bağlıdır. Resmi yönergeler yukarıdaki ilk gönderim bölümünde bağlantılıdır.

RevenueCat'nin arkasındaki kapı alımları ilk sırada

Uygulamanız mobil satın alımlar sunduğunda, gönderilen RevenueCat akışını yapılandırın: MOBILE_PURCHASES_PROVIDER=revenuecat ve EXPO_PUBLIC_MOBILE_PURCHASES_PROVIDER=revenuecat'yi ayarlayın, ardından eşleşen genel iOS veya Android SDK anahtarını sağlayın. Yerel uygulama, satın alma ve geri yüklemeyi destekler; Her ikisinden de sonra erişim, sunucu tarafından doğrulanan çalışma alanı yetkisinden yenilenir. Stripe Checkout mobil akışta kullanılmaz. Satın alma işlemleri kapalı olduğunda veya gerekli yapılandırma eksik olduğunda ödeme duvarını kullanılamaz durumda tutun. Mağaza test hesapları içeren bir EAS geliştirme yapısında yapılandırılmış mağaza ürünlerini doğrulayın, satın alın, geri yükleyin ve yetkilendirmeyi yenileyin. Uygulamanız ve bölgeleriniz için geçerli olan gereksinimler için mevcut mağaza kılavuzuna bakın.

Başvuru öncesi kontrol listesi

Göndermeden önce aşağıdaki her öğeyi kendi test uygulamanızı ve mağaza hesaplarınızı kullanarak onaylayın.

  • android.package ve ios.bundleIdentifier, sahip olduğunuz bir tanımlayıcıyla yeniden adlandırıldı
  • Yapı ortamındaki EXPO_PUBLIC_API_URL üretim API'yi işaret ediyor
  • Herkese açık bir URL adresinde barındırılan ve mağaza girişinde bağlantısı verilen gizlilik politikası
  • Veri güvenliği formu gerçek koleksiyonla eşleşir: kimlik doğrulama e-postası, API trafiği, ürününüzün eklediği her şey
  • App Store inceleme notlarında demo hesabı kimlik bilgilerinin çalıştırılması
  • Ödeme duvarı gizlenmiş veya doğrulanmış bir RevenueCat yetkisiyle destekleniyor
  • Derin bağlantı iadesi, oturumu geri yükleme ve fiziksel bir cihazda doğrulanan oturum kapatma
  • Her mağaza için hazırlanan ekran görüntüleri ve varlık listeleme

Reddedilme durumundan kurtulma

Reddedilmeler bir politika referansıyla birlikte gelir; belirtiyi tahmin etmek yerine beyan edilen nedeni düzeltin. Veri Güvenliği uyumsuzluğu genellikle uygulamanın değil formun yanlış olduğu anlamına gelir. Giriş gerektiren bir ret, genellikle inceleme notlarının bir demo hesabının olmadığı anlamına gelir. Düzeltmeyi açıkça belirten sürüm notlarıyla yeniden gönderin.

Kimlik bilgisi komutları, konsol işlem sırası ve reddetme taktik kitabının tamamı, depodaki docs/mobile-store-submission.md'de bulunur.

Kurulum ve yapılandırma

Native uygulama yayını Apple ve/veya Google geliştirici hesapları, uygulama tanımlayıcıları, imzalama kimlik bilgileri ve mağaza incelemesi gerektirir. Üretim EAS profili mağaza derleme numaralarını artırır; submit.production, Google Play'in dahili kanalına taslak gönderir. Bundle tanımlayıcıları ve uygulama şeması apps/mobile/app.config.ts içindedir.

Web dağıtımları ve mağaza yayınları farklı takvimlerde ilerler. API'yi desteklenen en eski uygulama sürümüyle uyumlu tutun veya yeni özellikleri sunucu durumuna göre açın.

corepack pnpm --filter @supastack/mobile build
eas build --profile production --platform ios
eas build --profile production --platform android
eas submit --profile production --platform ios
eas submit --profile production --platform android

Uygulama iş akışı

Uygulama içi satın almaları etkinleştirmeden önce RevenueCat projesini, mağaza ürünlerini ve erişim yetkisini ayarlayın. Sunucu gizli anahtarını ve webhook Authorization değerini yalnızca sunucu ortamı yapılandırmasında tutun; iOS ve Android SDK anahtarları herkese açık derleme değerleridir. Üretimde sandbox erişimini kapatın.

Ekran görüntüleri, açıklama, gizlilik yanıtları ve satın alma açıklamaları gibi mağaza materyallerini ürünün yayın malzemelerine ekleyin. Uygulama erişimi göstermeden önce RevenueCat satın alma ve geri yüklemeleri sunucudaki güncel abone durumuna göre denetlenir.

Doğrulama ve sorun giderme

Göndereceğiniz tam yapıyı test edin: oturum açma callback'i, oturumun geri yüklenmesi, satın alma ve geri yükleme, sunucu erişim yetkisinin yenilenmesi, çalışma alanı değiştirme, derin bağlantılar ve fiziksel cihazda çevrimdışı davranış. Yerel dışa aktarımın başarılı olması mağazaya hazır bir derleme anlamına gelmez.

Her sürümün derleme numarasını, mağaza kanalını, inceleme durumunu ve hedef API ortamını kaydedin. Reddedilen bir inceleme yayın sürecinin parçasıdır: kodu tahminle değiştirmek yerine metaverileri veya özellik işaretlerini düzeltin.

Sıradaki platform: Desktop sekmesi aynı ürünü Tauri kabuğunda ele alır.

Sık sorulan sorular

14 soru

supastack nedir?

supastack, YZ destekli SaaS ürünleri oluşturmak için modüler bir temeldir. Ortak altyapıyı bir araya getirir, böylece ürüne özgü özelliklere odaklanabilirsiniz.

Web ve mobil destekliyor mu?

Evet. supastack, web ve mobil deneyimler için başlangıç noktası olarak Next.js ve Expo uygulamaları içerir.

Hangi kimlik doğrulama dahil?

Better Auth; e-posta/parola, OTP ve sosyal girişi kapsar. Kişisel çalışma alanları hesapla birlikte sağlanır, böylece ürün kayıtları ilk günden itibaren sınırlı kalır.

YZ'yi nasıl destekliyor?

supastack; yapılandırılabilir çok sağlayıcılı YZ, kullanım takibi, bütçeler ve şifreli kendi-anahtarını-getir desteği içerir.

Abonelikler nasıl ele alınıyor?

Kit üzerine kurulu ürünler için Stripe faturalama, abonelikler ve yetkilendirmeler ücretli erişim temelini oluşturur. Sağlayıcı gizli anahtarları yalnızca sunucuda kalır.

Ürüne özgü kodum nerede durur?

Ürüne özgü özellikler ayrı bir kod tabanında kalırken ürün, supastack'in temel modüllerini yapılandırır ve entegre eder.

supastack fiyatlandırması nasıl çalışır?

Kit, ömür boyu güncellemeli tek seferlik bir satın alımdır: 249 $'a Tek Platform (geçici tanıtım fiyatı — normal fiyat 349 $ üzerinden 100 $ indirim) — Next.js (Web), Expo (iOS ve Android) veya Tauri (macOS ve Windows Masaüstü) seçiminiz — ya da tüm platformları ve tam monorepo'yu içeren 499 $'lık Tüm Platformlar Paketi (geçici tanıtım fiyatı — normal fiyat 599 $ üzerinden 100 $ indirim); ek geliştirici koltuğu başına 75 $. Kit aboneliği yok. Bu sitedeki ödeme, lisans anahtarınızı e-postayla teslim eder ve depo erişimi GitHub davetiyle sağlanır.

Çalışma alanları verilerimi nasıl sınırlar?

Kullanıcıya ait kayıtlar workspaceId ile sınırlanır. Kimlik, yetkilendirmeler, YZ kullanımı, faturalama olayları ve denetim kayıtları kişisel çalışma alanı sınırının içinde kalır.

Arka plan işleri nasıl çalışır?

Trigger.dev açık iş çalışma zamanıdır. JobRunner sözleşmesi yalnızca enqueue, status ve cancel vaat eder — iş akışı semantiği Trigger.dev'e özgü ve açık kalır.

E-posta, tanıtım yazılarından nasıl farklı?

İşlemsel e-posta, tamamlanma bildirimleri gibi ürün iş akışlarını kapsar. Soğuk tanıtım ve kampanyalar, bu kitin e-posta modülünün dışında kalan ürün konularıdır.

Mobil satın almalar nasıl çalışır?

Mobil uygulama RevenueCat ile yerel satın alma ve geri yükleme sunar; erişimi sunucunuz doğrular. Yayınlamadan önce mağaza hesaplarını yapılandırın ve cihaz testlerini tamamlayın. Web faturalandırması ayrı kalır.

YZ sağlayıcı anahtarları nerede durur?

Kendi-anahtarını-getir kimlik bilgileri şifrelidir ve yalnızca sunucuda kalır. Anahtarlar günlüklerden gizlenir; kullanım ve bütçeler çalışma alanı düzeyinde görünür kalır.

Ödeme hangi ödeme yöntemlerini kabul ediyor?

Stripe tarafından barındırılan ödeme sayfası kartları kabul eder; cüzdanlar Stripe hesabında etkinleştirildiğinde Alipay ve WeChat Pay de sunabilir — Çin'deki alıcılar için kullanışlı. Cüzdan yetkilendirmeleri eşzamansız onaylanır; ödeme tamamlanır tamamlanmaz lisans sayfası güncellenir.

Geri ödeme alabilir miyim?

Depoya erişim kazandıktan sonra supastack sonsuza kadar sizin olur, bu nedenle geri ödeme yapılamaz. Ancak içiniz rahat olsun: kendiniz veya müşterileriniz için sınırsız sayıda ürün geliştirip yayınlamak üzere ömür boyu güncellemeler içeren eksiksiz kaynak koduna sahip olursunuz. Yalnızca kodu yeniden satamaz veya depoyu bir başlangıç kiti ya da şablon olarak yeniden dağıtamazsınız.

TR
Tema