16

TestFlight と App Store で同じビルド構成を使用したいと思います。アプリが TestFlight または App Store 経由でインストールされているかどうかを実行時に検出する方法はありますか? (私の考えではtakeOff、App Store 経由でインストールされていない場合にのみ呼び出します。)

ユーザーのプライバシーを保護するため、また、ここで説明されているネットワークの脱線の可能性を回避するために、App Store ビルドで TestFlight を使用することは避けたいと考えています。

4

3 に答える 3

7

これはCheck if iOS app is live in app storeの複製に十分近いと思いますが、これを閉じることができます。

embedded.mobileprovisionがないことを確認することで、アプリがアプリ ストア経由で配布されたかどうかを判断できます。このファイルはアドホック ビルドにのみ含まれます。したがって、TestFlight または HockeyApp のみを介してビルドを配布しており、それがストア ビルドでない場合は、TestFlight または HockeyApp ビルドである必要があります。

このような:

if ([[NSBundle mainBundle] pathForResource:@"embedded"
                                    ofType:@"mobileprovision"]) {
  // not from app store
} else {
  // from app store
}

このテクニックはHockeyApp SDK からのものです。

于 2012-12-21T18:34:21.393 に答える