16

簡単な質問ですが、見つけるのは非常に難しいようです。

私はAndroidとiOSのゲームを構築しています。そして、アプリのバージョン (つまり「2.0.1」) を抽出したい (App Store/Google Play に新しいバージョンがある場合にポップアップを表示するため)。

プログラムでこれを行う方法を知っている人はいますか?

4

3 に答える 3

7

古い:この回答は執筆時点では完全に有効でしたが、含まれている情報は古くなっています。これを行うためのより良い方法があります。代わりにこの回答を参照してください。回答は歴史的な理由から保持されています。反対票を投じる前にこれを検討してください。

つまり、いいえ。Unity からアプリ バンドルのバージョンを直接取得することはできません。

実はPlayerSettings.bundleVersionというプレイヤー設定で設定した数値を読み込める関数がありますが、残念ながらエディタクラスの関数なので実行時には使えません。(実はこの数字はXcodeで変更できるので、Unityのプレイヤー設定で設定した数字が間違っている可能性があります)。

簡単な方法は、コードにバージョン番号を記述し、アプリを送信して更新するたびに番号を更新することです。リリース前にやり忘れてしまうのでちょっと危険です。そのため、チェックリストが必要になる場合があります。

別の方法は、プラグインを作成することです。Xcode SDK には、info plist からアプリのバージョンを取得するメソッドがあります。目的に応じて、これを Unity に戻すことができます。

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

于 2013-06-20T10:46:06.467 に答える