Mulai menggunakan MAUI dan Xamarin

Penting

Visual Studio App Center dijadwalkan untuk dihentikan pada 31 Maret 2025. Meskipun Anda dapat terus menggunakan Visual Studio App Center hingga sepenuhnya dihentikan, ada beberapa alternatif yang direkomendasikan yang dapat Anda pertimbangkan untuk bermigrasi.

Pelajari selengkapnya tentang garis waktu dukungan dan alternatif.

App Center SDK menggunakan arsitektur modular sehingga Anda dapat menggunakan salah satu atau semua layanan.

Mari kita mulai menyiapkan App Center .NET SDK di aplikasi Anda untuk menggunakan App Center Analytics dan App Center Crash. Untuk menambahkan Distribusi App Center ke aplikasi Anda, lihat dokumentasi untuk Distribusi App Center.

1. Prasyarat

Sebelum memulai, pastikan prasyarat berikut terpenuhi:

  • Proyek Anda disiapkan di Visual Studio atau Visual Studio untuk Mac.
  • Anda menargetkan perangkat yang menjalankan iOS 11.0 atau yang lebih baru atau Android 5.0 (API level 21) atau yang lebih baru.
  • Anda tidak menggunakan SDK lain yang menyediakan fungsionalitas Pelaporan Crash.

Platform yang didukung:

  • MAUI iOS
  • MAUI Android
  • MAUI Windows
  • .NET 6.0 macOS
  • Xamarin.Android
  • Xamarin.iOS
  • Xamarin.Mac
  • Aplikasi Xamarin.Forms (iOS, macOS Android, UWP, dan Windows Desktop)

1.1 MAUI

Catatan

Saat ini tidak ada platform MAUI di portal App Center. Silakan gunakan Xamarin untuk iOS dan Android dan UWP untuk Windows.

1.2 Tentang Xamarin.Android

Buat aplikasi di portal App Center dengan Android sebagai OS dan Xamarin sebagai platform.

1.3 Tentang Xamarin.iOS

Buat aplikasi di portal App Center dengan iOS sebagai OS dan Xamarin sebagai platform.

1.4 Tentang Xamarin.Mac

Buat aplikasi di portal App Center dengan macOS sebagai OS dan Xamarin sebagai platform.

Peringatan

Ada masalah yang diketahui yang mencegah aplikasi diunggah ke App Store. Ikuti kemajuan di github.

1.5 Tentang Xamarin.Forms (iOS, macOS, Android, UWP dan Windows Desktop)

Buat 5 aplikasi di App Center – satu untuk setiap OS.

Anda perlu memilih Xamarin sebagai platform untuk aplikasi Android, iOS, dan macOS (aplikasi UWP dan Desktop tidak memiliki opsi Xamarin).

Untuk aplikasi Windows Desktop dan macOS , Anda harus mengonfigurasi proyek untuk kompatibilitas dengan platform Xamarin.Forms .

2. Buat aplikasi Anda di Portal App Center untuk mendapatkan Rahasia Aplikasi

Jika sudah membuat aplikasi di portal App Center, Anda dapat melewati langkah ini.

  1. Pergilah ke appcenter.ms.
  2. Daftar atau masuk dan tekan tombol biru di sudut kanan atas portal yang bertuliskan Tambahkan baru dan pilih Tambahkan aplikasi baru dari menu dropdown.
  3. Masukkan nama dan deskripsi opsional untuk aplikasi Anda.
  4. Pilih OS dan platform yang sesuai tergantung pada proyek Anda seperti yang dijelaskan di atas.
  5. Tekan tombol di kanan bawah yang bertuliskan Tambahkan aplikasi baru.

Setelah membuat aplikasi, Anda dapat memperoleh Rahasia Aplikasinya di halaman Pengaturan di Portal App Center. Di sudut kanan atas halaman Pengaturan , klik tiga titik vertikal dan pilih Copy app secret untuk mendapatkan Rahasia Aplikasi Anda.

3. Tambahkan App Center SDK ke solusi Anda

App Center SDK dapat diintegrasikan menggunakan Visual Studio atau Package Manager Console.

