SORU
17 HAZİRAN 2012, Pazar


Nasıl OS X çalışma zamanı veya iOS (Gestalt kullanmadan) OS sürümü belirleyebilirim?

Gestalt() fonksiyonu CarbonCore/OSUtils.h bulunan OS X 10.8 Dağ Aslanı olarak kalmıştır.

Ben sık sık bu işlev çalışma zamanında OS X işletim sistemi sürümü (oyuncak örnek aşağıya bakınız) test etmek için kullanın.

Diğer API OS X işletim sistemini kontrol etmek için kullanılan ne olabilir Kakao bir uygulama zamanında sürüm?

int main() {
    SInt32 versMaj, versMin, versBugFix;
    Gestalt(gestaltSystemVersionMajor, &versMaj);
    Gestalt(gestaltSystemVersionMinor, &versMin);
    Gestalt(gestaltSystemVersionBugFix, &versBugFix);

    printf("OS X Version: %d.%d.%d\n", versMaj, versMin, versBugFix);
}

CEVAP
2 HAZİRAN 2014, PAZARTESİ


OS X 10.10 (iOS 8.0), NSOperatingSystemVersion bir yapı olarak tanımlanan döndüren [[NSProcessInfo processInfo] operatingSystemVersion] kullanabilirsiniz

typedef struct {
    NSInteger majorVersion;
    NSInteger minorVersion;
    NSInteger patchVersion;
} NSOperatingSystemVersion;

Ayrıca senin için bir karşılaştırma yapacak NSProcessİnfo bir yöntem var:

- (BOOL)isOperatingSystemAtLeastVersion:(NSOperatingSystemVersion)version

Dikkat edinkullanılabilir olması için belgelenmiş olsa da , OS X 10.10 ve üstü, operatingSystemVersion isOperatingSystemAtLeastVersion: her iki X 10.9 (probably 10.9.2) OS ve beklendiği gibi çalışması var. Eğer NSProcessInfo Bu seçiciler için ise OS X 10.9 veya 10.10 üzerinde çalışan olup olmadığını kontrol etmek için yanıt verirse test gerekir anlamına gelir.

İOS, bu yöntemler iOS 8.0 beri etkili bir şekilde kullanılabilir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Brendan van Son

    Brendan van

    5 Aralık 2006
  • Jordie Jordan

    Jordie Jorda

    27 Ocak 2008
  • Khan Academy

    Khan Academy

    17 Kasım 2006