Zrobiłem projekt Xcode gdzie zrobiłem kilka rzeczy bezpieczeństwa i poprosili mnie, aby zaciemniać nazwy metodyObjective-C zaciemniania metod działa w DEBUG ale wywala w wersji
jak tak
#define specialMethod a9328238
+(void) specialMethod
{
// do security stuff
}
ja stworzyła bibliotekę .framework z projektu (projekt A) i umieściła go w innym projekcie (projekt B).
ale po uruchomieniu (projekt B) z konfiguracją Release build zawsze się tak kończy.
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[SecurityClass a9328238]: unrecognized selector sent to class 0x337cc4'
powoduje awarię, gdy próbuje uzyskać dostęp do metody.
Ale gdy uruchamiam (projekt b) o konfiguracji Debug build biegnie gładka
(mam zachowywała wszystkie moje ustawienia konfiguracyjne zbudować jako domyślne)
co zawiera Flagi kompilatora? – CarlJ
Czy działa w wersji wydania bez zaciemnionych nazw metod? –
Co oni mówią o bezpieczeństwie przez zapomnienie? – JeremyP