Catatan

App Center SDK menggunakan rakitan bernama kuat untuk kompatibilitas dengan aplikasi yang menggunakan tanda bernama kuat.

Visual Studio untuk Mac

  • Buka Visual Studio.
  • Klik Buka File> dan pilih solusi Anda.
  • Di navigator solusi, klik kanan bagian Paket , dan pilih Tambahkan paket NuGet....
  • Cari App Center, dan pilih App Center Analytics dan App Center Crash.
  • Klik Tambahkan Paket.

Visual Studio untuk Windows

  • Buka Visual Studio.
  • Klik Buka File> dan pilih solusi Anda.
  • Di navigator solusi, klik kanan Referensi dan pilih Kelola Paket NuGet.
  • Cari App Center, dan instal paket Microsoft.AppCenter.Analytics dan Microsoft.AppCenter.Crashes .

Konsol Manajer Paket

  • Buka konsol di Visual Studio. Untuk melakukan ini, pilih Alat>NuGet Package Manager>Package Manager Console.
  • Jika Anda bekerja di Visual Studio untuk Mac, pastikan Anda telah menginstal Ekstensi Manajemen Paket NuGet. Untuk ini, pilihEkstensiVisual Studio>, cari NuGet dan instal, jika perlu.
  • Ketik perintah berikut di konsol:
Install-Package Microsoft.AppCenter.Analytics
Install-Package Microsoft.AppCenter.Crashes

Sekarang setelah Anda mengintegrasikan SDK dalam aplikasi Anda, saatnya untuk memulai SDK dan memanfaatkan layanan App Center.

Catatan

Jika Anda menggunakan App Center SDK dalam proyek portabel (seperti Xamarin.Forms), Anda harus menginstal paket di setiap proyek: yang portabel, Android, dan iOS. Untuk melakukannya, Anda harus membuka setiap sub-proyek dan mengikuti langkah-langkah terkait yang dijelaskan di bagian Visual Studio untuk Mac atau Visual Studio untuk Windows .

4. Mulai SDK

Untuk menggunakan App Center, Anda harus ikut serta dalam modul yang ingin Anda gunakan. Secara default, tidak ada modul yang dimulai dan Anda harus secara eksplisit memanggil masing-masing modul saat memulai SDK.

4.1 Menambahkan pernyataan penggunaan

Tambahkan namespace yang sesuai dalam file berikut:

  • MAUI dan Xamarin.Forms - App.xaml.cs
  • Xamarin.iOS dan Xamarin.Mac - AppDelegate.cs
  • Xamarin.Android - MainActivity.cs
using Microsoft.AppCenter;
using Microsoft.AppCenter.Analytics;
using Microsoft.AppCenter.Crashes;

4.2 Menambahkan Start() metode

4.2.1 MAUI dan Xamarin.Forms

Anda perlu membuat aplikasi yang berbeda untuk setiap platform di portal App Center. Untuk setiap aplikasi, Anda akan memiliki rahasia aplikasi yang berbeda. Buka file App.xaml.cs proyek dan tambahkan baris berikut di konstruktor (atau dalam OnStart() metode untuk Xamarin.Forms).

AppCenter.Start("ios={Your App Secret};macos={Your App Secret};android={Your App Secret};uwp={Your App Secret};windowsdesktop={Your App Secret}", typeof(Analytics), typeof(Crashes));

Jika Anda perlu memulai layanan App Center secara terpisah, Anda harus:

  1. Konfigurasikan atau mulai dengan Rahasia Aplikasi.
  2. Jika kode dapat dipanggil beberapa kali, periksa apakah App Center sudah dikonfigurasi.
  3. Mulai layanan yang diperlukan tanpa Rahasia Aplikasi.
AppCenter.Configure("ios={Your App Secret};macos={Your App Secret};android={Your App Secret};uwp={Your App Secret};windowsdesktop={Your App Secret}");
if (AppCenter.Configured)
{
    AppCenter.Start(typeof(Analytics));
    AppCenter.Start(typeof(Crashes));
}

