Apa itu aplikasi Platform Windows Universal (UWP)?
UWP adalah salah satu dari banyak cara untuk membuat aplikasi klien untuk Windows.
Catatan
Jika Anda mulai mengembangkan aplikasi Windows, kami sarankan Anda mempertimbangkan untuk menggunakan SDK Aplikasi Windows, dan WinUI daripada UWP. Meskipun masih didukung, UWP tidak sedang dalam pengembangan aktif. Silakan lihat Mulai mengembangkan aplikasi Windows untuk informasi selengkapnya.
Untuk mengunduh alat yang Anda perlukan untuk mulai membuat aplikasi Windows, lihat Menginstal alat untuk SDK Aplikasi Windows, lalu menulis aplikasi pertama Anda.
Di mana UWP sesuai dengan cerita pengembangan Microsoft?
UWP adalah salah satu pilihan untuk membuat aplikasi yang berjalan di perangkat Windows 10 dan Windows 11, dan dapat dikombinasikan dengan platform lain. Aplikasi UWP dapat menggunakan api Win32 dan kelas .NET (lihat SET API untuk aplikasi UWP, Dll untuk aplikasi UWP, dan .NET untuk aplikasi UWP).
Fitur aplikasi UWP
Aplikasi UWP adalah:
- Aman: Aplikasi UWP mendeklarasikan sumber daya perangkat dan data mana yang mereka akses. Pengguna harus mengotorisasi akses tersebut.
- Dapat menggunakan API umum di semua perangkat yang menjalankan Windows.
- Mampu menggunakan kemampuan khusus perangkat dan mengadaptasi UI ke ukuran layar perangkat, resolusi, dan DPI yang berbeda.
- Tersedia dari Microsoft Store di semua perangkat (atau hanya yang Anda tentukan) yang berjalan pada Windows 10 atau Windows 11. Microsoft Store menyediakan beberapa cara untuk menghasilkan uang di aplikasi Anda.
- Dapat dipasang dan dihapus instalasinya tanpa risiko pada mesin atau menimbulkan "mesin membusuk".
- Menarik: gunakan petak peta langsung, pemberitahuan push, dan aktivitas pengguna yang berinteraksi dengan Windows Timeline dan Cortana's Pick Up Where I Left Off, untuk melibatkan pengguna.
- Dapat diprogram dalam C#, C++, Visual Basic, dan JavaScript. Untuk UI, gunakan WinUI, XAML, HTML, atau DirectX.
Mari kita lihat ini secara lebih rinci.
Mengamankan
Aplikasi UWP mendeklarasikan dalam manifes kemampuan perangkat yang mereka butuhkan seperti akses ke mikrofon, lokasi, Webcam, perangkat USB, file, dan sebagainya. Pengguna harus mengakui dan mengotorisasi akses tersebut sebelum aplikasi diberikan kemampuan.
Permukaan API umum di semua perangkat
Windows 10 memperkenalkan Platform Windows Universal (UWP), yang menyediakan platform aplikasi umum di setiap perangkat yang menjalankan Windows. API inti UWP sama di semua perangkat Windows. Jika aplikasi Anda hanya menggunakan API inti, aplikasi tersebut akan berjalan pada perangkat Windows apa pun terlepas dari apakah Anda menargetkan PC desktop, Xbox, headset mixed-reality, dan sebagainya.
Aplikasi UWP yang ditulis dalam C++/WinRT memiliki akses ke API Win32 yang merupakan bagian dari UWP. API Win32 ini diimplementasikan oleh semua perangkat Windows.
Ekstensi SDK mengekspos kemampuan unik dari jenis perangkat tertentu
Jika Anda menargetkan API universal, aplikasi Anda dapat berjalan di semua perangkat yang menjalankan Windows 10 atau yang lebih baru. Tetapi jika Anda ingin aplikasi UWP Anda memanfaatkan API khusus perangkat, maka Anda juga dapat melakukannya.
SDK ekstensi memungkinkan Anda memanggil API khusus untuk perangkat yang berbeda. Misalnya, jika aplikasi UWP Anda menargetkan perangkat IoT, Anda dapat menambahkan SDK ekstensi IoT ke proyek Anda untuk menargetkan fitur khusus untuk perangkat IoT. Untuk informasi selengkapnya tentang menambahkan SDK ekstensi, lihat bagian SDK Ekstensi di Pemrograman dengan SDK ekstensi.
Anda dapat menulis aplikasi sehingga Anda mengharapkannya berjalan hanya pada jenis perangkat tertentu, lalu membatasi distribusinya dari Microsoft Store hanya untuk jenis perangkat tersebut. Atau, Anda dapat menguji keberadaan API secara kondisional pada runtime dan menyesuaikan perilaku aplikasi Anda. Untuk informasi selengkapnya, lihat bagian Menulis kode di Pemrograman dengan ekstensi SDK.
Kontrol dan input adaptif
Elemen UI merespons ukuran dan DPI layar yang dijalankan aplikasi dengan menyesuaikan tata letak dan skalanya. Aplikasi UWP bekerja dengan baik dengan beberapa jenis input seperti keyboard, mouse, sentuhan, pena, dan pengontrol game. Jika Anda perlu menyesuaikan UI lebih lanjut dengan ukuran layar atau perangkat tertentu, panel tata letak dan alat baru membantu Anda merancang UI yang dapat beradaptasi dengan berbagai perangkat dan faktor bentuk yang mungkin dijalankan aplikasi Anda.
Windows membantu Anda menargetkan UI Anda ke beberapa perangkat dengan fitur berikut:
- Kontrol universal dan panel tata letak membantu Anda mengoptimalkan UI untuk resolusi layar perangkat. Misalnya, kontrol seperti tombol dan slider secara otomatis beradaptasi dengan ukuran layar perangkat dan kepadatan DPI. Panel tata letak membantu menyesuaikan tata letak konten berdasarkan ukuran layar. Penskalakan adaptif menyesuaikan dengan resolusi dan perbedaan DPI di seluruh perangkat.
- Penanganan input umum memungkinkan Anda menerima input melalui sentuhan, pena, mouse, keyboard, atau pengontrol permainan.
- Alat yang membantu Anda merancang UI yang dapat beradaptasi dengan resolusi layar yang berbeda.
Beberapa aspek UI aplikasi Anda akan secara otomatis beradaptasi di seluruh perangkat. Namun, desain pengalaman pengguna aplikasi Anda mungkin perlu beradaptasi tergantung pada perangkat tempat aplikasi berjalan. Misalnya, aplikasi foto dapat menyesuaikan UI-nya saat berjalan pada perangkat kecil yang genggam untuk memastikan bahwa penggunaan sangat ideal untuk penggunaan satu tangan. Saat aplikasi foto berjalan di komputer desktop, UI harus beradaptasi untuk memanfaatkan ruang layar tambahan.
Ada satu toko untuk semua perangkat
Penyimpanan aplikasi terpadu membuat aplikasi Anda tersedia di perangkat Windows seperti pc, tablet, Xbox, HoloLens, Surface Hub, dan perangkat Internet of Things (IoT). Anda dapat mengirimkan aplikasi ke toko dan membuatnya tersedia untuk semua jenis perangkat, atau hanya yang Anda pilih. Anda mengirimkan dan mengelola semua aplikasi untuk perangkat Windows di satu tempat. Memiliki aplikasi desktop C++ yang ingin Anda modernisasi dengan fitur UWP dan menjual di toko Microsoft? Tidak apa-apa juga.
Aplikasi UWP terintegrasi dengan Application Insights untuk telemetri dan analitik terperinci—alat penting untuk memahami pengguna Anda dan meningkatkan aplikasi Anda.
Aplikasi UWP dapat dimas dengan MSIX dan didistribusikan melalui Microsoft Store, atau dengan cara lain. MSIX memungkinkan aplikasi diperbarui terlepas dari bagaimana aplikasi didistribusikan, lihat Memperbarui paket aplikasi yang diterbitkan non-Store dari kode Anda.
Memonetisasi aplikasi Anda
Anda dapat memilih cara memonetisasi aplikasi. Ada sejumlah cara untuk menghasilkan uang dengan aplikasi Anda. Yang perlu Anda lakukan adalah memilih yang paling sesuai untuk Anda, misalnya:
- Unduhan berbayar adalah opsi paling sederhana. Sebutkan saja harganya.
- Uji coba memungkinkan pengguna mencoba aplikasi Anda sebelum membelinya, memberikan kemudahan penemuan dan konversi yang lebih mudah daripada opsi "freemium" yang lebih tradisional.
- Harga jual untuk memberikan insentif kepada pengguna.
- Pembelian dalam aplikasi.
Memberikan info real-time yang relevan kepada pengguna Anda agar mereka tetap kembali
Ada berbagai cara untuk membuat pengguna tetap terlibat dengan aplikasi UWP Anda:
- Petak peta langsung dan petak layar kunci yang menampilkan info yang relevan secara kontekstual dan tepat waktu dari aplikasi Anda secara sekilas.
- Pemberitahuan push yang memberikan pemberitahuan real-time ke perhatian pengguna Anda.
- Aktivitas Pengguna memungkinkan pengguna untuk mengambil tempat mereka pergi di aplikasi Anda, bahkan di seluruh perangkat.
- Pusat Tindakan mengatur pemberitahuan dari aplikasi Anda.
- Eksekusi dan pemicu latar belakang membuat aplikasi Anda beraksi saat pengguna membutuhkannya.
- Aplikasi Anda dapat menggunakan perangkat LE suara dan Bluetooth untuk membantu pengguna berinteraksi dengan dunia di sekitar mereka.
- Integrasikan Cortana untuk menambahkan kemampuan perintah suara ke aplikasi Anda.
Gunakan bahasa yang sudah Anda ketahui
Aplikasi UWP menggunakan Windows Runtime, API asli yang disediakan oleh sistem operasi. API ini diimplementasikan di C++ dan didukung di C#, Visual Basic, C++, dan JavaScript. Beberapa opsi untuk menulis aplikasi UWP meliputi:
- UI XAML dan C#, VB, atau C++
- DirectX UI dan C++
- JavaScript dan HTML
- WinUI
Tautan untuk membantu Anda memulai
Mari kita siapkan
Lihat Menyiapkan untuk mengunduh alat yang Anda butuhkan untuk mulai membuat aplikasi, lalu tulis aplikasi pertama Anda.
Mendesain aplikasi Anda
Sistem desain Microsoft diberi nama Fasih. Sistem Fluent Design adalah serangkaian fitur UWP yang dikombinasikan dengan praktik terbaik untuk membuat aplikasi yang berkinerja indah di semua jenis perangkat yang didukung Windows. Pengalaman fasih beradaptasi dan terasa alami pada perangkat dari tablet ke laptop, dari PC hingga televisi, dan pada perangkat realitas virtual. Lihat Sistem Fluent Design untuk aplikasi UWP untuk pengenalan Desain Fasih.
Desain yang baik adalah proses memutuskan bagaimana pengguna akan berinteraksi dengan aplikasi Anda, selain tampilan dan fungsinya. Pengalaman pengguna memainkan peran besar dalam menentukan seberapa bahagia orang akan bersama aplikasi Anda, jadi jangan melompati langkah ini. Dasar-dasar desain memperkenalkan Anda untuk merancang aplikasi Universal Windows. Lihat primer perangkat untuk membantu Anda memikirkan pengalaman interaksi menggunakan aplikasi Anda pada semua faktor bentuk yang berbeda yang ingin Anda targetkan.
Selain interaksi di perangkat yang berbeda, rencanakan aplikasi Anda untuk merangkul manfaat bekerja di beberapa perangkat. Contohnya:
Desain alur kerja Anda menggunakan dasar-dasar desain Navigasi untuk aplikasi UWP untuk mengakomodasi perangkat seluler, layar kecil, dan layar besar. Letakkan antarmuka pengguna Anda untuk merespons ukuran dan resolusi layar yang berbeda.
Pertimbangkan bagaimana Anda akan mengakomodasi beberapa jenis input. Lihat Panduan interaksi untuk mempelajari bagaimana pengguna dapat berinteraksi dengan aplikasi Anda dengan menggunakan interaksi Ucapan, Sentuhan, keyboard Sentuh, dan lainnya. Atau, lihat Panduan untuk input teks dan teks untuk pengalaman interaksi yang lebih tradisional.
Menambahkan layanan
- Gunakan Azure Cloud Services untuk menyinkronkan di seluruh perangkat.
- Pelajari cara menyambungkan ke layanan web untuk mendukung pengalaman aplikasi Anda.
- Sertakan pemberitahuan Push dan pembelian dalam aplikasi dalam perencanaan Anda. Fitur-fitur ini harus berfungsi di seluruh perangkat.
Mengirimkan aplikasi Anda ke Bursa
Pusat Mitra memungkinkan Anda mengelola dan mengirimkan semua aplikasi untuk perangkat Windows di satu tempat. Lihat Menerbitkan aplikasi dan game Windows untuk mempelajari cara mengirimkan aplikasi Anda untuk publikasi di Microsoft Store.
Fitur baru menyederhanakan proses sekaligus memberi Anda lebih banyak kontrol. Anda juga akan menemukan laporan analitik terperinci yang menggabungkan detail pembayaran, cara untuk mempromosikan aplikasi Anda dan berinteraksi dengan pelanggan Anda, dan banyak lagi.
Untuk materi pengantar lainnya, lihat Pengantar Membangun Aplikasi Windows untuk Perangkat Windows 10
Topik yang lebih canggih
- Pelajari cara menggunakan Aktivitas Pengguna sehingga aktivitas pengguna di aplikasi Anda muncul di Windows Timeline dan fitur Pick Up Where I Left Off Cortana.
- Pelajari cara menggunakan Petak Peta, lencana, dan pemberitahuan untuk aplikasi UWP.
- Untuk daftar lengkap API Win32 yang tersedia untuk aplikasi UWP, lihat SET API untuk aplikasi UWP dan Dll untuk aplikasi UWP.
- Lihat Aplikasi Universal Windows di .NET untuk gambaran umum penulisan aplikasi UWP .NET.
- Untuk daftar jenis .NET yang dapat Anda gunakan di aplikasi UWP, lihat .NET untuk aplikasi UWP
- Mengkompilasi aplikasi dengan .NET Native
- Pelajari cara menambahkan pengalaman modern untuk pengguna Windows ke aplikasi desktop yang ada, dan mendistribusikannya di Microsoft Store dengan Desktop Bridge.
Bagaimana Platform Windows Universal berkaitan dengan WINDOWS Runtime API
Jika Anda membangun aplikasi Platform Windows Universal (UWP), maka Anda bisa mendapatkan banyak jarak tempuh dan kenyamanan dari memperlakukan istilah "Platform Windows Universal (UWP)" dan "Windows Runtime (WinRT)" karena lebih atau kurang identik. Tetapi dimungkinkan untuk melihat di bawah sampul teknologi, dan menentukan apa perbedaan antara ide-ide tersebut. Jika Anda ingin tahu tentang itu, maka bagian terakhir ini adalah untuk Anda.
Windows Runtime, dan WinRT API, adalah evolusi API Windows. Awalnya, Windows diprogram melalui API Win32 bergaya datar dan bergaya C. Kepada mereka ditambahkan API COM (DirectX menjadi contoh yang menonjol). Formulir Windows, WPF, .NET, dan bahasa terkelola membawa cara mereka sendiri untuk menulis aplikasi Windows, dan rasa teknologi API mereka sendiri. Windows Runtime adalah, di bawah sampul, tahap com berikutnya. Pada lapisan antarmuka biner aplikasi (ABI) aktual, akarnya di COM menjadi terlihat. Tetapi Windows Runtime dirancang untuk dapat dipanggil dari berbagai bahasa pemrograman yang berbeda. Dan dapat dipanggil dengan cara yang sangat alami untuk masing-masing bahasa tersebut. Untuk tujuan ini, akses ke Windows Runtime disediakan melalui apa yang dikenal sebagai proyeksi bahasa. Ada proyeksi bahasa Windows Runtime ke dalam C#, ke Visual Basic, ke C++standar, ke JavaScript, dan sebagainya. Selain itu, setelah dikemas dengan tepat (lihat Desktop Bridge), Anda dapat memanggil WINRT API dari aplikasi yang dibangun dalam salah satu dari berbagai model aplikasi: Win32, .NET, WinForms, dan WPF.
Dan, tentu saja, Anda dapat memanggil API WinRT dari aplikasi UWP Anda. UWP adalah model aplikasi yang dibangun di atas Windows Runtime. Secara teknis, model aplikasi UWP didasarkan pada CoreApplication, meskipun detail tersebut mungkin disembunyikan dari Anda, tergantung pada pilihan bahasa pemrograman Anda. Seperti yang dijelaskan topik ini, dari sudut pandang proposisi nilai, UWP meminjamkan dirinya untuk menulis satu biner yang dapat, jika Anda memilih, diterbitkan ke Microsoft Store dan berjalan pada salah satu dari berbagai faktor bentuk perangkat. Jangkauan perangkat aplikasi UWP Anda bergantung pada subset API Windows Runtime yang Anda batasi untuk memanggil aplikasi, atau yang Anda panggil secara kondisional.
Mudah-mudahan, bagian ini telah berhasil menggambarkan perbedaan antara teknologi yang mendasari Windows Runtime API, dan mekanisme dan nilai bisnis Platform Windows Universal.