Skip to content

[feat] Support custom CFBundleVersion for iOS and macOS #12479

@velocitysystems

Description

@velocitysystems

Describe the problem

For iOS, Tauri synchronizes both CFBundleVersion and CFBundleShortVersionString with the version property in tauri.conf.json. Android separately defines a versionCode property which is settable in the bundle configuration.

This means we cannot distinguish between the user-facing version visible in stores and the developer-facing build version. Expo for React Native handles this well by defining the following configuration properties:

Property Description
version The user-facing version visible in stores. On Android, it represents versionName name in android/app/build.gradle. On iOS, it represents CFBundleShortVersionString in Info.plist.
android.versionCode The developer-facing build version for Android. It represents versionCode in android/app/build.gradle.
ios.buildNumber The developer-facing build version for iOS. It represents CFBundleVersion in Info.plist.

Describe the solution you'd like

Implement a similiar approach in tauri.config.json for defining the developer-facing build version for iOS and macOS.

Alternatives considered

N/A

Additional context

#10944.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions