ipa ファイルから CFBundleVersion を確認するワンライナーのメモ。
ipa ファイルから CFBundleVersion を確認するワンライナーのメモ。
したいこと
ipa ファイル (iOS のアプリ) しかない状態で CFBundleVersion を確認したい。 中間ファイルとかは作りたくない。
確認する方法
CFBundleVersion は ipa ファイルのなかの Payload/<アプリ>.app/Info.plist
に記述されているので、それを確認すればよい。
Info.plist の中身はバイナリーだけど plutil で XML なり JSON なりに変換できるので簡単に読める。
個人的には XML よりも JSON のほうが扱いやすいので Info.plist の中身は plutil で JSON に変換して jq で CFBundleVersion を抜き出してる。
実際の確認
unzip -p <IPA ファイルのパス> Payload/<アプリ>.app/Info.plist | plutil -convert json -o - -- - | jq -r .CFBundleVersion
でいける。
↓ hoge.app
というアプリの CFBundleVersion を確認する例。
$ unzip -p hoge.ipa Payload/hoge.app/Info.plist | plutil -convert json -o - -- - | jq -r .CFBundleVersion 2.1.14
以上。