سؤال

في وثائق التفاح لمركز اللعبة ، يقول لاستخدام هذا الرمز لاكتشاف ما إذا كان مركز اللعبة متاحًا:

+ (BOOL) isGameCenterAvailable {
  Class gcClass = (NSClassFromString(@"GKLocalPlayer"));

  NSString *reqSysVer = @"4.1";
  NSString *currSysVer = [[UIDevice currentDevice] systemVersion];
  BOOL osVersionSupported = ([currSysVer compare:reqSysVer options:NSNumericSearch] != NSOrderedAscending);

  return (gcClass && osVersionSupported);
}

لكنه يعود بنعم على جهاز iPhone 3G الذي لا يحتوي على مركز ألعاب. أي شخص هناك من حل هذا؟

هل كانت مفيدة؟

المحلول 3

الجواب هو أنك لا تستطيع. تريد Apple منا أن نحاول تسجيل الدخول لمعرفة ما إذا كان مركز الألعاب موجودًا. غريب ، ولكن هذا ما هو عليه.

نصائح أخرى

في الواقع ، يمكنك التحقق مما إذا كان بإمكان تطبيقك فتح أحد مخططات URL: مخططات URL.

BOOL canOpenGC = [[UIApplication sharedApplication] canOpenURL:[NSURL urlWithString:@"gamecenter:/me/account]];

شاهد إجابة stackoverflow حول هذه المسألة

لم أحاول هذا ، لكن حاول الحصول على اللاعب المحلي المفرد:

if (![gcClass localPlayer]) {
    // then you havnt got game center support
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top