Bagikan melalui


Tingkatkan proyek Xamarin.Android, Xamarin.iOS, dan Xamarin.Mac ke .NET

Untuk meningkatkan proyek asli Xamarin Anda ke .NET, Anda harus:

  • Perbarui file proyek Anda agar bergaya SDK.
  • Perbarui atau ganti dependensi yang tidak kompatibel dengan versi .NET 8.
  • Kompilasi dan uji aplikasi Anda.

Untuk sebagian besar proyek, Anda tidak perlu mengubah namespace layanan atau melakukan penulisan ulang lainnya.

Untuk menyederhanakan proses peningkatan, sebaiknya buat proyek .NET baru dengan jenis dan nama yang sama dengan proyek asli Xamarin Anda, lalu salin dalam kode Anda. Ini adalah pendekatan yang diuraikan di bawah ini.

Membuat proyek baru

Di Visual Studio, buat proyek .NET baru dengan jenis dan nama yang sama dengan proyek asli Xamarin Anda. Misalnya, untuk meningkatkan dari Xamarin.Android ke .NET untuk Android, pilih templat proyek Aplikasi Android:

Cuplikan layar memilih templat proyek aplikasi Android di Visual Studio.

Proyek baru harus diberi nama proyek dan paket yang sama dengan proyek Anda yang ada, dan harus ditempatkan di folder baru. Membuka file proyek akan mengonfirmasi bahwa Anda memiliki proyek gaya .NET SDK:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>net8.0-android</TargetFramework>
    <SupportedOSPlatformVersion>21</SupportedOSPlatformVersion>
    <OutputType>Exe</OutputType>
    <Nullable>enable</Nullable>
    <ImplicitUsings>enable</ImplicitUsings>
    <ApplicationId>com.companyname.AndroidApp2</ApplicationId>
    <ApplicationVersion>1</ApplicationVersion>
    <ApplicationDisplayVersion>1.0</ApplicationDisplayVersion>
  </PropertyGroup>
</Project>

Penting

Moniker kerangka kerja target (TFM) adalah yang menunjukkan proyek sebagai menggunakan .NET, dalam hal ini .NET 8. TFM yang valid untuk proyek asli Xamarin yang setara adalah net8.0-android, net8.0-ios, net8.0-macos, dan net8.0-tvos. Untuk informasi tentang kerangka kerja target dalam proyek bergaya SDK, lihat Kerangka kerja target dalam proyek bergaya SDK.

Luncurkan aplikasi untuk mengonfirmasi bahwa lingkungan pengembangan Anda dapat membangun aplikasi.

Gabungkan file

Salin file kode dan sumber daya Anda dari folder proyek asli Xamarin Anda ke folder yang identik dalam aplikasi baru Anda. Anda harus menimpa file dengan nama yang sama.

Jika Anda memiliki proyek pustaka lain, Anda harus menambahkannya ke solusi baru Anda dan menambahkan referensi proyek ke proyek tersebut dari proyek .NET baru Anda.

Anda juga harus menyalin beberapa properti proyek dari proyek asli Xamarin Anda ke proyek .NET baru Anda, untuk pengaturan seperti argumen kompilasi bersyarat dan penandatanganan kode. Membuka proyek secara berdampingan dalam instans Visual Studio terpisah akan memungkinkan Anda membandingkan properti proyek. Atau, Anda dapat memigrasikan pengaturan dengan mengedit file proyek baru secara langsung. Untuk informasi selengkapnya, lihat Migrasi proyek Xamarin.Android dan migrasi proyek Xamarin Apple.

Perbarui dependensi

Umumnya, paket NuGet asli Xamarin tidak kompatibel dengan .NET 8 kecuali telah dikombinasikan ulang menggunakan TFM .NET. Namun, .NET untuk aplikasi Android dapat menggunakan paket NuGet yang menargetkan monoandroid kerangka kerja dan monoandroidXX.X .

Anda dapat mengonfirmasi paket kompatibel .NET 8 dengan melihat tab Kerangka Kerja di NuGet untuk paket yang Anda gunakan, dan memeriksa apakah paket tersebut mencantumkan salah satu kerangka kerja yang kompatibel yang diperlihatkan dalam tabel berikut:

Kerangka kerja yang kompatibel Kerangka kerja yang tidak kompatibel
net8.0-android, monoandroid, monoandroidXX.X
net8.0-ios monotouch, xamarinios, xamarinios10
net8.0-macos monomac, xamarinmac, xamarinmac20
net8.0-tvos xamarintvos
xamarinwatchos

Catatan

Pustaka .NET Standard yang tidak memiliki dependensi pada kerangka kerja yang tidak kompatibel yang tercantum di atas masih kompatibel dengan .NET 8.

Jika paket di NuGet menunjukkan kompatibilitas dengan salah satu kerangka kerja yang kompatibel di atas, terlepas dari juga termasuk kerangka kerja yang tidak kompatibel, maka paket tersebut kompatibel. Paket NuGet yang kompatibel dapat ditambahkan ke proyek asli .NET Anda menggunakan manajer paket NuGet di Visual Studio.

Jika Anda tidak dapat menemukan versi paket NuGet yang kompatibel dengan .NET 8, Anda harus:

  • Kompilasi ulang paket dengan .NET TFM, jika Anda memiliki kode.
  • Cari rilis pratinjau paket versi .NET 8.
  • Ganti dependensi dengan alternatif yang kompatibel dengan .NET 8.

Untuk informasi tentang memigrasikan kode Xamarin.Essentials di aplikasi .NET untuk Android atau .NET untuk iOS, lihat Memigrasikan kode Xamarin.Essentials di .NET untuk Android dan .NET untuk aplikasi iOS.

Mengkompilasi dan memecahkan masalah

Setelah dependensi Anda diselesaikan dan file kode dan sumber daya Anda ditambahkan ke proyek asli .NET, Anda harus membangun proyek Anda. Kesalahan apa pun akan memandu Anda menuju langkah berikutnya.

Tip

  • Hapus semua folder bin dan obj dari semua proyek sebelum membuka dan membangun proyek di Visual Studio, terutama saat mengubah versi .NET.
  • Hapus file Resource.designer.cs yang dihasilkan dari proyek Android.