Memperbarui arsitektur aplikasi dari Arm32 ke Arm64
Panduan ini akan membahas langkah-langkah yang direkomendasikan untuk mengubah aplikasi yang ada dengan dukungan untuk arsitektur platform Arm 32-bit ke arsitektur Arm 64-bit yang lebih diperbarui dengan menambahkan konfigurasi yang diperlukan menggunakan Visual Studio. Pembaruan ini akan membantu aplikasi Anda berjalan pada perangkat Windows terbaru di Arm yang menggunakan prosesor Arm (ARM64/AArch64) 64-bit.
Topik ini relevan untuk aplikasi UWP yang tidak memiliki target ARM64. Templat proyek UWP yang lebih lama menghasilkan target ARM32 (atau AArch32), tetapi tidak menyertakan dukungan untuk ARM64 (AArch64).
Untuk memeriksa Platform Solusi saat ini untuk aplikasi Anda untuk melihat apakah ARM64 ada, buka kode proyek aplikasi Anda di Visual Studio dan di menu drop-down "Platform Solusi" pada toolbar Standar, pilih Configuration Manager... (juga tersedia di menu Build) tempat Anda akan dapat melihat daftar Platform Solusi dan mengonfirmasi apakah ARM64 ada.
Catatan
Perangkat Windows yang berjalan pada prosesor Arm (misalnya, prosesor Snapdragon dari Qualcomm) tidak akan lagi mendukung AArch32 (Arm32). Perubahan ini berdampak pada aplikasi Platform Windows Universal yang saat ini menargetkan AArch32 (Arm32). Dukungan untuk versi Arm 32-bit aplikasi akan dihapus dalam rilis Windows 11 di masa mendatang. Biner sistem untuk dukungan ARM32 (ada di folder sysarm32 ) juga akan dihapus. Setelah perubahan ini, untuk sejumlah kecil aplikasi yang terpengaruh, fitur aplikasi mungkin berbeda dan Anda mungkin melihat perbedaan performa. Oleh karena itu, sebaiknya perbarui platform yang Anda targetkan ke AArch64 (Arm64), yang didukung pada semua perangkat Windows di Arm, sesegera mungkin untuk memastikan pelanggan Anda dapat terus menikmati pengalaman terbaik. Ikuti panduan di halaman ini untuk memperbarui aplikasi Anda ke AArch64 (Arm64).
Untuk menambahkan platform solusi ARM64 ke kode proyek aplikasi yang ada:
- Buka solusi Anda (kode proyek) di Visual Studio (Visual Studio 2017 versi 15.9 atau yang lebih baru diperlukan).
- Di menu drop-down "Platform Solusi" pada toolbar Standar (atau di menu "Build"), pilih Configuration Manager...
- Buka menu drop-down "Platform solusi aktif" dan pilih baru...>.<
- Di menu drop-down "Ketik atau pilih platform baru", pilih ARM64 dan pastikan bahwa nilai "Salin pengaturan dari" diatur ke ARM dengan kotak centang "Buat platform proyek baru" diaktifkan, lalu pilih OK.
Setelah Anda menambahkan platform solusi Arm64 ke proyek atau solusi yang ada, jika Anda ingin mengonfirmasi bahwa versi Arm64 aplikasi Anda dibuat dengan benar, tutup jendela "Platform solusi aktif" dan ubah pengaturan build dari Debug ke Rilis. Di menu drop-down "Build", pilih Bangun Ulang Solusi dan tunggu proyek dibangun kembali. Anda harus menerima output "Bangun Ulang Semua berhasil". Jika tidak, lihat bagian Pemecahan Masalah di bawah ini.
(Opsional): Periksa apakah biner aplikasi Anda sekarang dibangun untuk arsitektur Arm64 dengan membuka direktori proyek Anda di PowerShell (klik kanan proyek aplikasi Anda di Visual Studio Penjelajah Solusi dan pilih Buka di Terminal). Ubah direktori sehingga direktori baru bin\ARM64\Release
proyek Anda dipilih. Masukkan perintah: dumpbin .\<appname>.exe
(mengganti <appname>
dengan nama aplikasi Anda). Kemudian masukkan perintah: dumpbin /headers .\<appname>.exe
. Menggulir ke atas di hasil output terminal Anda, temukan bagian FILE HEADER VALUES
dan konfirmasikan baris pertama adalah AA64 machine (ARM64)
.
Setelah membuat aplikasi versi Arm64 dengan mengikuti langkah-langkah konfigurasi di atas, Anda dapat memperbarui paket aplikasi yang ada di Microsoft Store dengan mengunjungi dasbor Pusat Mitra dan menambahkan biner ARM64 yang baru dibuat ke pengiriman. (Ini adalah opsi untuk juga menghapus biner ARM32 sebelumnya).
(opsional) menghapus biner Arm32 sebelumnya. Untuk informasi selengkapnya tentang opsi, lihat Menerbitkan aplikasi Anda di Microsoft Store.
Jika Anda mengalami masalah saat memindahkan aplikasi Arm32 ke Arm64, berikut adalah beberapa solusi umum.
Jika Anda tidak dapat membangun karena dependensi, baik internal, dari pihak ke-3, atau dari pustaka sumber terbuka, Anda harus menemukan cara untuk memperbarui dependensi tersebut untuk mendukung arsitektur ARM64 atau menghapusnya.
Untuk dependensi internal, sebaiknya bangun kembali dependensi untuk dukungan ARM64.
Untuk dependensi pihak ke-3, sebaiknya ajukan permintaan agar pemeliharaan dibangun kembali dengan dukungan ARM64.
Untuk dependensi sumber terbuka, sebaiknya periksa vcpkg terlebih dahulu untuk melihat apakah versi dependensi yang lebih baru yang menyertakan dukungan ARM64 ada yang dapat Anda perbarui. Jika tidak ada pembaruan, pertimbangkan untuk berkontribusi pada penambahan dukungan ARM64 ke paket sendiri. Banyak sumber terbuka pengusaha akan berterima kasih atas kontribusi tersebut.
Pilihan terakhir adalah menghapus dan/atau mengganti dependensi pada proyek aplikasi Anda.
Pelajari selengkapnya tentang bantuan kompatibilitas App Assure untuk membantu memindahkan aplikasi atau driver Windows Anda ke Arm64. Untuk mendaftar dan terhubung dengan App Assure, kunjungi aka.ms/AppAssureRequest atau kirim email untuk achelp@microsoft.com mengirimkan permintaan Anda untuk Dukungan kompatibilitas Windows di Arm.
Umpan balik Windows on Arm
Windows on Arm adalah proyek sumber terbuka. Pilih tautan untuk memberikan umpan balik: