web-dev-qa-db-ja.com

xcodeから独自のアプリバージョンを取得する方法

XCodeの[Summary]タブに配置した後、コードで独自のアプリバージョンを取得する方法はあるのでしょうか。 1つの方法はInfo.plist for CFBundleVersion keyですが、他の簡単で便利な方法はありますか?

37
Valentin Radu

メインバンドルにあります。私はそれが次のようなものだと思う:

[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"];
114
Chris Ledet

通常、ビルド番号(CFBundleVersion)を使用して、ビルドの数を追跡します。また、マーケティングのためにバージョン番号(CFBundleShortVersionString)を使用します。実行スクリプトを使用してビルド番号を自動インクリメントし、各新しいリリースの前にバージョン番号を手動で更新します。したがって、ビルド番号ではなく実際のバージョン番号をコードに含める場合は、これを使用します。

[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"]

または

[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"];

興味のある人のためにビルド番号をインクリメントする実行スクリプトは次のとおりです。

#!/bin/bash

buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "${PROJECT_DIR}/${INFOPLIST_FILE}")
buildNumber=$(($buildNumber + 1))
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "${PROJECT_DIR}/${INFOPLIST_FILE}"
28
Anthony
NSString *version = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleVersion"];
12
Aravindhan

Swiftの場合:

Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString")
3
bjd23