Android için Xamarin 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.
İlk Xamarin 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 yaşadığı bir dal seçin.
- Oluşturmak istediğiniz Android projesini seçin.
- İlk derlemenizi ayarlayın.
Not
Uygulamanın gerçek bir cihazda çalışması için derlemeyi geçerli bir KeyStore ile imzalamanız 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 Xamarin 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. Derlemenizi Yapılandırma
Xamarin projesi ilk derlemenizden önce yapılandırılmalıdır.
3.1. Derleme tetikleyicileri
Varsayılan olarak, derleme hizmeti Sürekli Tümleştirme kullanır, bu nedenle geliştirici yapılandırılmış bir dala her gönderildiğinde yeni bir derleme tetiklenir. Yeni derlemeleri el ile tetiklemek isterseniz, yapılandırma bölmesinde bu ayarı değiştirebilirsiniz.
3.2. Proje ve Yapılandırma
Deponuzdaki kullanılabilir projeler analiz aralığında yer alıyorsa doldurulur. Android derlemeniz için doğru projeyi seçin ve uygun yapılandırmayı seçin.
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.3. Mono sürüm
App Center, derlemeleriniz için ilgili Xamarin.Android SDK'sı ile birlikte gelen farklı Mono ortamları kullanmaya olanak tanır. Bu şekilde geriye dönük uyumluluğu korurken en son özellikleri de destekliyoruz. Yeni dal yapılandırması için varsayılan Mono sürümü en son kararlı sürümdür. Çerçevelerin veya kitaplıkların eski sürümlerini oluşturmak için önceki Mono ortamlarından birini kullanmayı seçebilirsiniz.
Derleme yapılandırmasında bir Mono sürümü seçildiğinde, paketlenmiş Xamarin.Android SDK sürümü hemen yanında görüntülenir. Xamarin SDK sürüm güncelleştirmeleri hakkında daha fazla bilgi için Xamarin yayın blogunu okuyun.
3.3.1. .NET Core sürümü
Derleme için kullanılan Mono sürümüne göre uygun .NET Core sürümü otomatik olarak seçilir ve üzerine yazılamaz. Mono'nun hizmetlerimiz tarafından kullanılan .NET Core ile eşlemesini aşağıdaki tabloda görüntüleyebilirsiniz:
Mono | .NET Core |
---|---|
<= 5,18 | 2.2.105 |
6.0 | 2.2.300 |
6.4 | 3.0.100 |
6.6 | 3.1.100 |
6.8 | 3.1.200 |
6.10 | 3.1.300 |
6.12 | 3.1.401 |
3.4. Android Uygulama Paketi (.aab) derleme
Android Uygulama Paketi, belirli cihazlar için iyileştirilmiş API'ler oluşturmak için kullanılan bir dağıtım biçimidir. Play Store'a yüklenebilir. Android Uygulama Paketi hakkında daha fazla bilgi edinmek için resmi Android belgelerinde ve Xamarin.Android 9.4 sürüm notlarında bulabilirsiniz. Bu notlar, normal cihazınızla birlikte bir paket oluşturmak isteyip istemediğinize karar vermenize de yardımcı olabilir .apk.
Ve .apk
oluşturmak .aab
için Android Uygulama Paketi seçeneğini açın. .csproj
Dosya özelliğinde AndroidPackageFormat
yer alırsaaab
, bu seçenek otomatik olarak açılır. Xamarin.Android 9.4 ve üzeri için derleme .aab
desteklenir.
3.5. 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 derleme öncesi gerçekleşir ve deponuza işlenmez.
3.6. Kod imzalama
Başarılı bir derleme, etkinleştirilirse bir .apk
dosya ve ek .aab
bir dosya oluşturur. Derlemeyi Play Store'da yayınlamak için geçerli bir Keystore ve Diğer Ad ile imzalanması gerekir. Bir daldan oluşturulan derlemeleri imzalamak için yapılandırma bölmesinde kod imzalamayı etkinleştirin, Keystore'unuzu karşıya yükleyin ve yapılandırma bölmesinde gereken değerleri sağlayın. Daha ayrıntılı kod imzalama yönergelerini okuyabilirsiniz. ile .aab
aynı kimlik bilgileri .apk
kullanılarak imzalanır.
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
dosyanızı kullanın. Bu, toplam derleme süresine yaklaşık 10 dakika daha ekler. Test tümleştirme kılavuzumuzda daha fazla bilgi bulabilirsiniz.
3.8. NuGet geri yükleme
NuGet.config
Dosya depoda iade edildiyse ve dosyanın yanında .sln
veya deponuzun kök düzeyinde bulunuyorsa App Center, aşağıdaki örnekte gösterildiği gibi eklendiğinde özel NuGet akışlarınızı geri yükler. Ortam değişkenleri kullanılarak kimlik bilgileri güvenle eklenebilir:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="nuget" value="https://api.nuget.org/v3/index.json" />
<add key="MyGet" value="https://www.myget.org/F/MyUsername/api/v2/index.json" />
<add key="MyAuthNuget" value="https://nuget.example.com/v2/index.json" />
</packageSources>
<activePackageSource>
<add key="All" value="(Aggregate source)" />
</activePackageSource>
<packageSourceCredentials>
<MyAuthNuget>
<add key="Username" value="$USER_VARIABLE" />
<add key="ClearTextPassword" value="$PASSWORD_VARIABLE" />
</MyAuthNuget>
</packageSourceCredentials>
</configuration>
Karmaşık yapılandırmalarınız varsa ve daha fazla bilgiye ihtiyacınız varsa Bkz. NuGet davranışını yapılandırma.
3.9. Derlemeyi dağıtma
Her başarılı derlemeyi bir daldan daha önce oluşturulmuş bir dağıtım grubuna veya bir mağaza 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 deposu hedefleri için, bir de oluşturulsa bile normal .apk
bir .aab
değer 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 kuyruktadır.
- building - derleme çalışıyor.
- başarılı - derleme başarıyla tamamlandı.
- failed - derleme hatalarla durduruldu. Derleme günlüğünü indirip inceleyerek sorun giderme işlemi yapabilirsiniz.
- 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ı günlükleri (arşivin build/
dizininde bulunur), derlemenin hangi adımda ve neden başarısız olduğunu anlamak için 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, .apk
dosya 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.
Desteklenen sürümler ve gereksinimler
App Center Taşınabilir Sınıf Kitaplığı (PCL) ve .NET Standard projelerini destekler. .NET Standard sürümleri için Bulut Derleme Makineleri'ne bakın.
App Center, Xamarin Bileşen Deposu bileşenlerini desteklemez ve kullanılabilir olduğunda NuGet paketlerini kullanmanızı öneririz. Değiştirilmeyecek bir Bileşen kullanıyorsanız bizimle iletişime geçin. Yardım ve geri bildirime bakın.