4.2.2 Xamarin.Android

Catatan

Jika Anda menggunakan HockeyApp SDK untuk Android, pastikan untuk menginisialisasi HockeyApp SDK SETELAH App Center SDK.

Buka file MainActivity.cs proyek dan tambahkan panggilan di Start()OnCreate() dalam metode

AppCenter.Start("{Your App Secret}", typeof(Analytics), typeof(Crashes));

Catatan

Jika aplikasi Anda memiliki layanan latar belakang atau beberapa titik masuk seperti penerima siaran, aktivitas yang diekspor, atau penyedia konten, disarankan untuk memulai AppCenter panggilan Application.OnCreate balik sebagai gantinya.

4.2.3 Xamarin.iOS dan Xamarin.Mac

Catatan

Tidak dimungkinkan untuk memiliki lebih dari satu SDK pelaporan crash aktif di aplikasi Anda. Nonaktifkan fungsionalitas pelaporan crash SDK lainnya untuk memastikan App Center dapat menangkap crash.

Buka file proyek AppDelegate.cs dan tambahkan panggilan di Start()FinishedLaunching() dalam metode

AppCenter.Start("{Your App Secret}", typeof(Analytics), typeof(Crashes));

Catatan

Jika menggunakan Crash, Anda harus memanggil metode ini di UI/utas utama dan menghindari memulai tugas latar belakang hingga Start metode kembali. Alasannya adalah bahwa setiap pengecualian referensi null yang ditangkap dari utas lain saat Crash sedang diinisialisasi dapat memicu crash asli dan mengabaikan klausul tangkapan. AppCenter.Start Setelah metode kembali, aman untuk mencoba/menangkap pengecualian referensi null lagi. Anda dapat membaca selengkapnya tentang penyebab masalah waktu ini di artikel Signals dan crash reporter pihak ketiga .

Peringatan

Tidak disarankan untuk menyematkan Rahasia Aplikasi Anda dalam kode sumber.

Penting

Kurung kurawal menunjukkan di mana menempatkan rahasia aplikasi yang sebenarnya, jangan letakkan kurung kurawal dalam Start panggilan.

Catatan

Untuk aplikasi iOS, tidak dimungkinkan untuk memiliki lebih dari satu SDK pelaporan crash aktif di aplikasi Anda. Nonaktifkan fungsionalitas pelaporan crash SDK lainnya untuk memastikan App Center dapat menangkap crash.

4.3 Ganti tempat penampung dengan Rahasia Aplikasi Anda

Pastikan untuk mengganti {Your App Secret} teks dengan nilai aktual untuk aplikasi Anda. Rahasia Aplikasi dapat ditemukan di halaman Memulai atau halaman Pengaturan di portal App Center.

Halaman Memulai berisi sampel kode di atas dengan Rahasia Aplikasi Anda di dalamnya, Anda dapat menyalin-tempel seluruh sampel.

Contoh di atas menunjukkan cara menggunakan Start() metode dan menyertakan App Center Analytics dan App Center Crash.

Jika Anda tidak ingin menggunakan salah satu dari dua layanan, hapus parameter yang sesuai dari panggilan metode di atas.

Kecuali Anda secara eksplisit menentukan setiap modul sebagai parameter dalam metode mulai, Anda tidak dapat menggunakan layanan App Center tersebut. Selain itu, Start() API hanya dapat digunakan sekali dalam siklus hidup aplikasi Anda - semua panggilan lain akan mencatat peringatan ke konsol dan hanya modul yang disertakan dalam panggilan pertama yang akan tersedia.

Misalnya - Jika Anda ingin onboarding ke App Center Analytics, Anda harus mengubah Start() panggilan sebagai berikut:

4.3.1 MAUI dan Xamarin.Forms

AppCenter.Start("ios={Your App Secret};macos={Your App Secret};android={Your App Secret};uwp={Your App Secret};windowsdesktop={Your App Secret}", typeof(Analytics));

4.3.2 Xamarin Native

AppCenter.Start("{Your App Secret}", typeof(Analytics));

