Как создать игру, которая поддерживает Game Center, только если она доступна на iPhone? - PullRequest
2 голосов
/ 21 октября 2010

Я собираюсь приступить к созданию игры для iPhone, которая будет использовать достижения Game Center и высокие баллы, но я также хотел бы иметь версию, которая работает на iPhone без Game Center (например, версия для iOS)<4.1).Могу ли я иметь две версии одного и того же приложения в магазине приложений, одну для игрового центра, другую для без?Или я должен разработать приложение таким образом, чтобы, если на iPhone не было Game Center, оно не использовало его, а если оно использовало, оно им пользовалось?</p>

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

Ответы [ 4 ]

3 голосов
/ 22 октября 2010

Вот окончательный ответ, который я получил от одного из инженеров Apple ...

"Мы рекомендуем создать одну версию приложения, которая динамически определяет, доступен ли Game Center, и использует его (или нет).на основании этого. "

1 голос
/ 23 ноября 2010

Вы можете использовать следующую функцию, чтобы определить, поддерживает ли устройство Game Center:

BOOL isGameCenterAvailable()
{
    // Check for presence of GKLocalPlayer API.
    Class gcClass = (NSClassFromString(@"GKLocalPlayer"));

    // The device must be running running iOS 4.1 or later.
    NSString *reqSysVer = @"4.1";
    NSString *currSysVer = [[UIDevice currentDevice] systemVersion];
    BOOL osVersionSupported = ([currSysVer compare:reqSysVer options:NSNumericSearch] != NSOrderedAscending);

    return (gcClass && osVersionSupported);
}

Однако я обнаружил, что многие люди не обновились до iOS 4.1 или наивно относятся к Game Center. Количество пользователей в моей игре довольно мало, хотя загрузок так много. На самом деле я думал о переходе на Open Feint, который гораздо проще реализовать, чем Game Kit, а также поддерживает старые устройства.

1 голос
/ 21 октября 2010

Я делаю то же самое. Если у вас есть возможности GameCenter, вы можете использовать эти функции. Если вы этого не сделаете, вы не можете.

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

Кроме того, вы можете захотеть, чтобы ваша игра работала, если устройство имеет возможности GC, но пользователь по какой-либо причине не может подключиться к GC.

1 голос
/ 21 октября 2010

Возможно, создайте игру без нее, затем создайте возможности для игрового центра, но отключите их и включайте их, только если у них правильная версия.

...