Bu dokümanda, mevcut oyunların games v1 SDK'sından games v2 SDK'sına nasıl taşınacağı açıklanmaktadır. Unity için Play Games eklentisinin 10 ve önceki sürümleri, games v1 SDK'sını kullanır.
Başlamadan önce
- Play Console'u ayarladığınızdan ve Unity Hub'ı yüklediğinizden emin olun.
Unity için Google Play Games eklentisini indirme
Play Games Hizmetleri'ndeki en yeni özelliklerden yararlanmak için en son eklenti sürümünü indirip yükleyin. GitHub deposundan indirin.
Eski eklentiyi kaldırma
Unity Hub'da aşağıdaki klasörleri veya dosyaları kaldırın.
Assets/GooglePlayGames Assets/GeneratedLocalRepo/GooglePlayGames Assets/Plugins/Android/GooglePlayGamesManifest.androidlib Assets/Plugins/Android
![Unity projenizde vurgulanan klasörleri kaldırın.](https://developer.android.com/static/images/games/pgs/unityfolders.png?hl=tr)
Yeni eklentiyi Unity projenize aktarma
Eklentiyi Unity projenize içe aktarmak için aşağıdaki adımları uygulayın:
- Oyun projenizi açın.
- İndirilen
unitypackage
dosyasını projenizin öğelerine aktarmak için Unity Hub'da Öğeler > Paket İçe Aktar > Özel Paket'i tıklayın. Mevcut derleme platformunuzun Android olarak ayarlandığından emin olun.
Ana menüde Dosya > Derleme Ayarları'nı tıklayın.
Android'i seçin ve Platform Değiştir'i tıklayın.
Pencere > Google Play Games bölümünde yeni bir menü öğesi olmalıdır. Öğe yoksa Öğeler > Yenile'yi tıklayarak öğeleri yenileyin ve ardından derleme platformunu tekrar ayarlamayı deneyin.
Unity Hub'da Dosya > Derleme Ayarları > Oynatıcı Ayarları > Diğer Ayarlar'ı tıklayın.
Hedef API düzeyi kutusunda bir sürüm seçin.
Arka uç komut dosyası kutusuna
IL2CPP
yazın.Hedef mimariler kutusunda bir değer seçin.
package_name paket adını not edin.Bu bilgileri daha sonra kullanabilirsiniz.
Unity projenizdeki oynatıcı ayarları.
Otomatik oturum açma kodunu güncelleme
PlayGamesClientConfiguration
başlatma sınıfını PlayGamesPlatform.Instance.Authenticate()
sınıfıyla değiştirin.
PlayGamesPlatform
'ün başlatılması ve etkinleştirilmesi gerekmez.
PlayGamesPlatform.Instance.Authenticate()
çağrısı, otomatik oturum açma işleminin sonucunu getirir.
C#
Unity Hub'da PlayGamesClientConfiguration
sınıfına sahip dosyaları bulun.
using GooglePlayGames;
using GooglePlayGames.BasicApi;
using UnityEngine.SocialPlatforms;
public void Start() {
PlayGamesClientConfiguration config =
new PlayGamesClientConfiguration.Builder()
// Enables saving game progress
.EnableSavedGames()
// Requests the email address of the player be available
// will bring up a prompt for consent
.RequestEmail()
// Requests a server auth code be generated so it can be passed to an
// associated backend server application and exchanged for an OAuth token
.RequestServerAuthCode(false)
// Requests an ID token be generated. This OAuth token can be used to
// identify the player to other services such as Firebase.
.RequestIdToken()
.Build();
PlayGamesPlatform.InitializeInstance(config);
// recommended for debugging:
PlayGamesPlatform.DebugLogEnabled = true;
// Activate the Google Play Games platform
PlayGamesPlatform.Activate();
}
Ardından şu şekilde güncelleyin:
using GooglePlayGames;
public void Start() {
PlayGamesPlatform.Instance.Authenticate(ProcessAuthentication);
}
internal void ProcessAuthentication(SignInStatus status) {
if (status == SignInStatus.Success) {
// Continue with Play Games Services
} else {
// Disable your integration with Play Games Services or show a login
// button to ask users to sign-in. Clicking it should call
// PlayGamesPlatform.Instance.ManuallyAuthenticate(ProcessAuthentication).
}
}
Sosyal medya platformu seçin
Sosyal medya platformu seçmek için sosyal medya platformu seçme başlıklı makaleyi inceleyin.
Sunucu kimlik doğrulama kodlarını alma
Sunucu tarafı erişim kodlarını almak için sunucu kimlik doğrulama kodlarını alma bölümüne bakın.
Oturum kapatma kodunu kaldırma
Oturum kapatma kodunu kaldırın. Play Oyun Hizmetleri artık oyun içi oturum kapatma düğmesi gerektirmiyor.
Aşağıdaki örnekte gösterilen kodu kaldırın:
C#
// sign out
PlayGamesPlatform.Instance.SignOut();
Oyununuzu test etme
Oyununuzu test ederek tasarlandığı gibi çalıştığından emin olun. Yaptığınız testler oyununuzun özelliklerine bağlıdır.
Aşağıda, çalıştırılacak yaygın testlerin listesi verilmiştir.
Başarılı oturum açma.
Otomatik oturum açma özelliği çalışır. Kullanıcı, oyunu başlattığında Play Games Hizmetleri'nde oturum açmış olmalıdır.
Karşılama pop-up'ı gösterilir.
Örnek karşılama pop-up'ı (büyütmek için tıklayın). Başarılı günlük mesajları gösterilir. Terminalde aşağıdaki komutu çalıştırın:
adb logcat | grep com.google.android.
Aşağıdaki örnekte başarılı bir günlük mesajı gösterilmektedir:
[
$PlaylogGamesSignInAction$SignInPerformerSource@e1cdecc number=1 name=GAMES_SERVICE_BROKER>], returning true for shouldShowWelcomePopup. [CONTEXT service_id=1 ]
Kullanıcı arayüzü bileşenlerinin tutarlı olmasını sağlayın.
Pop-up'lar, skor tabloları ve başarılar, Play Oyun Hizmetleri kullanıcı arayüzünde (UI) çeşitli ekran boyutlarında ve yönlerinde doğru ve tutarlı şekilde gösterilir.
Oturum kapatma seçeneği Play Oyun Hizmetleri kullanıcı arayüzünde görünmüyor.
Oynatıcı kimliğini başarıyla alabildiğinizden ve varsa sunucu tarafı özelliklerinin beklendiği gibi çalıştığından emin olun.
Oyunda sunucu tarafı kimlik doğrulama kullanılıyorsa
requestServerSideAccess
akışını ayrıntılı bir şekilde test edin. Sunucunun kimlik doğrulama kodunu aldığından ve bu kodu bir erişim jetonuyla değiştirebildiğinden emin olun. Ağ hataları ve geçersizclient ID
senaryoları için hem başarılı hem de başarısız senaryoları test edin.
Oyununuz aşağıdaki özelliklerden herhangi birini kullanıyorsa taşıma işleminden önceki gibi çalıştıklarından emin olmak için bunları test edin:
- Skor tabloları: Puanlar gönderin ve skor tablolarını görüntüleyin. Sıralama, oyuncu adları ve puanlarının doğru şekilde gösterilip gösterilmediğini kontrol edin.
- Başarılar: Başarıların kilidini açın ve Play Games kullanıcı arayüzünde doğru şekilde kaydedilip görüntülendiğini doğrulayın.
- Kayıtlı Oyunlar: Oyunda kayıtlı oyunlar kullanılıyorsa oyun ilerleme durumunun kaydedilip yüklenmesinin sorunsuz çalıştığından emin olun. Bu, özellikle birden fazla cihazda ve uygulama güncellemelerinden sonra test etmek için kritik öneme sahiptir.
Taşıma sonrası görevler
games v2 SDK'sına geçtikten sonra aşağıdaki adımları tamamlayın.