What Is a Bundle ID in a MAUI App?

Every MAUI app requires a unique identity to work on each platform. This is a string specified during development, often in the form of com.your-company.app-name, or sometimes as a globally unique identifier (GUID). This string is referred to as the package name for Windows and Android, whereas it’s called the bundle ID for iOS and macOS. For convenience purposes, we refer to it as a bundle ID.

Note that each platform specifies different rules that should be satisfied by the bundle ID as follows:

  1. Windows package name restrictions

  2. Android package name restrictions

  3. iOS and macOS bundle ID restrictions

The bundle ID can be set individually for each platform in MAUI. The following steps outline how to set the bundle ID for each platform.

  1. To set the bundle ID for Windows, open the Package.appxmanifest file in the Platform/Windows folder and set the Name attribute of the Identity element. Alternatively, Visual Studio provides a UI to specify the package name when you double-click the Package.appxmanifest file.

Windows Package Name

  1. To set the bundle ID for Android, open the AndroidManifest.xml file in the Platform/Android folder and set the package attribute of the manifest element. Alternatively, Visual Studio provides a UI to specify the package name when you double-click the AndroidManifest.xml file.

Android Package Name

  1. To set the bundle ID for iOS or macOS, open the Info.plist file in the Platform/iOS or Platform/MacCatalyst folder and set the CFBundleIdentifier key. Alternatively, Visual Studio provides a UI to specify the bundle identifier when you double-click the Info.plist file.

iOS or Mac Catalyst Bundle Identifier

PSPDFKit bases your license on the bundle ID you provide. This has to be an explicit ID, meaning an ID that’s unique and doesn’t contain a star (*) value.

Once a bundle ID is registered in the PSPDFKit Portal, it can’t be changed. Please note that these IDs are case sensitive, so make sure you register the correct case variant.

Development and Testing

For development and testing, you can request additional bundle IDs from our portal. Ensure you’ve registered the actual bundle ID beforehand and that the beta/testing ID is recognizable as such.

Example: If your product is named FaxSender and your company name is OKBX Corporation, then your bundle ID will likely look like this: com.okbx.faxsender. Your testing IDs could be com.okbx.faxsender.dev, com.okbx.faxsender.staging, com.okbx.faxsender.testing, or com.okbx.faxsender.beta.

We approve these IDs manually and will add them if they match the above scheme. If you have a different scheme, please let us know and we’ll consider your case.