Aplikasi Dukungan Perangkat Keras (HSA): Langkah-langkah untuk Pengembang Aplikasi
Topik ini menjelaskan cara mengaitkan aplikasi khusus perangkat dengan titik akhir driver atau RPC (Panggilan Prosedur Jarak Jauh). Ketika dipasangkan dengan cara ini, aplikasi ini disebut sebagai Aplikasi Dukungan Perangkat Keras (HSA). Anda dapat mendistribusikan dan memperbarui Aplikasi Dukungan Perangkat Keras melalui Microsoft Store.
Mulailah dengan aplikasi Platform Windows Universal (UWP) atau aplikasi desktop (Win32). Jika Anda ingin menggunakan aplikasi desktop, gunakan Desktop Bridge untuk membuat Paket Aplikasi Windows yang dapat Anda unggah ke Store.
Halaman ini menjelaskan prosedur untuk aplikasi UWP, tetapi langkah-langkahnya mirip untuk opsi Win32.
Langkah-langkah untuk pengembang driver dijelaskan dalam Aplikasi Dukungan Perangkat Keras (HSA): Langkah-langkah untuk Pengembang Driver.
Memulai
Pertama, instal versi terbaru Visual Studio dan buat proyek aplikasi UWP. Untuk membangun aplikasi UWP dengan kemampuan kustom, Anda memerlukan Windows SDK versi 10.0.15063 (Pembaruan Pembuat Windows 10) atau yang lebih baru. File proyek Anda juga harus menentukan versi 10.0.15063 atau yang lebih tinggi. Untuk bantuan selengkapnya dalam mengonfigurasi, lihat Mengembangkan aplikasi UWP menggunakan Visual Studio.
Mulai Windows 10 versi 1709, Anda dapat menentukan bahwa aplikasi Platform Windows Universal (UWP) hanya boleh memuat jika ada driver tertentu. Untuk mempelajari caranya, lihat Memasangkan driver dengan aplikasi UWP.
Membuat akun Microsoft Store
Akun pengembang di Microsoft Store diperlukan. Mitra perangkat keras akan memerlukan akun Microsoft Store yang berbeda dari akun mitra Perangkat Keras mereka. Anda akan memerlukan nama penerbit saat menulis manifes aplikasi dan metadata perangkat di langkah selanjutnya. Anda juga dapat memesan nama untuk aplikasi setelah membuat profil toko.
Untuk membuat akun Microsoft Store, buka Dapatkan terdaftar. Untuk informasi selengkapnya, lihat Menerbitkan aplikasi dan permainan Windows.
Memilih bahasa pemrograman untuk aplikasi
Jika aplikasi Anda akan berkomunikasi dengan driver, Anda dapat menggunakan Windows.Devices.Custom, yang merupakan bagian dari WINRT API, dan karenanya tersedia di JavaScript, C#, dan C++.
Jika aplikasi Anda akan berkomunikasi dengan layanan NT, maka Anda perlu menggunakan API RPC. Karena API RPC adalah API Win32 yang tidak tersedia di WinRT, Anda perlu menggunakan C++, C++/CLI, atau membungkus panggilan RPC menggunakan interop .NET (PInvoke). Untuk informasi selengkapnya, lihat Memanggil Fungsi Asli dari Kode Terkelola dan pemrograman .NET dengan C++/CLI.
Hubungi pemilik kemampuan kustom
Sekarang Anda siap untuk meminta akses ke kemampuan kustom dari pemilik kemampuan. Anda harus mengumpulkan info berikut:
PFN Aplikasi (Nama Keluarga Paket) dari Microsoft Store
Nama kemampuan kustom
Hash Tanda Tangan sertifikat penandatanganan aplikasi yang dapat dihasilkan dari file .cer Anda menggunakan certutil.exe. Sertifikat harus SHA-256.
Untuk menghasilkan hash tanda tangan, jalankan C:\Windows\System32\certutil.exe -dump CertificateName.cer
.
Cari hash tanda tangan di dekat bagian bawah dan pastikan itu SHA256. Jika tidak, gunakan sertifikasi SHA256 untuk menandatangani aplikasi Anda. Hasilnya akan terlihat seperti ini:
Signature Hash:
ca9fc964db7e0c2938778f4559946833e7a8cfde0f3eaa07650766d4764e86c4
Pemilik kemampuan menggunakan info ini untuk menghasilkan file Deskriptor kemampuan kustom yang Ditandatangani dan mengirim file ini ke pengembang aplikasi.
Pengembang aplikasi dapat terus mengembangkan aplikasi dengan kemampuan kustom dalam mode pengembang sambil menunggu pemilik kemampuan menyetujui permintaan. Misalnya, gunakan yang berikut ini di SCCD pada PC desktop dalam Mode Pengembang:
Entri katalog di SCCD.
<Catalog>FFFF</Catalog>
Hash Tanda Tangan Sertifikat dalam entri entitas resmi di SCCD. Meskipun tidak diberlakukan atau divalidasi, harap letakkan urutan 64-char.
<AuthorizedEntity AppPackageFamilyName="MicrosoftHSATest.Microsoft.SDKSamples.Hsa.CPP_q536wpkpf5cy2" CertificateSignatureHash="ca9fc964db7e0c2938778f4559946833e7a8cfde0f3eaa07650766d4764e86c4"></AuthorizedEntity>
Menambahkan kemampuan kustom ke Manifes Paket Aplikasi
Selanjutnya, ubah file sumber manifes paket aplikasi Anda (Package.appxmanifest
) untuk menyertakan atribut kemampuan.
<?xml version="1.0" encoding="utf-8"?>
<Package
...
xmlns:uap4="http://schemas.microsoft.com/appx/manifest/uap/windows10/4">
...
<Capabilities>
<uap4:CustomCapability Name="CompanyName.customCapabilityName_PublisherID"/>
</Capabilities>
</Package>
Kemudian salin file SCCD ke akar paket paket appx. Di penjelajah solusi Visual Studio, klik kanan pada "project-> Add -> Existing Item..." untuk menambahkan SCCD ke proyek Anda.
Tandai SCCD sebagai konten build dengan mengklik kanan pada file SCCD dan mengubah Konten menjadi True. Untuk proyek C#, gunakan properti Build Action = Content
, dan untuk proyek JavaScript, gunakan Package Action = Content
.
Terakhir, klik kanan proyek, pilih Simpan, lalu Buat Paket Aplikasi.
Tidak ada dukungan untuk aplikasi UWP dengan kemampuan kustom pada platform seluler.
Menginstal Aplikasi
Untuk menginstal aplikasi UWP sebelumnya dengan kemampuan kustom, gunakan DISM - Deployment Image Servicing and Management.
Pemecahan Masalah
Saat komputer target berada dalam Mode Pengembang, Anda dapat mencoba langkah-langkah berikut untuk men-debug kegagalan pendaftaran aplikasi:
Hapus entri kemampuan kustom dari manifes AppX Anda.
Buat aplikasi Anda dan sebarkan.
Di jendela PowerShell, ketik
Get-AppxPackage
.Cari aplikasi Anda dalam daftar dan verifikasi nama keluarga paket yang tepat untuk aplikasi Anda.
Perbarui SCCD Anda dengan nama keluarga paket.
Tambahkan entri kemampuan kustom kembali ke manifes AppX Anda.
Membangun kembali dan menyebarkan.
Lihat Juga
Aplikasi Dukungan Perangkat Keras (HSA): Langkah-langkah untuk Pengembang Driver
Aktifkan perangkat Anda untuk pengembangan
Mulai mengembangkan driver Windows
Memasangkan driver dengan aplikasi Platform Windows Universal (UWP)