Hebat, Anda sudah siap untuk memvisualisasikan data Analytics dan Crash di portal yang dikumpulkan SDK secara otomatis.

Lihat dokumentasi untuk App Center Analytics dan App Center Crash untuk mempelajari cara menyesuaikan dan menggunakan fungsionalitas yang lebih canggih dari kedua layanan.

Untuk mempelajari cara memulai pembaruan dalam aplikasi, baca dokumentasi Distribusi App Center.

Catatan

Dengan menggunakan API portabel dari Xamarin Forms, Anda akan melihat API dari semua modul, namun tidak semua API tersebut didukung pada platform UWP dan Windows Desktop dan tidak melakukan apa pun saat berjalan di aplikasi UWP dan Windows Desktop Anda. Khususnya UWP dan Windows Desktop tidak mendukung modul berikut: Distribusikan. Metode apa pun dengan jenis pengembalian akan mengembalikan baik null (untuk objek), 0 (untuk angka), atau false (untuk boolean) pada aplikasi UWP dan Windows Desktop.

5. Aturan pencadangan (khusus Android)

Catatan

Aplikasi yang menargetkan Android 6.0 (API level 23) atau yang lebih tinggi mengaktifkan Auto Backup secara otomatis. 

Catatan

Jika Anda sudah memiliki file kustom dengan aturan cadangan, beralihlah ke langkah ketiga.

Jika Anda menggunakan pencadangan otomatis untuk menghindari mendapatkan informasi yang salah tentang perangkat, ikuti langkah-langkah berikutnya:

5.1. Untuk Android 11 (API level 30) atau yang lebih rendah.

  1. Buat file appcenter_backup_rule.xml di folder Sumber Daya/xml .
  1. Buka file AndroidManifest.xml proyek. android:fullBackupContent Tambahkan atribut ke <application> elemen . Ini harus menunjuk ke file sumber daya appcenter_backup_rule.xml .
android:fullBackupContent="@xml/appcenter_backup_rule"
  1. Tambahkan aturan cadangan berikut ke file appcenter_backup_rule.xml :
<full-backup-content xmlns:tools="http://schemas.android.com/tools">
      <exclude domain="sharedpref" path="AppCenter.xml"/>
      <exclude domain="database" path="com.microsoft.appcenter.persistence"/>
      <exclude domain="database" path="com.microsoft.appcenter.persistence-journal"/>
      <exclude domain="file" path="error" tools:ignore="FullBackupContent"/>
      <exclude domain="file" path="appcenter" tools:ignore="FullBackupContent"/>
  </full-backup-content>

5.2. Untuk Android 12 (API level 31) atau yang lebih tinggi.

  1. Buat file appcenter_backup_rule.xml di folder Sumber Daya/xml .
  1. Buka file AndroidManifest.xml proyek. android:dataExtractionRules Tambahkan atribut ke <application> elemen . Ini harus menunjuk ke file sumber daya appcenter_backup_rule.xml .
android:dataExtractionRules="@xml/appcenter_backup_rule"
  1. Tambahkan aturan cadangan berikut ke file appcenter_backup_rule.xml :
<data-extraction-rules xmlns:tools="http://schemas.android.com/tools">
    <cloud-backup>
        <exclude domain="sharedpref" path="AppCenter.xml"/>
        <exclude domain="database" path="com.microsoft.appcenter.persistence"/>
        <exclude domain="database" path="com.microsoft.appcenter.persistence-journal"/>
        <exclude domain="file" path="error" tools:ignore="FullBackupContent"/>
        <exclude domain="file" path="appcenter" tools:ignore="FullBackupContent"/>
    </cloud-backup>
    <device-transfer>
        <exclude domain="sharedpref" path="AppCenter.xml"/>
        <exclude domain="database" path="com.microsoft.appcenter.persistence"/>
        <exclude domain="database" path="com.microsoft.appcenter.persistence-journal"/>
        <exclude domain="file" path="error" tools:ignore="FullBackupContent"/>
        <exclude domain="file" path="appcenter" tools:ignore="FullBackupContent"/>
    </device-transfer>
</data-extraction-rules>