私が開発したコンポーネントの .framework (または静的ライブラリ) を作成していて、それをサードパーティに販売したいと考えています。
フレームワークを不正な再利用、再配布、または再販売から保護するためのコードを追加することを計画していました。
これを実現する良い方法は、フレームワークを使用するアプリのバンドル ID を購入者に教えてもらい、NSString プロパティとしてフレームワークに保存し、実行時にチェックするメソッドを作成することです。フレームワークを使用しているアプリのバンドル ID が一致するかどうか。
ただし、フレームワークを無料で試用できるようにしたいとも考えています。したがって、バンドル ID チェックを有効にしたいのは、含まれているアプリがリリース モードでコンパイルされている場合、またはアプリが開発サンドボックスの外部のエンド ユーザー デバイスで実行されている場合のみです。
もちろん、プロジェクト ファイルに設定された変数やマクロに依存するメソッドは使用できません。私は実行時にそれを行う必要があります...そして購入者が必要とするアクションはありません。
アプリが開発者サンドボックスで実行されているかどうかを実行時に確認する方法はありますか? または、アプリがリリース ビルド プロファイルでビルドされている場合はどうなりますか?
ありがとう!