Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Panduan ini menunjukkan cara menggunakan winapp CLI dengan aplikasi Rust untuk men-debug dengan identitas paket dan mengemas aplikasi Anda sebagai MSIX.
Identitas paket adalah konsep inti dalam model Windows app. Ini memungkinkan aplikasi Anda untuk mengakses API Windows tertentu (seperti Pemberitahuan, Keamanan, API AI, dll.), merasakan pengalaman pemasangan/penghapusan instalasi yang lebih bersih, dan banyak lagi.
Prasyarat
Rust Toolchain: Instal Rust menggunakan rustup atau winget:
winget install Rustlang.Rustup --source wingetwinapp CLI: Instal
winappalat melalui winget:winget install microsoft.winappcli --source winget
1. Buat aplikasi Rust baru
cargo new rust-app
cd rust-app
Jalankan untuk memastikan semuanya berfungsi:
cargo run
2. Perbarui kode untuk memeriksa identitas
Tambahkan dependensi windows ke Cargo.toml.
cargo add windows --features ApplicationModel
Ganti isi dari src/main.rs:
use windows::ApplicationModel::Package;
fn main() {
match Package::Current() {
Ok(package) => {
match package.Id() {
Ok(id) => match id.FamilyName() {
Ok(name) => println!("Package Family Name: {}", name),
Err(e) => println!("Error getting family name: {}", e),
},
Err(e) => println!("Error getting package ID: {}", e),
}
}
Err(_) => println!("Not packaged"),
}
}
3. Jalankan tanpa identitas
cargo run
Anda akan melihat "Tidak dibungkus".
4. Inisialisasi project dengan winapp CLI
winapp init
Ketika diminta:
- Nama paket: Tekan Enter untuk menerima default (rust-app)
- Nama penerbit: Tekan Enter untuk menerima pengaturan standar atau masukkan nama Anda
- Versi: Tekan Enter untuk menerima 1.0.0.0
- Titik masuk: Tekan Enter untuk menerima default (rust-app.exe)
- Pengaturan SDK: Pilih "Jangan mengatur SDK"
Ini membuat appxmanifest.xml dan Assets folder untuk identitas aplikasi Anda.
5. Debug menggunakan identitas
Buat executable:
cargo buildTerapkan identitas debug:
winapp create-debug-identity .\target\debug\rust-app.exeJalankan executable (jangan gunakan
cargo runkarena mungkin dibangun kembali):.\target\debug\rust-app.exe
Anda harus melihat:
Package Family Name: rust-app_12345abcde
6. Paket dengan MSIX
Bangun untuk rilis:
cargo build --releaseSiapkan direktori paket:
mkdir dist copy .\target\release\rust-app.exe .\dist\Buat sertifikat pengembangan:
winapp cert generate --if-exists skipPaket dan tanda tangan:
winapp pack .\dist --cert .\devcert.pfxInstal sertifikat (jalankan sebagai administrator):
winapp cert install .\devcert.pfxInstal dan jalankan:
Add-AppxPackage .\rust-app.msix rust-app
Tip
- Tanda tangani MSIX Anda dengan sertifikat penandatanganan kode dari Otoritas Sertifikat untuk distribusi produksi.
- Microsoft Store menandatangani MSIX untuk Anda, tidak perlu menandatangani sebelum pengiriman.
- Anda mungkin memerlukan paket MSIX terpisah untuk setiap arsitektur yang Anda dukung (x64, Arm64).
Topik terkait
Windows developer