Google Play Games C++ SDK'sı
Özet
Kuruluş
Play Oyun Hizmetleri işlevinin ana giriş noktası GameServices sınıfıdır. GameServices örnekleri GameServices::Builder ile oluşturulur. GameServices sayfasına bakın
Tüm GameServices oturumunun durumuna erişen veya durumunu değiştiren yöntemler GameServices sınıfının kendisinde kullanılır.
Diğer işlevler, özellik başına bir grup yönetici tarafından yönlendirilir. Bu yöneticiler ilgili işlevleri bir arada gruplandırır; kullanıcı tarafından görülebilen herhangi bir durum içermezler. Yöneticiler referans olarak döndürülür ve ömür boyu kapsayıcı GameServices örneği tarafından kontrol edilir. Bu nedenle, istemci kodu hiçbir zaman yönetici referansını tutmamalıdır, bunun yerine GameServices örneğini tutun. Yöneticiler başlıklı makaleyi inceleyin.
Veriler, sabit değer türü nesneler aracılığıyla döndürülür. Bu değerler, sorgunun yapıldığı andaki temel verilerin tutarlı bir görünümünü yansıtır. Değer Türleri bölümünü inceleyin.
Diş Zinciri Modeli
Aksi belirtilmedikçe, tüm GameServices yöntemleri ve Manager yöntemleri iş parçacığı güvenli ve eşzamansızdır. Bunlar, harici kilitleme olmadan herhangi bir iş parçacığında çağrılabilir ve çağrı sıralarına uygun bir sırayla yürütülür. Genel olarak, mutatör yöntemleri (durumunu değiştirenler) "etkinle ve unut" modelini kullanır. Erişimci yöntemleri (okuma durumu olanlar) iki ana varyanta sahiptir. İlk varyant (Getproperty gibi adlarla), sonuçlarını sağlanan bir geri çağırmaya eşzamansız olarak sağlarken, ikinci varyant (GetFromBlock gibi adlarla), sonuçlarını eşzamanlı olarak çağıran iş parçacığına döndürür. Erişimciler daha önce çağrılan tüm mutatörlerin sonuçlarını görür ancak mutatör, uzak Oyun Hizmetleri durumunu herhangi bir zamanda değiştirmiş olabilir veya olmayabilir.
Tüm kullanıcı geri çağırmaları (erişimci yöntemlerine bağımsız değişken olarak sağlanan tek seferlik geri çağırmalar veya GameServices derleme zamanında yapılandırılan çok kullanımlı geri çağırmalar) özel bir geri çağırma iş parçacığında çağrılır. Bu ileti dizisi, herhangi bir platform kavramı olan "ana iş parçacığı" veya "kullanıcı arayüzü iş parçacığı" kavramından potansiyel olarak ayrıdır. Durmuş bir geri çağırma iş parçacığı kullanıcıların görebileceği sorunlara (ör. oturum kapatma isteğinin geç tamamlanması) neden olabileceğinden kullanıcı geri çağırma işlemleri hızlı bir şekilde yürütülmelidir.
Sabit değer türlerindeki özellikler, eşzamanlı olarak ve engelleme olmadan kullanılabilir.