Menerbitkan aplikasi Mac Catalyst untuk distribusi Mac App Store
Pendekatan paling umum untuk mendistribusikan aplikasi Mac Catalyst kepada pengguna adalah melalui Mac App Store. Aplikasi dikirimkan ke Mac App Store melalui alat online bernama App Store Koneksi. Hanya pengembang yang termasuk dalam Program Pengembang Apple yang memiliki akses ke alat ini. Anggota Program Perusahaan Pengembang Apple tidak memiliki akses. Semua app yang dikirimkan ke Mac App Store memerlukan persetujuan dari Apple.
Mendistribusikan aplikasi Mac Catalyst mengharuskan aplikasi disediakan menggunakan profil provisi. Profil provisi adalah file yang berisi informasi penandatanganan kode, serta identitas aplikasi dan mekanisme distribusi yang dimaksudkan.
Untuk mendistribusikan aplikasi Mac Catalyst .NET Multi-platform App UI (.NET MAUI), Anda harus membuat profil provisi distribusi khusus untuk aplikasi tersebut. Profil ini memungkinkan aplikasi ditandatangani secara digital untuk rilis sehingga dapat diinstal di Mac. Profil provisi distribusi berisi ID Aplikasi dan sertifikat distribusi. Anda harus membuat sertifikat distribusi untuk mengidentifikasi diri Anda atau organisasi Anda, jika Anda belum memilikinya. Selain itu, Anda harus membuat sertifikat penginstal Mac untuk menandatangani paket alat penginstal aplikasi Anda untuk pengiriman ke Mac App Store.
Proses provisi aplikasi .NET MAUI Mac Catalyst untuk distribusi melalui Mac App Store adalah sebagai berikut:
- Buat permintaan penandatanganan sertifikat. Untuk informasi selengkapnya, lihat Membuat permintaan penandatanganan sertifikat.
- Membuat sertifikat distribusi. Untuk informasi selengkapnya, lihat Membuat sertifikat distribusi.
- Buat sertifikat penginstal. Untuk informasi selengkapnya, lihat Membuat sertifikat penginstal.
- Membuat ID Aplikasi. Untuk informasi selengkapnya, lihat Membuat ID Aplikasi.
- Mengonfigurasi ID Aplikasi. Untuk informasi selengkapnya, lihat Mengonfigurasi ID Aplikasi.
- Buat profil provisi. Untuk informasi selengkapnya, lihat Membuat profil provisi.
- Unduh profil provisi Anda. Untuk informasi selengkapnya, lihat Mengunduh profil provisi Anda di Xcode.
Kemudian, setelah provisi selesai, Anda harus menyiapkan aplikasi untuk dipublikasikan lalu menerbitkannya dengan proses berikut:
- Tambahkan hak yang diperlukan ke aplikasi Anda. Untuk informasi selengkapnya, lihat Menambahkan pemberian izin.
- Perbarui file Info.plist aplikasi. Untuk informasi selengkapnya, lihat Memperbarui Info.plist.
- Terbitkan aplikasi Anda menggunakan baris perintah. Untuk informasi selengkapnya, lihat Menerbitkan menggunakan baris perintah.
Buat permintaan penandatanganan sertifikat
Sebelum membuat sertifikat distribusi, Anda harus terlebih dahulu membuat permintaan penandatanganan sertifikat (CSR) di Akses Rantai Kunci di Mac:
Di Mac Anda, luncurkan Akses Rantai Kunci.
Di Akses Rantai Kunci, pilih item menu Asisten > Sertifikat Akses > Rantai Kunci Minta Sertifikat dari Otoritas Sertifikat... .
Dalam dialog Asisten Sertifikat, masukkan alamat email di bidang Alamat Email Pengguna.
Dalam dialog Asisten Sertifikat, masukkan nama untuk kunci di bidang Nama Umum.
Dalam dialog Asisten Sertifikat, biarkan bidang Alamat Email CA kosong.
Dalam dialog Asisten Sertifikat, pilih tombol radio Disimpan ke disk dan pilih Lanjutkan:
Simpan permintaan penandatanganan sertifikat ke lokasi yang diketahui.
Dalam dialog Asisten Sertifikat, pilih tombol Selesai.
Tutup Akses Rantai Kunci.
Membuat sertifikat distribusi
CSR memungkinkan Anda membuat sertifikat distribusi, yang mengonfirmasi identitas Anda. Sertifikat distribusi harus dibuat menggunakan ID Apple untuk Akun Pengembang Apple Anda:
Di browser web, masuk ke Akun Pengembang Apple Anda.
Di Akun Pengembang Apple Anda, pilih tab Sertifikat, ID , & Profil .
Pada halaman Sertifikat, Pengidentifikasi & Profil , pilih tombol + untuk membuat sertifikat baru.
Pada halaman Buat Sertifikat Baru, pilih tombol radio Distribusi Apple sebelum memilih tombol Lanjutkan :
Pada halaman Buat Sertifikat Baru, pilih Pilih File:
Dalam dialog Pilih File untuk Diunggah, pilih file permintaan sertifikat yang sebelumnya Anda buat (file dengan
.certSigningRequest
ekstensi file) lalu pilih Unggah.Pada halaman Buat Sertifikat Baru, pilih tombol Lanjutkan :
Pada halaman Unduh Sertifikat Anda, pilih tombol Unduh :
File sertifikat (file dengan
.cer
ekstensi) akan diunduh ke lokasi yang Anda pilih.Di Mac Anda, klik dua kali file sertifikat yang diunduh untuk menginstal sertifikat ke rantai kunci Anda. Sertifikat muncul di kategori Sertifikat Saya di Akses Rantai Kunci, dan dimulai dengan Distribusi Apple:
Catatan
Catat nama sertifikat lengkap di Akses Rantai Kunci. Ini akan diperlukan saat menandatangani aplikasi Anda.
Membuat sertifikat penginstal
CSR memungkinkan Anda membuat sertifikat penginstal, yang diperlukan untuk menandatangani paket alat penginstal aplikasi Anda untuk pengiriman ke Mac App Store. Sertifikat penginstal harus dibuat menggunakan ID Apple untuk Akun Pengembang Apple Anda:
Di Akun Pengembang Apple Anda, pilih tab Sertifikat, ID , & Profil .
Pada halaman Sertifikat, Pengidentifikasi & Profil , pilih tombol + untuk membuat sertifikat baru.
Pada halaman Buat Sertifikat Baru, pilih tombol radio Distribusi Penginstal Mac sebelum memilih tombol Lanjutkan :
Pada halaman Buat Sertifikat Baru, pilih Pilih File:
Dalam dialog Pilih File untuk Diunggah, pilih file permintaan sertifikat yang sebelumnya Anda buat (file dengan
.certSigningRequest
ekstensi file) lalu pilih Unggah.Pada halaman Buat Sertifikat Baru, pilih tombol Lanjutkan :
Pada halaman Unduh Sertifikat Anda, pilih tombol Unduh :
File sertifikat (file dengan
.cer
ekstensi) akan diunduh ke lokasi yang Anda pilih.Di Mac Anda, klik dua kali file sertifikat yang diunduh untuk menginstal sertifikat ke rantai kunci Anda. Sertifikat muncul di kategori Sertifikat Saya di Akses Rantai Kunci, dan dimulai dengan Penginstal Pengembang Mac Pihak ke-3:
Catatan
Catat nama sertifikat lengkap di Akses Rantai Kunci. Ini akan diperlukan saat menandatangani aplikasi Anda.
Membuat profil distribusi
Profil provisi distribusi memungkinkan aplikasi .NET MAUI Mac Catalyst Anda ditandatangani secara digital untuk rilis, sehingga dapat diinstal di Mac lain. Profil provisi untuk distribusi Mac App Store berisi ID Aplikasi dan sertifikat distribusi.
Membuat ID Aplikasi
ID Aplikasi diperlukan untuk mengidentifikasi aplikasi yang Anda distribusikan. ID Aplikasi mirip dengan string REVERSE-DNS, yang secara unik mengidentifikasi aplikasi, dan harus identik dengan pengidentifikasi bundel untuk aplikasi Anda. Anda dapat menggunakan ID Aplikasi yang sama dengan yang Anda gunakan saat menyebarkan aplikasi ke perangkat untuk pengujian.
Ada dua jenis ID Aplikasi:
- Kartubebas. ID Aplikasi wildcard memungkinkan Anda menggunakan satu ID Aplikasi untuk mencocokkan beberapa aplikasi, dan biasanya mengambil formulir
com.domainname.*
. ID Aplikasi wildcard dapat digunakan untuk mendistribusikan beberapa aplikasi, dan harus digunakan untuk aplikasi yang tidak mengaktifkan kemampuan khusus aplikasi. - Eksplisit. ID Aplikasi eksplisit unik untuk satu aplikasi, dan biasanya mengambil formulir
com.domainname.myid
. ID Aplikasi eksplisit memungkinkan distribusi satu aplikasi, dengan pengidentifikasi bundel yang cocok. ID Aplikasi Eksplisit biasanya digunakan untuk aplikasi yang mengaktifkan kemampuan khusus aplikasi seperti Apple Pay, atau Game Center. Untuk informasi selengkapnya tentang kemampuan, lihat Kemampuan.
Untuk membuat ID Aplikasi baru:
Di Akun Pengembang Apple Anda, navigasikan ke Sertifikat, ID , & Profil.
Pada halaman Sertifikat, Pengidentifikasi & Profil , pilih tab Pengidentifikasi .
Pada halaman Pengidentifikasi , pilih tombol + untuk membuat ID Aplikasi baru.
Pada halaman Daftarkan pengidentifikasi baru, pilih tombol radio ID Aplikasi sebelum memilih tombol Lanjutkan :
Pada halaman Daftarkan pengidentifikasi baru, pilih Aplikasi sebelum memilih tombol Lanjutkan :
Pada halaman Daftarkan ID Aplikasi, masukkan deskripsi, dan pilih tombol radio Id Bundel Eksplisit atau Wildcard . Kemudian, masukkan ID Bundel untuk aplikasi Anda dalam format DS terbalik:
Penting
ID Bundel yang Anda masukkan harus sesuai dengan pengidentifikasi Bundel dalam file Info.plist di proyek aplikasi Anda.
Pengidentifikasi bundel untuk aplikasi .NET MAUI disimpan dalam file proyek sebagai properti ID Aplikasi:
- Di Visual Studio, di Penjelajah Solusi klik kanan pada proyek aplikasi .NET MAUI Anda dan pilih Properti. Kemudian, navigasikan ke tab Umum Bersama > MAUI. Bidang ID Aplikasi mencantumkan pengidentifikasi bundel.
- Di Visual Studio untuk Mac, di Jendela Solusi, klik kanan proyek aplikasi .NET MAUI Anda dan pilih Properti. Kemudian, di jendela Properti Proyek, pilih tab Buat > Info Aplikasi. Bidang ID Aplikasi mencantumkan pengidentifikasi bundel.
Ketika nilai bidang ID Aplikasi diperbarui, nilai pengidentifikasi Bundel di Info.plist akan diperbarui secara otomatis.
Pada halaman Daftarkan ID Aplikasi, pilih kemampuan apa pun yang digunakan aplikasi. Kemampuan apa pun harus dikonfigurasi baik di halaman ini maupun di file Entitlements.plist di proyek aplikasi Anda. Untuk informasi selengkapnya, lihat Kapabilitas dan Pemberian Izin.
Pada halaman Daftarkan ID Aplikasi, pilih tombol Lanjutkan .
Pada halaman Konfirmasi ID Aplikasi Anda, pilih tombol Daftar .
Mengonfigurasi ID Aplikasi
Secara default, aplikasi Mac Catalyst menggunakan ID bundel yang sama dengan aplikasi iOS sehingga Anda dapat menawarkan aplikasi bersama-sama sebagai pembelian universal di Mac App Store. Atau, Anda dapat menentukan ID bundel unik untuk menawarkan aplikasi sebagai produk terpisah.
Untuk mengonfigurasi ID Aplikasi:
Di Akun Pengembang Apple Anda, navigasikan ke Sertifikat, ID , & Profil.
Pada halaman Sertifikat, Pengidentifikasi & Profil , pilih tab Pengidentifikasi .
Pada halaman Pengidentifikasi , pilih ID Aplikasi yang baru saja Anda buat.
Pada halaman Edit Konfigurasi ID Aplikasi Anda, gulir ke bagian bawah halaman dan aktifkan kotak centang Kemampuan Katalis Mac. Lalu pilih tombol Konfigurasikan :
Di popup Konfigurasi ID Bundel untuk Mac Catalyst , pilih tombol radio Gunakan ID Aplikasi Mac yang ada. Di menu drop-down ID Aplikasi, pilih ID Aplikasi untuk app iOS mitra Mac Catalyst Anda, atau ID Aplikasi yang telah Anda buat jika Anda menawarkan app Mac Catalyst sebagai produk terpisah. Kemudian, pilih tombol Simpan:
Di halaman Edit Konfigurasi ID Aplikasi Anda, pilih tombol Simpan :
Di popup Ubah Kemampuan Aplikasi, pilih tombol Konfirmasi :
Membuat profil penyebaran
Setelah ID Aplikasi dibuat dan dikonfigurasi, Anda harus membuat profil provisi distribusi. Profil ini memungkinkan aplikasi ditandatangani secara digital untuk rilis sehingga dapat diinstal di Mac.
Untuk membuat profil provisi untuk distribusi Mac App Store:
Di halaman Sertifikat, Pengidentifikasi , & Profil Akun Pengembang Apple Anda, pilih tab Profil .
Di tab Profil , klik tombol + untuk membuat profil baru.
Di halaman Daftarkan Profil Provisi Baru, pilih tombol radio Mac App Store sebelum mengklik tombol Lanjutkan :
Di halaman Buat Profil Provisi, pilih tombol radio Mac . Kemudian, di menu drop-down ID Aplikasi, pilih ID Aplikasi yang sebelumnya Anda buat sebelum mengklik tombol Lanjutkan :
Di halaman Buat Profil Provisi, pilih tombol radio yang sesuai dengan sertifikat distribusi Anda sebelum mengklik tombol Lanjutkan :
Di halaman Buat Profil Provisi, masukkan nama untuk profil provisi sebelum mengklik tombol Hasilkan :
Catatan
Catat nama profil provisi, karena akan diperlukan saat menandatangani aplikasi Anda.
Di halaman Buat Profil Provisi, klik tombol Unduh secara opsional untuk mengunduh profil provisi Anda.
Catatan
Anda tidak perlu mengunduh profil provisi Anda sekarang. Sebagai gantinya, Anda akan melakukan ini di Xcode.
Unduh profil provisi Anda di Xcode
Setelah membuat profil provisi di Akun Pengembang Apple, Xcode dapat mengunduhnya sehingga tersedia untuk menandatangani aplikasi Anda:
Di Mac Anda, luncurkan Xcode.
Di Xcode, pilih item menu Preferensi Xcode > ... .
Dalam dialog Preferensi, pilih tab Akun.
Di tab Akun , klik tombol + untuk menambahkan Akun Pengembang Apple Anda ke Xcode:
Di popup jenis akun, pilih ID Apple lalu klik tombol Lanjutkan :
Di popup masuk, masukkan ID Apple Anda dan klik tombol Berikutnya .
Di popup masuk, masukkan kata sandi ID Apple Anda dan klik tombol Berikutnya :
Di tab Akun , klik tombol Kelola Sertifikat... untuk memastikan bahwa sertifikat distribusi Anda telah diunduh.
Di tab Akun , klik tombol Unduh Profil Manual untuk mengunduh profil provisi Anda:
Tunggu hingga unduhan selesai lalu tutup Xcode.
Menambahkan hak
App Sandbox Apple membatasi akses ke sumber daya sistem dan data pengguna di app Mac, untuk berisi kerusakan jika aplikasi disusupi. Ini harus diaktifkan untuk aplikasi Mac Catalyst yang didistribusikan melalui Mac App Store.
Ini dapat dicapai dengan menambahkan file Entitlements.plist ke folder Platforms/MacCatalyst proyek aplikasi .NET MAUI Anda:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.app-sandbox</key>
<true/>
</dict>
</plist>
Penetapan Kotak Pasir Aplikasi didefinisikan menggunakan com.apple.security.app-sandbox
kunci, jenis boolean
. Untuk informasi tentang App Sandbox, lihat Melindungi data pengguna dengan App Sandbox di developer.apple.com. Untuk informasi tentang pemberian izin Kotak Pasir Aplikasi, lihat Pemberian Izin Kotak Pasir Aplikasi.
Jika aplikasi Anda membuka koneksi jaringan keluar, Anda juga harus menambahkan com.apple.security.network.client
kunci, jenis boolean
, ke file Entitlements.plist Anda:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.app-sandbox</key>
<true/>
<key>com.apple.security.network.client</key>
<true/>
</dict>
</plist>
Untuk informasi tentang pemberian izin koneksi jaringan keluar, lihat com.apple.security.network.client di developer.apple.com.
Perbarui Info.plist
Sebelum menerbitkan aplikasi, Anda harus memperbarui file Info.plist dengan informasi tambahan untuk memastikan bahwa aplikasi dapat diunggah ke Mac App Store, dan untuk membantu memastikan proses peninjauan Mac App Store yang lancar.
Tentukan idiom antarmuka pengguna
App Mac Catalyst dapat berjalan di idiom antarmuka pengguna iPad atau Mac:
- idiom antarmuka pengguna iPad memberi tahu macOS untuk menskalakan antarmuka pengguna aplikasi agar sesuai dengan lingkungan layar Mac sambil mempertahankan tampilan seperti iPad.
- Idiom antarmuka pengguna Mac tidak menskalakan antarmuka pengguna aplikasi agar sesuai dengan lingkungan tampilan Mac. Beberapa kontrol mengubah ukuran dan tampilannya, dan berinteraksi dengan mereka terasa identik dengan berinteraksi dengan
AppKit
kontrol.
Secara default, aplikasi .NET MAUI Mac Catalyst menggunakan idiom antarmuka pengguna iPad. Jika ini adalah perilaku yang Anda inginkan, pastikan bahwa file Info.plist aplikasi hanya menentukan 2 sebagai nilai UIDeviceFamily
kunci:
<key>UIDeviceFamily</key>
<array>
<integer>2</integer>
</array>
Untuk mengadopsi idiom antarmuka pengguna Mac, perbarui file Info.plist aplikasi untuk menentukan 6 sebagai nilai UIDeviceFamily
kunci:
<key>UIDeviceFamily</key>
<array>
<integer>6</integer>
</array>
Untuk informasi selengkapnya tentang idiom antarmuka pengguna Mac Catalyst, lihat Menentukan idiom UI untuk app Mac Catalyst Anda.
Mengatur bahasa dan wilayah default untuk aplikasi
Atur CFBundleDevelopmentRegion
kunci di Info.plist aplikasi Anda ke string
yang mewakili wilayah pengembangan asli pelokalan:
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
Nilai kunci harus menjadi pendesain bahasa, dengan pendesain wilayah opsional. Untuk informasi selengkapnya, lihat CFBundleDevelopmentRegion di developer.apple.com.
Mengatur kunci hak cipta
Atur NSHumanReadableCopyright
kunci di Info.plist aplikasi Anda ke string
yang mewakili pemberitahuan hak cipta yang dapat dibaca manusia untuk aplikasi Anda:
<key>NSHumanReadableCopyright</key>
<string>MyMauiApp © 2023</string>
Untuk informasi selengkapnya, lihat NSHumanReadableCopyright di developer.apple.com.
Mengatur kategori aplikasi
Kategori membantu pengguna menemukan aplikasi Anda di Mac App Store. Anda dapat mengatur kategori utama aplikasi di file Info.plist Anda:
<key>LSApplicationCategoryType</key>
<string>public.app-category.utilities</string>
Untuk informasi selengkapnya, lihat LSApplicationCategoryType di developer.apple.com.
Catatan
Kategori utama aplikasi Anda harus cocok dengan kategori utama yang Anda tetapkan di App Store Koneksi.
Mendeklarasikan penggunaan enkripsi aplikasi Anda
Jika aplikasi Anda menggunakan enkripsi, dan Anda berencana untuk mendistribusikannya di luar Amerika Serikat atau Kanada, aplikasi tersebut tunduk pada persyaratan kepatuhan ekspor AS. Setiap kali Anda mengirimkan versi aplikasi ke App Store Koneksi, aplikasi tersebut menjalani tinjauan kepatuhan peraturan ekspor enkripsi. Untuk menghindari App Store Koneksi mengajukan pertanyaan untuk memandu Anda melalui ulasan, Anda dapat memberikan informasi yang diperlukan dalam file Info.plist aplikasi Anda.
Ini dicapai dengan menambahkan ITSAppUsesNonExemptEncryption
kunci ke Info.plist aplikasi Anda dengan boolean
nilai yang menunjukkan apakah aplikasi Anda menggunakan enkripsi:
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
Untuk informasi selengkapnya, lihat Mematuhi Peraturan Ekspor Enkripsi tentang developer.apple.com.
Menerbitkan menggunakan baris perintah
Untuk menerbitkan app Mac Catalyst Anda dari baris perintah di Mac, buka terminal dan buka folder untuk proyek aplikasi .NET MAUI Anda. Jalankan dotnet publish
perintah , menyediakan parameter berikut:
Parameter | Value |
---|---|
-f atau --framework |
Kerangka kerja target, yaitu net8.0-maccatalyst . |
-c atau --configuration |
Konfigurasi build, yaitu Release . |
-p:MtouchLink |
Mode tautan untuk proyek, yang dapat berupa None , , SdkOnly atau Full . |
-p:CreatePackage |
Atur ke true sehingga paket (.pkg) dibuat untuk aplikasi di akhir build. |
-p:EnableCodeSigning |
Atur ke true sehingga penandatanganan kode diaktifkan. |
-p:EnablePackageSigning |
Atur ke true agar paket yang dibuat ditandatangani. |
-p:CodesignKey |
Nama kunci penandatanganan kode. Atur ke nama sertifikat distribusi Anda, seperti yang ditampilkan di Akses Rantai Kunci. |
-p:CodesignProvision |
Profil provisi yang akan digunakan saat menandatangani bundel aplikasi. |
-p:CodesignEntitlements |
Jalur ke file pemberian izin yang menentukan pemberian izin yang diperlukan aplikasi. Atur ke Platforms\MacCatalyst\Entitlements.plist . |
-p:PackageSigningKey |
Kunci penandatanganan paket yang akan digunakan saat menandatangani paket. Atur ke nama sertifikat penginstal Anda, seperti yang ditampilkan di Akses Rantai Kunci. |
Peringatan
Mencoba menerbitkan solusi .NET MAUI akan mengakibatkan dotnet publish
perintah yang mencoba menerbitkan setiap proyek dalam solusi satu per satu, yang dapat menyebabkan masalah ketika Anda telah menambahkan jenis proyek lain ke solusi Anda. Oleh karena itu, dotnet publish
perintah harus dicakup ke proyek aplikasi .NET MAUI Anda.
Parameter build tambahan dapat ditentukan pada baris perintah, jika tidak disediakan dalam <PropertyGroup>
file proyek Anda. Tabel berikut mencantumkan beberapa parameter umum:
Parameter | Value |
---|---|
-p:ApplicationTitle |
Nama yang terlihat pengguna untuk aplikasi. |
-p:ApplicationId |
Pengidentifikasi unik untuk aplikasi, seperti com.companyname.mymauiapp . |
-p:ApplicationVersion |
Versi build yang mengidentifikasi iterasi aplikasi. |
-p:ApplicationDisplayVersion |
Nomor versi aplikasi. |
Untuk daftar lengkap properti build, lihat Properti file proyek.
Penting
Nilai untuk semua parameter ini tidak harus disediakan pada baris perintah. Mereka juga dapat disediakan dalam file proyek. Ketika parameter disediakan pada baris perintah dan dalam file proyek, parameter baris perintah lebih diutamakan. Untuk informasi selengkapnya tentang menyediakan properti build di file proyek Anda, lihat Menentukan properti build di file proyek Anda.
Misalnya, gunakan perintah berikut untuk membangun dan menandatangani .pkg di Mac, untuk distribusi melalui Mac App Store:
dotnet publish -f net8.0-maccatalyst -c Release -p:MtouchLink=SdkOnly -p:CreatePackage=true -p:EnableCodeSigning=true -p:EnablePackageSigning=true -p:CodesignKey="Apple Distribution: John Smith (AY2GDE9QM7)" -p:CodesignProvision="MyMauiApp" -p:CodesignEntitlements="Platforms\MacCatalyst\Entitlements.plist" -p:PackageSigningKey="3rd Party Mac Developer Installer: John Smith (AY2GDE9QM7)"
Catatan
Di .NET 8, dotnet publish
perintah default ke Release
konfigurasi. Oleh karena itu, konfigurasi build dapat dihilangkan dari baris perintah.
Menerbitkan build, tanda, dan mengemas aplikasi, lalu menyalin .pkg ke folder bin/Release/net8.0-maccatalyst/publish/ . Jika Anda menerbitkan aplikasi hanya menggunakan satu arsitektur, aplikasi akan diterbitkan ke folder bin/Release/net8.0-maccatalyst/{architecture}/publish/ .
Selama proses penandatanganan, mungkin perlu memasukkan kata sandi masuk Anda dan mengizinkan codesign
dan productbuild
menjalankan:
Untuk informasi selengkapnya tentang perintah, lihat penerbitan dotnet publish
dotnet.
Menentukan properti build dalam file proyek Anda
Alternatif untuk menentukan parameter build pada baris perintah adalah menentukannya dalam file proyek Anda dalam <PropertyGroup>
. Tabel berikut ini mencantumkan beberapa properti build umum:
Properti | Nilai |
---|---|
<ApplicationTitle> |
Nama yang terlihat pengguna untuk aplikasi. |
<ApplicationId> |
Pengidentifikasi unik untuk aplikasi, seperti com.companyname.mymauiapp . |
<ApplicationVersion> |
Versi build yang mengidentifikasi iterasi aplikasi. |
<ApplicationDisplayVersion> |
Nomor versi aplikasi. |
<CodesignKey> |
Nama kunci penandatanganan kode. Atur ke nama sertifikat distribusi Anda, seperti yang ditampilkan di Akses Rantai Kunci. |
<CodesignEntitlements> |
Jalur ke file pemberian izin yang menentukan pemberian izin yang diperlukan aplikasi. Atur ke Platforms\MacCatalyst\Entitlements.plist . |
<CodesignProvision> |
Profil provisi yang akan digunakan saat menandatangani bundel aplikasi. |
<CreatePackage> |
Atur ke true sehingga paket (.pkg) dibuat untuk aplikasi di akhir build. |
<EnableCodeSigning> |
Atur ke true sehingga penandatanganan kode diaktifkan. |
<EnablePackageSigning> |
Atur ke true agar paket yang dibuat ditandatangani. |
<MtouchLink> |
Mode tautan untuk proyek, yang dapat berupa None , , SdkOnly atau Full . |
<PackageSigningKey> |
Kunci penandatanganan paket yang akan digunakan saat menandatangani paket. Atur ke nama sertifikat penginstal Anda, seperti yang ditampilkan di Akses Rantai Kunci. |
Untuk daftar lengkap properti build, lihat Properti file proyek.
Penting
Nilai untuk properti build ini tidak harus disediakan dalam file proyek. Mereka juga dapat disediakan di baris perintah saat Anda menerbitkan aplikasi. Ini memungkinkan Anda menghilangkan nilai tertentu dari file proyek Anda.
Contoh berikut menunjukkan grup properti khas untuk membangun dan menandatangani aplikasi Mac Catalyst Anda untuk distribusi Mac App Store:
<PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|net8.0-maccatalyst|AnyCPU'">
<MtouchLink>SdkOnly</MtouchLink>
<EnableCodeSigning>True</EnableCodeSigning>
<EnablePackageSigning>true</EnablePackageSigning>
<CreatePackage>true</CreatePackage>
<CodesignKey>Apple Distribution: John Smith (AY2GDE9QM7)</CodesignKey>
<CodesignProvision>MyMauiApp</CodesignProvision>
<CodesignEntitlements>Platforms\MacCatalyst\Entitlements.plist</CodesignEntitlements>
<PackageSigningKey>3rd Party Mac Developer Installer: John Smith (AY2GDE9QM7)</PackageSigningKey>
</PropertyGroup>
Contoh <PropertyGroup>
ini menambahkan pemeriksaan kondisi, mencegah pengaturan diproses kecuali pemeriksaan kondisi berlalu. Pemeriksaan kondisi mencari dua item:
- Konfigurasi build diatur ke
Release
. - Kerangka kerja target diatur ke sesuatu yang berisi teks
net8.0-maccatalyst
. - Platform diatur ke
AnyCPU
.
Jika salah satu kondisi ini gagal, pengaturan tidak diproses. Lebih penting lagi, <CodesignKey>
pengaturan , <CodesignProvision>
, dan <PackageSigningKey>
tidak diatur, mencegah aplikasi ditandatangani.
Setelah menambahkan grup properti di atas, aplikasi dapat diterbitkan dari baris perintah di Mac dengan membuka terminal dan menavigasi ke folder untuk proyek aplikasi .NET MAUI Anda. Kemudian, jalankan perintah berikut:
dotnet build -f net8.0-maccatalyst -c Release
Catatan
Di .NET 8, dotnet publish
perintah default ke Release
konfigurasi. Oleh karena itu, konfigurasi build dapat dihilangkan dari baris perintah.
Menerbitkan build, tanda, dan mengemas aplikasi, lalu menyalin .pkg ke folder bin/Release/net8.0-maccatalyst/publish/ .
Mengunggah ke Mac App Store
Setelah aplikasi ditandatangani dengan sertifikat Distribusi Apple, aplikasi tidak dapat dijalankan secara lokal. Sebaliknya, itu harus diunggah ke App Store Koneksi di mana itu akan ditandatangani kembali untuk mengaktifkan eksekusi lokal.
Untuk mendistribusikan aplikasi Anda melalui Mac App Store, atau TestFlight, Anda harus membuat catatan aplikasi di App Store Koneksi. Catatan ini mencakup semua informasi tentang aplikasi karena akan muncul di App Store dan semua informasi yang diperlukan untuk mengelola aplikasi sepanjang proses distribusi. Untuk informasi selengkapnya, lihat Membuat catatan aplikasi di developer.apple.com.
Transporter dapat digunakan untuk mengirimkan aplikasi Anda ke Mac App Store. Ini juga akan membantu mengidentifikasi kesalahan dengan paket aplikasi yang menghentikan pengiriman yang berhasil.
Baca juga
- Menyiapkan aplikasi Anda untuk didistribusikan di developer.apple.com
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk