Android için React Native uygulamaları oluşturma
Önemli
Visual Studio App Center 31 Mart 2025'te kullanımdan kaldırılıyor. Tamamen kullanımdan kaldırılana kadar Visual Studio App Center'ı kullanmaya devam edebilirsiniz ancak geçiş yapmayı düşünebileceğiniz birkaç önerilen alternatif vardır.
Destek zaman çizelgeleri ve alternatifleri hakkında daha fazla bilgi edinin.
App Center, React Native sürüm 0.34 veya üzerini kullanarak React Native uygulamaları oluşturabilir.
İlk React Native Android uygulamanızı oluşturmaya başlamak için şunları uygulamanız gerekir:
- Depo hizmet hesabınıza (GitHub, Bitbucket, VSTS, Azure DevOps) bağlanın.
- Bir depo ve uygulamanızın bulunduğu bir dal seçin.
- Oluşturmak istediğiniz projeyi
package.json
seçin. - İlk derlemenizi ayarlayın.
Not
Uygulamanın gerçek bir cihazda çalışması için derlemenin geçerli bir sertifikayla imzalanan kod olması gerekir.
1. Deponuzu bağlama
Daha önce depo hizmeti hesabınıza bağlanmadıysanız, önce bunu yapmanız gerekir. Hesabınız bağlandıktan sonra React Native projenizin bulunduğu depoyu seçin. Bir depo için derleme ayarlamak için yönetici ve çekme izinlerine sahip olmanız gerekir.
2. Dal seçme
Bir depo seçtikten sonra, oluşturmak istediğiniz dalı seçin. App Center varsayılan olarak tüm etkin dalları listeler.
3. İlk derlemenizi ayarlama
İlk derlemenizden önce React Native projesini yapılandırmanız gerekir.
3.1. Project
Projenizin package.json
öğesini seçin. App Center, ilişkili build.gradle (uygulama düzeyi) dosyasından bağımlılıklar, derleme araçları sürümü, derleme türleri ve ürün tatları gibi bilgileri otomatik olarak ayıklar.
Not
En iyi performans için analiz şu anda deponuzun kökü de dahil olmak üzere dört dizin düzeyiyle sınırlıdır.
3.2. Derleme değişkeni
Kullanılabilir derleme değişkenleri, projenin build.gradle (uygulama düzeyi) dosyasında belirtilen Derleme Türleri ve Ürün Tatları'ndan doldurulur. Hangi derleme değişkeninin derlenmesi gerektiğini seçin.
Not
App Center Derlemesi, Derleme Türü (hata ayıklama, sürüm veya özel tanımlı) ve isteğe bağlı bir Product Flavor birleşimi olarak derleme değişkenlerini bulmayı destekler. Şu anda birden çok ürün çeşidinin bileşimlerini algılama işlemi desteklenmemektedir.
3.3. Node.js sürümü
Derleme için kullanılacak Node.js sürümünü seçin Node.js sürümü seçme hakkında daha fazla bilgi edinin
3.4. Derleme tetikleyicileri
Varsayılan olarak, bir geliştirici yapılandırılmış bir dala her gönderildiğinde yeni bir derleme tetiklenir. Buna "Sürekli Tümleştirme" denir. Yeni bir derlemeyi el ile tetiklemek isterseniz, yapılandırma bölmesinde bu ayarı değiştirebilirsiniz.
3.5. Android Uygulama Paketi (.aab) oluşturma
Android Uygulama Paketi, Play Store'a yüklenebilecek bir dağıtım biçimidir. Belirli cihazlar için iyileştirilmiş API'ler oluşturmak için kullanılır. Android Uygulama Paketi hakkında daha fazla bilgi edinmek için resmi Android belgelerine göz atabilirsiniz. Bu, düzenli olarak kullandığınız paketle birlikte bir paket oluşturmak isteyip istemediğinizi anlamanıza da yardımcı olur .apk.
Uygulamasına ek olarak .apk
bir .aab
oluşturmak için Android Uygulama Paketi seçeneğini açın. build.gradle
(uygulama düzeyi) dosyası bloğu içeriyorsaandroid.bundle
, bu seçenek otomatik olarak açılır.
3.6. Sürüm numarasını artırma
Etkinleştirildiğinde, uygulamanızın AndroidManifest.xml sürüm kodu her derleme için otomatik olarak artar. Değişiklik gerçek derleme sırasında gerçekleşir ve deponuza işlenmez.
3.7. Başarılı derlemenizi gerçek bir cihazda başlatma
Uygulamanızın gerçek bir cihazda başlayıp başlamadiğini test etmek için yeni oluşturulan APK dosyasını kullanın. Başlatma testleri toplam derleme süresine yaklaşık 10 dakika daha ekler. Başlatma testlerini yapılandırma hakkında daha fazla bilgi edinin.
3.8. Kod imzalama
Başarılı bir derleme, etkinse bir .apk
dosya ve ek .aab
bir dosya oluşturur. Derlemeyi Play Store'a yayınlamak için bir anahtar deposunda depolanan geçerli bir sertifikayla imzalanması gerekir. Bir daldan oluşturulan derlemeleri imzalamak için yapılandırma bölmesinde kod imzalamayı etkinleştirin, anahtar deponuzu deponuza yükleyin ve yapılandırma bölmesinde ilgili değerleri sağlayın. Android kod imzalama App Center'ın Android kod imzalama belgeleri hakkında daha fazla bilgi edinebilirsiniz. ile .aab
aynı kimlik bilgileri .apk
kullanılarak imzalanır.
3.9. Derlemeyi dağıtma
Bir daldan her başarılı derlemeyi daha önce oluşturulmuş bir dağıtım grubuna veya bir depo hedefine dağıtılacak şekilde yapılandırabilirsiniz. Dağıtım hizmetinin içinden yeni bir dağıtım grubu ekleyebilir veya bir mağaza bağlantısı yapılandırabilirsiniz. Her zaman uygulamaya erişimi olan tüm kullanıcıları içeren "Ortak Çalışanlar" adlı bir varsayılan dağıtım grubu vardır.
Not
Google Play Store'a dağıtılıyorsa bir Android Uygulama Paketi (.aab
) tercih edilir ve etkinleştirilirse dağıtılır. App Center dağıtım grupları ve Intune depolama hedefleri için, bir de oluşturulsa bile normal .apk
bir .aab
değer kullanılır.
4. Derleme sonuçları
Derleme tetikledikten sonra derleme aşağıdaki durumlardan birinde olur:
- kuyruğa alındı - derleme, kaynakların boşaltılması için bekleyen bir kuyrukta
- building - derleme önceden tanımlanmış görevleri çalıştırıyor
- başarılı - derleme tamamlandı ve başarılı oldu
- başarısız oldu - derleme tamamlandı ama başarısız oldu; derleme günlüğünü indirip inceleyerek sorun giderebilirsiniz
- iptal edildi - derleme bir kullanıcı eylemi tarafından iptal edildi veya zaman aşımına uğradı
4.1. Derleme günlükleri
Tamamlanmış bir derleme için (başarılı veya başarısız), derlemenin nasıl gittiği hakkında daha fazla bilgi edinmek için günlükleri indirin. App Center aşağıdaki dosyaları içeren bir arşiv sağlar:
|-- 1_build.txt (this is the general build log)
|-- build (this folder contains a separate log file for each build step)
|-- <build-step-1>
|-- <build-step-2>
|--
|-- <build-step-n> (e.g. n_Post Job Cleanup.txt)
Derleme adımına özgü günlükler (arşivin build/
dizininde bulunur), derlemenin hangi adımda ve neden başarısız olduğunu anlamak için sorun gidermeye ve anlamaya yardımcı olur.
4.2. Uygulama (.apk)
Dosya .apk
, Android uygulamasını depolayan bir Android uygulaması paketlenmiş dosyasıdır. Derleme doğru şekilde imzalanmışsa uygulama gerçek bir cihaza yüklenebilir ve Play Store'a dağıtılabilir. Derleme imzalanmamışsa, uygulama bir öykünücü üzerinde çalıştırılabilir veya başka amaçlarla kullanılabilir.
5. Desteklenen sürümler ve gereksinimler
Android uygulamaları derlemek için desteklenen en düşük sürüm 5.0'dır (API düzeyi 21). Android uygulamalarının çalışması için gereken en düşük API düzeyi daha düşük olabilir, ancak en az API düzeyi 21'i hedeflemesi gerekir.
6. Derleme ipuçları
6.1. Iplik
Yarn paket yöneticisi için daha hızlı, daha belirleyici bir değişimdirnpm
. deponuzda öğesinin yanında package.json
bir yarn.lock
dosya varsa App Center, yarn install
derlemenin başındaki Yarn'ı kullanır. Aksi takdirde, bunu yapar npm install
.
6.2. Özel derleme betikleri
App Center'ın varsayılan derleme komutları yürütülmeden önce betikleri çalıştırmak için çeşitli seçenekler vardır.
Projenizin
package.json
dosyasında bir postinstall betiği oluşturun. Bağımlılıklarınız yüklendikten sonra bu betik otomatik olarak yürütülür."scripts": { ... "postinstall" : "npx jetify" // other examples: "node ./postinstall.js" or "./postinstall.sh" },
App Center'ın özel derleme betikleri işlevini kullanarak kabuk betiği yazma.
#!/usr/bin/env bash # Example: Authenticate with private NPM registry echo "//registry.npmjs.org/:_authToken=$NPM_AUTH_TOKEN" > ~/.npmrc # Example: Add your signing key file (from base64 encoded environment variable) base64 -d <<< "$ANDROID_JSON_KEY_FILE" > android/keystores/json_key_file.json
6.3. Birden çok API oluşturma
Android'de React Native için evrensel APK oluşturma varsayılan olarak devre dışıdır. Uygulama yapılandırmanız, CPU mimarisi veya ekran yapılandırması başına farklı API'ler oluşturmak için ayarlandıysa, evrensel apk'nin de derlendiğinden emin olmanız gerekir. App Center'ın derleme sistemi bir ana APK dosyasıyla çalışır ve belirli bir CPU/ABI veya ekran yoğunluğuna özgü tüm API'leri yoksayar.
APK bölmeleri ve evrensel APK oluşturma hakkında daha fazla bilgi edinmek için ilgili Android geliştirici kılavuzunu okuyun. Sonuç olarak, React Native derleme yapılandırmanız için olarak ayarlandığından universalApk
true
emin olun.