Merhabalar. Projeye başlayınca platformu Android olarak ayarlamanız çok daha iyi olacaktır. Yoksa ekran boyutlandırması, canvaslar, uı objelerinde boyut farklılığı olacaktır. Tabi ki düzeltilebilir fakat zamanınızın bir kısmını alır.
Bundle Identifier Belirlemek
En kolay kısım burası. Eğer
Player Settings‘te
Bundle Identifier kısmını hiç ellemeden uygulamanızı Android’e build almaya kalkarsanız, “
Bundle Identifier has not been set up correctly” hatası alırsınız. Bu hatayı çözmek için yapmanız gereken tek şey, Bundle Identifier değerini şu şekilde değiştirmek:
com.SirketinizinIsmi.UygulamaninAdi. Burada herhangi bir noktalama işareti (aralardaki noktalar hariç), boşluk veya Türkçe karakter kullanmayın.
64-bit APK Desteği Eklemek
Artık Google Play’e 64-bit desteği olmayan APK yüklemeye çalıştığınızda şu uyarıyla karşılaşacaksınız: “
Bu sürüm Google Play 64 bit gereksinimi ile uyumlu değil.” Uygulamalarınıza 64-bit desteği eklemek için,
Player Settings’teki
Target Architectures listesinde yer alan
ARM64’ü seçmeniz yeterli. Eğer bu seçenek kapalıysa,
Scripting Backend‘i
IL2CPP yapmanız lazım.
NOT: Target Architectures‘taki
x86 seçeneğini
seçmeyin; bu 32-bit’lik bir işlemci türü olduğu ve 64-bit’i Unity tarafından desteklenmediği için, böyle bir uygulamayı Google Play’e yüklerken yine 64 bit hata mesajı alırsınız.
IL2CPP ile build alabilmek için
Android NDK gerekiyor.
Edit-Preferences-External Tools‘ta NDK’in konumu girilmişse ve hemen altında NDK ile alakalı bir uyarı mesajı yoksa, NDK zaten kuruludur. Aksi taktirde NDK’i kurup konumunu External Tools’taki kutucuğa girmeniz lazım. Burada tavsiye edilen yöntem, NDK’i
Unity Hub ile kurmak; böylece doğru NDK sürümünün kurulduğundan emin olursunuz. Bunun için Unity Hub’da
Installs sekmesinden Unity sürümünüzü bulun ve sağ üstündeki 3 noktaya tıklayıp
Add Modules seçeneğini seçin. Ardından
Android Build Support‘un altındaki
Android SDK & NDK Tools‘u seçip kurulumu tamamlayın:
NDK’i Unity Hub ile kurduktan sonra, External Tools’taki “
Android NDK Installed with Unity” seçeneğini işaretlemeniz yeterli:
Google Play, uygulamalarınızı “
App Bundle” (.aab) formatında yüklemenizi öneriyor ve Unity’nin son sürümleriyle beraber artık App Bundle build almak destekleniyor. Bunun için,
Build Settings’teki
Build App Bundle seçeneğini işaretleyebilirsiniz:
Eğer bu seçenek(ler)i göremiyorsanız ve eski bir Unity sürümü kullanıyorsanız, güncel bir Unity sürümüne geçmeniz gerekebilir.
NOT: Proje konumunuzda ‘
ü‘, ‘
ı‘, ‘
ğ‘ gibi Türkçe karakterler varsa, bunları İngilizce karakterler ile değiştirin. Örneğin projeniz “
C:\Ünity Projeleri\Yılan Oyunu” konumunda ise, bu konumu “
C:\UnityProjeleri\YilanOyunu” olarak değiştirin. Örnekte olduğu gibi, konumdaki boşluk karakterlerini de silmenizi öneririm.
Android uygulamalarında imzalama (sign) diye bir işlem var. Bu sistem, sizden başka birisinin oyunun yeni bir sürümünü oluşturmasını engelliyor. Google Play hesabınız hack’lense bile, kötü niyetli kişi sizin imzanıza sahip olmadıkça oyunlarınızı güncelleyemiyor. Google Play’e uygulamanızı yüklerken uygulamanızın imzalanmış olması gerekiyor. Burada imzadan kastımız, bir kağıda gerçek imzanızı atıp bir yere postalamak değil. Unity üzerinden uygulamanızı dijital olarak imzalamalısınız. Ancak siz sadece uygulamanızı telefonunuzda test etmek istiyorsanız, uygulamayı imzalamak zorunda değilsiniz. Direkt build edip APK dosyasını Android cihazınızda çalıştırabilirsiniz.
Gelgelelim bu imzalama işlemi nasıl gerçekleşir… Unity’den
Player Settings‘e girin ve
Publishing Settings sekmesini açıp aşağıdaki talimatları adım adım izleyin:
Unity 2019 ve Sonrası İçin
- Keystore Manager butonuna tıklayın.
- Gelen pencereden Keystore-Create New-Anywhere seçeneğini seçip, oluşturulacak dosya için bir konum ve isim belirleyin.
- Password ve Confirm password alanlarına, keystore için bir şifre girin (ÖNEMLİ: alttaki NOT1’i okuyun).
- Alias kısmına küçük harflerle uygulama adını girip ardından alttaki iki yere Alias için bir şifre girin (ÖNEMLİ: alttaki NOT2’yi okuyun). Pencerede geri kalan kısımları doldurmasanız da olur (eğer olmazsa sallamayı da deneyebilirsiniz). İşiniz bitince Add Key‘e tıklayın.
- Karşınıza gelen “Key created in keystore. Do you want to set them as your Project Keystore and Project Key?” kutucuğuna Yes deyin.
- Harika! Artık oyununuz imzalanmaya hazır. Hemen şimdi oyunu Build ederseniz, alacağınız APK dosyası imzalanacak ve Google Play’e yüklenmeye hazır halde olacak.
- Eğer Unity’den çıkıp daha sonra tekrar açarsanız ve yine imzalanmış bir APK dosyası build etmek isterseniz, Custom Keystore seçeneğini işaretleyip altındaki Select… butonu ile keystore dosyanızı seçin. Password kısmına keystore şifresini girdikten sonra, oluşturduğunuz Alias‘ı seçin ve onun şifresini de altındaki Password kutucuğuna girin. Artık build alabilirsiniz.
Unity 2018.4 ve Öncesi İçin
- Create New Keystore seçeneğini seçin.
- Browse Keystore‘a tıklayın, oluşturulacak dosya için bir konum ve isim belirleyin.
- Keystore password ve Confirm password alanlarına, keystore için bir şifre girin (ÖNEMLİ: alttaki NOT1’i okuyun).
- Birden üçe kadar tüm aşamaları yaptınız. Şimdi başka hiçbir şeye dokunmadan direkt Alias‘a tıklayıp “Create a new key“i seçin.
- Karşınıza gelen pencerede, Alias kısmına küçük harflerle uygulama adını girip ardından alttaki iki yere Alias için bir şifre girin (ÖNEMLİ: alttaki NOT2’yi okuyun). Pencerede geri kalan kısımları doldurmasanız da olur (eğer olmazsa sallamayı da deneyebilirsiniz). İşiniz bitince Create Key‘e tıklayın.
- Eğer Alias’ta Unsigned seçili kaldıysa, onu yeni oluşturduğunuz Alias ile değiştirin.
- Alias’ın altında yer alan Password‘a alias şifrenizi girin.
- Harika! Artık oyununuz imzalanmaya hazır. Hemen şimdi oyunu Build ederseniz, alacağınız APK dosyası imzalanacak ve Google Play’e yüklenmeye hazır halde olacak.
- Eğer Unity’den çıkıp daha sonra tekrar açarsanız ve yine imzalanmış bir APK dosyası build etmek isterseniz, bu sefer Use Existing Keystore deyip Browse Keystore ile keystore dosyasını seçin. Keystore password kısmına keystore şifresini girdikten sonra, oluşturduğunuz Alias‘ı seçin ve onun şifresini de altındaki Password kutucuğuna girin.
Ardından build alabilirsiniz. Eğer build işleminde hatayla karşılaşırsanız bana bildirin lütfen.
İyi günler