почему device.multitaskingSupported не работает на некоторых устройствах? - PullRequest
1 голос
/ 25 июня 2011

chey Я работаю на iPod и хочу убедиться, что устройство поддерживает многозадачность для запуска некоторых функций ... Есть ли способ? Я пробовал с этим -

   UIDevice* device = [UIDevice currentDevice];
   BOOL backgroundSupported = NO;
   backgroundSupported = device.multitaskingSupported;

но вышеупомянутая функция не работает должным образом, ее сбой на некоторых устройствах ... любая идея?

Ответы [ 2 ]

4 голосов
/ 25 июня 2011

Похоже, вы используете device.multitaskingSupported, где это не поддерживается ... Вы должны проверить, доступна ли multitaskingSupported на устройстве или в ОС, прежде чем использовать ..

Вы должны сделать что-то вроде этого -

- (BOOL) isMultitaskingCapable
{
    UIDevice* device = [UIDevice currentDevice];
    BOOL backgroundSupported = NO;
    if ([device respondsToSelector:@selector(isMultitaskingSupported)])
        backgroundSupported = device.multitaskingSupported;

    return backgroundSupported;
}
1 голос
/ 25 июня 2011

См. В яблочной документации UIDevice .

@property(nonatomic,readonly,getter=isMultitaskingSupported) BOOL multitaskingSupported

Наличие Доступно в iOS 4.0 и более поздних версиях.

Таким образом, multitaskingSupported доступно только в iOS 4.0 и более поздних версиях, но не ниже (3.0 или более ранних).

...