Publishing Your App (App Packaging)

Uno Platform provides integrated, automated packaging for every supported platform, covering desktop, mobile, web, and embedded, with no third-party tools or extra setup required. Packaging is part of the standard .NET publish workflow, so you can go from code to distributable packages in a single command.

Why It Matters

App packaging is the bridge between a working build and an installable application. Each OS has unique signing, metadata, and distribution requirements, which can make deployment complex for cross-platform projects.

Typical tasks include:

  • Building and publishing binaries
  • Generating assets and manifests
  • Applying code signing and notarization
  • Assembling installable formats (MSIX, .app, APK, IPA, etc.)
  • Preparing for distribution or app store submission

Traditionally, .NET developers rely on custom scripts or third-party tools to manage this complexity. Uno Platform automates it out of the box.

The Broader Platform Packaging Ecosystem

Platform Formats Signing Distribution Complexity
Windows MSIX, MSI, ClickOnce Certificates Microsoft Store, Direct Multiple formats; Store validation
macOS .app, .pkg, .dmg Apple certs + notarization App Store, Direct Mandatory notarization; complex signing
Linux Snap, AppImage, DEB, RPM Optional Snap Store, Direct Multiple package managers
Android APK, AAB Keystore Google Play, Direct AAB for Play; Keystore management
iOS IPA Provisioning profiles App Store, TestFlight Strict signing; Profile management
WebAssembly Static files, PWA HTTPS / CSP Web hosting Service workers; PWA manifest

What Uno Platform Provides Out of the Box

Uno Platform simplifies all of this with a unified, automated approach:

Platform Package Formats Code Signing Store Ready Status
Windows MSIX, ClickOnce ✅ Microsoft Store ✅ Available
macOS .app, .pkg, .dmg ✅ App Store ✅ Available
Linux Snap ✅ Snap Store ✅ Available
Android APK, AAB ✅ Google Play ✅ Available
iOS IPA ✅ App Store ✅ Available
WebAssembly Static files, PWA ✅ Web hosting ✅ Available

Key Features

  • Native dotnet publish Integration – No separate tools required. Works with your CI/CD pipelines.
  • Cross-Platform Build Support – Build Windows packages from Linux or macOS, and vice versa.
  • Advanced Publishing Options – Self-contained deployments, single-file packaging, Native AOT (where supported).
  • Automated Everything – Manifest generation, asset resizing, signing, and platform-specific optimization.

Example command for Android AAB:

dotnet publish -f net9.0-android -p:AndroidPackageFormat=aab

The same command pattern applies to Windows, macOS, Linux, iOS, and WebAssembly.

Preparing

Before publishing, make sure your app is optimized:

Platform-Specific Guides

Continuous Integration

Uno Platform provides built-in CI integrations for Azure DevOps and GitHub Actions, included as part of the Uno Platform project templates. These pipelines include ready-to-use packaging steps for all supported platforms.