0

わかりました、私を気楽にしてください。私は何年もこのボードをトローリングしてきましたが、これがなければどこにいるのか考え始めることさえできないほど多くの助けを得てきました. 何年にもわたって助けてくれてありがとう!

無料アプリと有料アプリという典型的なシナリオがあります。1 年前に無料版をリリースし、つい最近有料版をリリースしました。私の目標は、有料バージョンにアップグレードできるように無料バージョンを更新することです。これを調査した後、2 つのターゲットを作成し、#ifdef を使用して、制限したい特定の機能をオンまたはオフにするのが最善の方法のようです。

そこで、先に進んで有料ターゲットを複製し、必要なすべての plist の変更を行い、次のようなコードを挿入しました...

#ifdef LITE_VERSION
    NSLog(@"Lite Version");
    [self loadAds];  
#endif

これはうまく機能し、広告付きのライト ターゲットと広告なしの有料ターゲットができました。(もちろんその他の機能も)

しかし今、私はここからどこへ行くべきか少し混乱しています.
StoreKit を使用して、アップグレード ボタンを有料バージョンにリンクしますか? もしそうなら、どのように?
または、これを達成するためのより良い方法はありますか?

同様の質問がされて回答されていることは知っていますが、それらはすべてプログラミングの部分をカバーしているように見えましたが、それ以上のことはしていませんでした。

ありがとうマーリン

4

1 に答える 1

0

#defineコンパイル時に機能するため、単一のコード ベースでアプリの個別のバージョンを作成する場合に便利です。たとえば、広告や機能が制限された「無料」バージョンと完全な「有料」バージョンなどです。

追加する方法は次のとおりです。

  • プロジェクトに追加のターゲットを作成します (これは「無料」バージョンになります)
  • 無料アプリのコンパイル オプションで、Other C Flagsの下に追加します。-DFREE_VERSION
  • 元の質問のように、定義を使用して、無料/有料バージョンの内容を制御します。
#ifdef FREE_VERSION
[self showAds];
#endif

注: ユーザーが実行時に (たとえば StoreKit を使用して) 機能を購入/ロック解除できるようにするために、この#define手法を使用することはできません。

于 2013-05-31T16:11:17.623 に答える