でのクラッシュは、私は私はいくつかのセキュリティのものをやったXcodeプロジェクトを作り、彼らはObjective-Cの難読化はDEBUGで動作しますが、RELEASE
ので
#define specialMethod a9328238
+(void) specialMethod
{
// do security stuff
}
のようにメソッド名を難読化するために私に尋ねた私プロジェクト(プロジェクトA)から.frameworkライブラリを作成し、それを別のプロジェクト(プロジェクトB)に組み込みました。
しかし、リリースビルド構成で(プロジェクトB)を実行すると、常にそのようにクラッシュします。
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[SecurityClass a9328238]: unrecognized selector sent to class 0x337cc4'
それがメソッドをアクセスもしようとすると、それがクラッシュ。あなたが#define
を配置している
しかし、私はデバッグビルド構成で(プロジェクトB)、それを実行すると、それは滑らか
を実行します(私はデフォルトですべての私のビルド構成の設定を保持している)
コンパイラフラグには何がありますか? – CarlJ
難読化されたメソッド名のないリリースビルドでも機能しますか? –
彼らは何があいまいでセキュリティについて言うのですか? – JeremyP