Aracılığıyla paylaş


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:

  1. Depo hizmeti hesabınıza (GitHub, Bitbucket, VSTS, Azure DevOps) bağlanın.
  2. Bir depo ve uygulamanızın bulunduğu bir dal seçin.
  3. Oluşturmak istediğiniz projenin projelerini package.json seçin.
  4. İlk derlemenizi ayarlayın.

Not

Uygulamanın gerçek bir cihazda çalışması için derlemenin geçerli bir sertifikayla kod imzalanması 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 bağımlılıklar, derleme araçları sürümü, derleme türleri ve ürün türleri gibi ilişkili build.gradle (uygulama düzeyi) dosyasından otomatik olarak bilgi 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 varyantları, 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 Ürün Aroması birleşimi olarak derleme değişkenlerini bulmayı destekler. Şu anda birden çok ürün çeşidinin bileşimlerinin algılanması 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) derleme

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 .apkbir .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, etkinleştirilirse 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 .apkkullanılarak imzalanır.

3.9. Derlemeyi dağıtma

Bir daldan her başarılı derlemeyi, önceden 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şturulmuş olsa .aab bile bir normal .apk kullanılır.

4. Derleme sonuçları

Derleme tetikleyicilerinden 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ü indirerek ve 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 (başarılı veya başarısız) için 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 giderme ve anlama açısından yararlıdır.

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ı ve daha belirlenimci bir değişimdirnpm. deponuzda öğesinin yanında package.jsonbir yarn.lock dosya varsa App Center, yarn install derlemenin başındaki Yarn'ı kullanır. Aksi takdirde, yapar npm install.

6.2. Özel derleme betikleri

App Center'ın varsayılan derleme komutları yürütülmeden önce betik ç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 APK 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ı APK'ler gibi birden çok API oluşturacak şekilde ayarlandıysa, evrensel bir APK'nın da 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, bunun universalApk React Native derleme yapılandırmanız için olarak ayarlandığından true emin olun.