переопределить метод uniqueIdentifier ios - PullRequest
0 голосов
/ 01 марта 2011

Мне нужно отправить другой udid в мою базу данных для нескольких целей тестирования.Поскольку [UIDevice currentDevice] uniqueIdentifier] вызывается почти в 15 местах, мне будет очень трудно внести изменения в код, а затем протестировать.Есть ли способ переопределить этот метод на некоторое время и отправить другой номер как udid?

Ответы [ 2 ]

2 голосов
/ 01 марта 2011

Вы можете создать категорию на UIDevice и переопределить uniqueIdentifier для возврата случайного значения.

@interface UIDevice (RandomIdentifier)

@property (nonatomic, retain, readonly) NSString *uniqueIdentifier

@end

@implementation UIDevice (RandomIdentifier)

- (NSString *)uniqueIdentifier
{
    return @"Randomly generated string";
}

@end
1 голос
/ 01 марта 2011

Вы должны иметь возможность переопределить его в категории на UIDevice. Создайте такой заголовок:

@interface UIDevice (overrideId)

@property (nonatomic,readonly,retain) NSString *uniqueIdentifier

@end

А потом .m вот так:

@implementation UIDevice (overrideId)

- (NSString *)uniqueIdentifier {
    return @"whatever";
}

@end

Не забудьте удалить его перед выпуском.

...