Использование частного фреймворка: импорт RadioPreferences.h

Я слежу за выбранным ответом, импортируя частные фреймворки в Xcode

По сути, я хочу иметь возможность управлять режимом полета в моем приложении. Когда я импортирую RadioPreferences.h в мое приложение и попробуйте скомпилировать, я получаю Expected Identifier за @class <RadiosPreferencesDelegate>;

Я не совсем уверен, что делать дальше. Я даже не знал, что вы можете переслать объявить протоколы.

1 ответ

Решение

Сначала скопируйте следующее содержимое в файл с именем RadioPreferences.h, (Взято с /questions/7969779/dostupnost-rezhima-poleta-3g-protiv-wi-fi/7969793#7969793).

@protocol RadiosPreferencesDelegate
-(void)airplaneModeChanged;
@end


@interface RadiosPreferences : NSObject
{
    struct __SCPreferences *_prefs;
    int _applySkipCount;
    id <RadiosPreferencesDelegate> _delegate;
    BOOL _isCachedAirplaneModeValid;
    BOOL _cachedAirplaneMode;
    BOOL notifyForExternalChangeOnly;
}

- (id)init;
- (void)dealloc;
@property(nonatomic) BOOL airplaneMode;
- (void)refresh;
- (void)initializeSCPrefs:(id)arg1;
- (void)notifyTarget:(unsigned int)arg1;
- (void)synchronize;
- (void *)getValueForKey:(id)arg1;
- (void)setValue:(void *)arg1 forKey:(id)arg2;
@property(nonatomic) BOOL notifyForExternalChangeOnly; // @synthesize notifyForExternalChangeOnly;
@property(nonatomic) id <RadiosPreferencesDelegate> delegate; // @synthesize delegate=_delegate;

@end

  • Далее, перейдите к этапам сборки вашей цели в Xcode и разверните раздел Link Binary With Libraries.
  • В окне поиска перейдите к /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk/System/Library/PrivateFrameworks, замещать iPhoneOS6.0.sdk в пути с SDK, на который вы нацеливаетесь.
  • Перетащите AppSupport.framework в расширенный раздел Link Binary With Libraries.

Теперь все должно скомпилироваться, и вы сможете использовать класс.

Другие вопросы по тегам