Herkese merhaba,

Son dersimin üzerinden uzunca bir süre geçmesinin ardından tekrar sizlerleyim. Bu dersin dışında planladığım daha çok güzel projeler var ama henüz kısmet olmadı onları gerçekleştirmek.

Bu dersi bir nevi sitenin ölmediğini, tam gaz yola devam edeceğini haber vermek için yazıyorum diyebiliriz. Bir diğer sebep ise bu dersin işleyeceği konu, yani Google Play’e Unity oyunlarını yüklemek bana epeyce sorulduğundan artık bu sorulara ortak bir yerden cevap vermek istiyorum.

Derste ne göreceğiz? Öncelikle Unity üzerinden yaptığınız uygulamayı imzalamayı (sign etmek) göreceğiz. Ardından bu imzaladığımız uygulamayı Google Play’e yüklemeyi göreceğiz. Derse başlamadan önce bir Google Play Developer hesabına sahip olmalısınız (tek seferlik bir ödeme karşılığı sahip oluyorsunuz) ve Android SDK’yı düzgünce kurup Unity’e tanıtmalısınız. Android SDK kurulumu için sizi şuraya alayım: yasirkula.com/2013/07/17/unity-android-sdk-kurulumu-resimli-anlatim/

Artık derse başlayalım!

A) Bundle Identifier Belirlemek

En kolay kısım burası. Eğer Player Settings’te Bundle Identifier kısmını hiç ellemeden Android’e uygulamanızı build etmeye 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 Build Settings’ten Bundle Identifier değerini şu şekilde değiştirmek: com.SirketinizinIsmi.UygulamaninAdi

B) Yaptığınız Uygulamayı Unity Üzerinden İmzalamak

Google Play’e uygulama yüklerken pek çok arkadaşımız bir hatayla karşılaştı: “You uploaded an APK that was signed in debug mode. You need to sign your APK in release mode.

Hatanın Türkçe versiyonu: “Yükleme başarısız oldu. Hata ayıklama modunda imzalanmış bir APK yüklediniz. APK’nızı yayınlama modunda imzalamanız gerekiyor. İmzalama hakkında daha fazla bilgi edinin.

Android uygulamalarında imzalama (sign) diye bir işlem var. Ne işe yaradığını bilmiyorum ama 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. Bu imzalama işlemi sadece uygulamayı Google Play’e yüklerken geçerli. Uygulamanızı sadece telefonunuzda test etmek istiyorsanız imzalamak zorunda değilsiniz. Direkt build edin ve apk dosyasını Android cihazınızda çalıştırın.

Gelgelelim bu imzalama işlemi nasıl gerçekleşir… Unity’den Build Settings’e girin ve Publishing Settings sekmesini açıp aşağıdaki talimatları adım adım izleyin:

1- Create New Keystore seçeneğini seçin.

2- Browse Keystore’a tıklayın, oluşturulacak dosya için bir isim ve konum belirleyin.

3- Keystore password ve Confirm password alanlarına Keystore için bir şifre girin. Bu noktada ben bu şifrenin kırılıp kırılamayacağından emin olamadığımdan üyeliklerde kullandığım şifrelerden farklı, rastgele harf ve rakam kombinasyonundan oluşan bir şifre belirliyorum. Önemli bir nokta var burada: bu şifre bilgisayarınızda herhangi bir yerde kaydedilmiyor. Yani şifreyi bir yere not almalısınız. Ayrıca 2. aşamada oluşturduğunuz keystore dosyasını da yanlışlıkla silmeyeceğiniz özel bir yere koymalısınız. Yoksa nolur? Uygulamanızı Google Play’e yükledikten sonra güncellemek istediğinizde ya bu keystore dosyasını bulamazsınız ya da şifreyi bir türlü hatırlayamazsınız. Bu iki durumdan herhangi biri gerçekleşince de zaten siz o uygulamayı güncellemeyi unutun.

4- 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.

5- Karşınıza gelen pencerede Alias kısmına uygulama adını girip ardından alttaki iki yere Alias için bir şifre girin. Alias şifresi ile keystore şifresi aynı olabiliyormuş ama aynı olmamasını tavsiye ediyorlar. Yine bu şifre de uygulamayı güncellerken gerekeceği için tıpkı keystore şifresinde olduğu gibi bu şifreyi de bir yere not edin. Pencerede geri kalan kısımları doldurmasanız da olur (eğer olmazsa sallamayı da deneyebilirsiniz). İşiniz bitince Create Key’e tıklayın.

6- Harika! Artık oyununuz imzalandı. Hemen şimdi oyunu Build ederseniz alacağınız APK dosyası Google Play’e yüklenmeye hazır halde olacaktır.

NOT: 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. Ardında keystore şifresini girip oluşturduğunuz Alias’ı seçin. Son olarak da Alias şifresini de ilgili boşluğa girip oyunu build edin.

C) İmzalanmış Uygulamayı Google Play’e Yüklemek

Artık oyununuzu hazırladınız, imzaladınız ve build ettiniz. Çileli kısmı geride bıraktınız! Şimdi oyununuzu tüm dünyaya sunmaktan sadece bir adım uzaksınız. Bu aşamada yazının başında da dediğim gibi bir Google Play Developer hesabınızın olması gerekiyor. Hesabınız varsa o zaman bu ünlü Google Play’e uygulamalar nasıl yükleniyormuş adım adım bakalım.

1- Developer hesabınıza girin ve “Add new application” butonuna basın.

2- Eğer oyununuz İngilizce destekliyorsa Default language’ın English olarak kalmasını tavsiye ederim, ama oyununuz sadece Türkçe dilini destekliyorsa dil listesinden Türkçe’yi seçin. Title kısmına oyunun adını yazın ve Upload APK butonuna basıp bilgisayarınızdan oyununuzun build ettiğiniz APK dosyasını seçin.

NOT: Eğer Upload APK butonuna basınca dosya seçmek için pencere gelmediyse sonraki ekrandan Upload your first APK to Production butonuna basarak öyle yükleyin APK’yı.

3- Artık APK dosyasını yüklediğinize göre diğer ıvır zıvırları tamamlayalım. Sol taraftaki menüden Store Listing seçeneğini seçin.

4- Karşınıza gelen sayfada Title oyunun ismini, Description oyunun Google Play’de görünen tanıtıcı yazısını temsil ediyor. Promo text kısmının açıkçası nerede işe yaradığını bilmiyorum. Recent changes kısmı oyunun yeni versiyonunu yükleyince o yeni versiyonun eski versiyondan farklarını listelediğiniz bir yer. Bu kısmı artık Store Listing’ten doldurmuyorsunuz. Uygulamanızı güncellemek için yeni bir APK sürümünü yüklerken orada ilgili bir kutucuk oluyor ve Recent changes’ı işte orada giriyorsunuz.

5- Screenshots kısmına oyununuzdan birkaç görsel eklemelisiniz. Resimleriniz JPEG ya da PNG olmalı. En az 2, en çok 8 resim yükleyebilirsiniz sisteme. Phone yazan kısıma oyununuzun telefon versiyonu için resimler, tablet yazan yerlere de tablet versiyonu için resimler ekleyebilirsiniz. High-res icon’a oyununuzun ikonunu ekleyin. İkon 512×512’lik bir PNG olmalı. İkonunuzda alpha yani saydamlık olabilir. Oyununuzun ikonuna çok özen göstermenizi tavsiye ederim çünkü nasıl insanlar kitapların önce kapağını görüyorsa oyunlarınızın da önce ikonunu görüyorlar. Feature Graphic ve Promo Graphic’in ne işe yaradığını bilmiyorum (bilen birisi konu altına yorum atabilir). Eğer oyununuzun bir tanıtıcı videosu varsa o videonun YouTube linkini Promo Video kısmına yapıştırın.

NOT: Uygulamanızın açıklamasının Türkçe Android kullanan kullanıcılar için Türkçe, diğer kullanıcılar için İngilizce (ve belki Alman kullanıcılar için Almanca vb.) olmasını isteyebilirsiniz. Bu işlemi yapmak çok basit. Sayfanın yukarılarına doğru Manage translations diye bir buton var. Ona basıp Add translations seçeneğini seçin ve açıklamaları çevirmek istediğiniz dilleri seçin. Artık seçtiğiniz her dil için ayrı bir uygulama adı, uygulama açıklaması ve uygulama resimleri girebilirsiniz.

6- Application type olarak, eğer sisteme bir oyun yüklüyorsanız Games, yoksa Applications seçeneğini seçin. Ona göre ilgili bir Category seçin. Content rating oyununuzun yaş kitlesini belirlemeye yarar. Örneğin bir puzzle oyunu yüklüyorsanız Everyone’ı seçerek oyunu herkese hitap edecek şekilde gösterebilirsiniz. Çok şiddet içeren bir oyun ya da bir korku oyunu yüklüyorsanız High Maturity diyerek ilgili kitleye seslenebilirsiniz. Son olarak, eğer oyununuz için hazırladığınız bir gizlilik sözleşmesi varsa linkini Link to policy yazan yere yapıştırın. Yoksa oradaki “Not submitting a privacy policy URL at this time.” seçeneğini seçin.

7- Gelelim sol menüdeki Pricing & Distribution kısmına. Bu menüde uygulamanızın ücretli – ücretsiz olacağına ve hangi ülkelerde indirmeye açık olacağına karar verebiliyorsunuz. Hiç ücretli uygulama yüklemediğimden ve henüz Türkiye’den Google Play’e ücretli uygulama yükleme desteği olmadığından Free oyun yüklerkenki seçenekler hakkında konuşacağım. DISTRIBUTE IN THESE COUNTRIES başlığı altında oyununuzun hangi ülkelerde yayınlanmasını istediğinizi seçin. Opt-in seçeneğinin tam olarak ne işe yaradığını bilmiyorum. Marketing opt-out oyununuzun Google Play harici herhangi bir yerde tanıtılmasını istemiyorsanız işaretleyebileceğiniz bir alan. Ben hiç işaretlemedim. Content guidelines ve US export laws oyununuzun Google Play’de yayınlanması için kabul etmeniz gereken sözleşmeler. Bu kadar!

8- Tüm bu işlemler bittikten sonra artık yukarıdan Publish butonuna tıklayın. Bir sıkıntı yoksa oyununuz bir gün içerisinde Google Play’de yayınlanacaktır. Hayırlı olsun!

D) BONUS – Google Play’deki Uygulamanızı Güncellemek

Diyelim uygulamanız çok tutuldu ve siz de oyunu güncellemeye karar verdiniz. Yapmanız gereken şeyler sırayla şöyle:

1- Unity’de Player Settings’e gelin ve buradan Other Settings sekmesini açın. Bu kısımda değiştirmeniz gereken 2 değer var: Bundle Version ve Bundle Version Code. Eğer Bundle Version 1.0 ise onu örneğin 1.1 yapın. Ardından eğer Bundle Version Code 1 ise onu 2 yapın. Yani içindeki değeri tam olarak 1 artırın.

2- Publishing Settings sekmesinden keystore ve alias şifrelerinizi girip oyunu Build edin.

3- Google Play developer hesabınızı açın ve oyun listenizden güncellemek istediğiniz oyuna tıklayın. Sol taraftaki menüden APK butonuna tıklayın. Açılacak olan sayfada ortadaki Upload new APK to Production butonuna basın ve Build ettiğiniz APK dosyasını seçin.

4- Recent Changes alanına güncellemeyle oyuna eklediğiniz özellikleri ve düzelttiğiniz sorunları yazın.

NOT: Tıpkı oyununuzun bilgilerini Store Listing’de hem İngilizce hem de başka dillerde girebildiğiniz gibi Recent Changes’ı da birden çok dil için ayarlayabilirsiniz.

5- Publish now to Production butonuna tıklayın.

6- Harika! Bir gün içerisinde yaptığınız bu yeni değişiklikler dükkandaki uygulamanıza yansıyacak.

Bu yazıya da burada son vermek istiyorum. Umarım faydalı olmuştur. Sağlıcakla kalın!

yorum
  1. Akın dedi ki:

    eyvallah hocam sagolun takipteyiz

  2. Oğuzhan Üglü dedi ki:

    Dostum senin bloğunda mı bi yerde Windows Store için bi yazı görmüştüm ancak şimdi bulamıyorum onuda bi anlartırsan çok iyi olur google playi bi şekilde çözmüştüm ancak windows storeun sitesinden nasıl kaçacağımı bilemedim .)

    • yasirkula dedi ki:

      Mesajınız spam’e kaçmış nedense, geç gördüm o yüzden. Windows Store’la ilgili paylaşımım olmadı benim. Windows Store’dan kastınız mobil uygulama dükkanı mı yoksa PC uygulamaları dükkanı mı?

      • Oğuzhan Üglü dedi ki:

        Başka bi yerde gördüm o zaman. Windows’un dükkanının ikiye ayrıldığını bilmiyordum 🙂 Google Play gibi sandım.

      • Ahmet dedi ki:

        abi ben unity 3d den projenin apk sını build ettikten sonra telefonda ayrıştırma hatası alıyorum nedir çözümü.

  3. Burak dedi ki:

    Bende “Alias : Create a new key” seçeneği gelmiyor acaba pro değil o yüzdenmi

  4. gewerli02 dedi ki:

    iyi günler.
    google playda yayıncı olmak için bir ücret gerekiyor mu ?

  5. cengiz dedi ki:

    ben bu kısmı anlamadım…

    NOT: 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. Ardında keystore şifresini girip oluşturduğunuz Alias’ı seçin. Son olarak da Alias şifresini de ilgili boşluğa girip oyunu build edin.

    burda şunumu demek istediniz : unityden çıkınca key devre dışı kalıyor key tekrar açınca key tekrar devreye sokmak gerekiyor… bunumu demek istediniz

    • yasirkula dedi ki:

      Unity’i tekrar açtığınızda şifreleri girdiğiniz kısımların boş olduğunu göreceksiniz. Onları tekrar doldurmadan imzalanmış (signed) build alamazsınız.

      • cengiz dedi ki:

        alias daki yerde ben yaşı farketmeyip 50 diye bıraktım sorun olur mu ?

  6. muzaffer dedi ki:

    apk genisletme pakti istiyo 50 mb ustu icin o nasil yapilir

  7. tarık dedi ki:

    hocam google+ aracılığıyla skor tabloları var.onu nası yapacagız.google play oyun hizmetleri şöyle kod verdi

    var constants = constants || {}
    constants.LEAD_SCORE_TABLE = ‘kimlik’;

    bunu nasıl yapacagım acaba

    • yasirkula dedi ki:

      Google Play Services zahmetli bir sistem. Nasıl kurulduğunu anlatmaya çalışmayacağım bile. Bu işlemi, internetten İngilizce kaynaklar bularak kendiniz yapmalısınız.

  8. selim dedi ki:

    Hocam ben imzalayıp build edince iki dosya oluştu apk ve obb uzantılı nasıl oynayacam telefondan, birde google playa nasıl yükleyecem yardımcı olurmusunuz

  9. hoca dedi ki:

    Hocam Ios’a build etmek için bir yazı yazabilirmisiniz hocam

  10. çaylak dedi ki:

    http://i.hizliresim.com/66JWB9.png bu nedir hocam daha öncedenn yüklemeye calıstımm lısan hatası verdii keyi düzgün ayarlayamadımm daha taslak halindeyken kaldırdımm tekrara yükledimm şimdide bu hatayı veriyoo

  11. ömer dedi ki:

    Merhaba ben apk için build ediyorum ve cihaza kuruyorum fakat oyun açılmıyor. sadece powered by unity ekranında cihaz kalıyor. ben nerede hata yapıyorum. lütfen mail atınız. tşk

  12. bumthimble dedi ki:

    Allah razı olsun senden 🙂 yoksa oyunmu yükleyemecektim 🙂

  13. Gamer dedi ki:

    Abi birşey sorabilirmiyim Karakterin bir cisme olan yakınlığıyla bir animasyonu nasıl aktif ederiz mesela kapıya bir metre yaklaşıp E tuşuna basınca kapının açılmasını istiyorum

    if(…………)
    {
    animation.play()
    }
    gibi

    • yasirkula dedi ki:

      Vector3.Distance fonksiyonu iki Vector3 alır ve bu iki obje arası mesafeyi döndürür. Örneğin:

      if( Input.GetKeyDown( KeyCode.E ) && Vector3.Distance( karakter.transform.position, kapi.transform.position ) < 1f )
      {
      animation.play()
      }

      • yunusemre dedi ki:

        Abi 1f kısmı nedir bunu acıklarmişin

      • ouzhanuglu dedi ki:

        1f kapıya 1metre kala açılsın istemişsin o yüzden 1. distance float değer döndürür 1’in sağındaki f onun float olduğunu gösterir d olsaydı double olacaktı hiç olmayada bilir ama c# ‘da (sanırım) virgüllü değerlerde onun double yada float olduğunu belirtmen gerek abonelik maili gelmiş cevap vereyim dedim

      • yasirkula dedi ki:

        1 sayısının float versiyonu.

  14. yunusemre dedi ki:

    Yani 3 metre istesem 3f mi yazmam gerekir?

  15. osman dedi ki:

    abi merhabalar…ben dediklerinizi yaptım sorun çıkmadı.sadece bir yerde sorun çıktı aşağıda bulunan resimdeki gibi.lütfen yardımcı olur musun…teşekkürler

      • yasirkula dedi ki:

        Ben Build&Run yapmıyorum, o yüzden bu hatanın çözümünü bilmiyorum (internete yazarsanız çeşitli İngilizce çözüm yolları bulabileceğinize inanıyorum). Ben sadece Build ediyorum ve oluşan APK’yı USB kablo ile cihaza atıp oyunu cihaza elle kuruyorum.

      • osman dedi ki:

        teşekkürler çözümü buldum…buıld&run değilde sadece build edince sorun halloldu…

  16. Yunus KAra dedi ki:

    abi bir compenent in aktifliğni nasıl kapayabiliriz

  17. omersismanoglu dedi ki:

    hocam merhaba benimde şöyle bır sorunum var

    Build failure

    Failed to-package resources.See the Console for details.

    build ederken bu hatayı alıyorum

  18. umutt dedi ki:

    google play e bir oyun upload etmek istiyorum ama bu hatayı alıyorum unity ile yaptım oyunu

    You need to reduce your APK file size to 50MB or use APK Expansion Files.

    Apk expansion files dediği şeyi yapamadım !!

    yardımcı olursanız sevinirim !!

  19. umut dedi ki:

    merhabalar emeğin için çok teşekkürler

    birşey soracam peki biz oyunumuzu google playe yükledik diyelim peki bu katagori tanımı nasıl yapılacak mesela dövüş yarış oyunu gibi bide google play de hangi aramalarda çıkmasını nasıl belirleyecez mesela kişi google play de dovüş ve ya fight game yazdığında benim oyunun o arama da çıkmasını nasıl sağlayabiliriz bu işlemin adı yanlışım varsa düzeltin meta tag diye biliyorum bu işlemi nasıl yapacaz

    • yasirkula dedi ki:

      Kategori Google Play’e yüklerken seçiliyor. Arama terimleri ise oyunun isminde ve açıklamasında (description) geçen kelimelerden oluşuyor.

  20. berkay dedi ki:

    benim bi sorum var. biz iki gün önce oyunumuzu google playe koyduk oyunu indirip oylayan 17 kişi olmasına ragmen indirme 0 gözüküyor bu neden oluyor olabilir

  21. Enes dedi ki:

    Merhaba “Bundle Identifier has not been set up correctly” hatası aldım lakin build settings de( build identifier ) yok pro olmadığı içinmidir?

  22. Aslan dedi ki:

    Ben oyunu imzalayip o sekilde google playe yuklemek istedim.Ancak yuklemeye kalkistigimda “Hata ayiklama moduna imzalanmis bir Apk yuklediniz.Apknizi yayinlama modunda imzalamaniz gerekiyor.”
    Hatasi veriyor.Oyunu imzalanmamis (eski) haline nasil donderebilirim?

  23. yakup dedi ki:

    Yakın zamanda ilk oyunumu google play de yayınlayacağım ancak developer hesaplarında geliştiricinin adresi diye herkezin görebildiği bir yer var daha kayıt olmadım ama benim adresimin yayınlanmasını istemiyorum veya sadece yaşadığım şehrin adı gözsün bu yapılabilirmi? yapılabilirse nasıl yapılabilir?

    • yasirkula dedi ki:

      Adres kısmına sadece şehrinizi yazsanız kabul etmez mi?

      • yakup dedi ki:

        Bilemiyorum daha geliştirici hesabı açmadım oyunda 1-2 eksik var finallerden dolayı çok vaktim olmuyor ama sizin dediğiniz gibi sadece şehri yazarım herhalde kabul eder

  24. ahmet enes adlığ dedi ki:

    ben sizin dediğiniz gibi imzalama yapıyorum apk alıp google playa yüklerken “Yükleme başarısız oldu. Hata ayıklama modunda imzalanmış bir APK yüklediniz. APK’nızı yayınlama modunda imzalamanız gerekiyor. İmzalama hakkında daha fazla bilgi edinin.” hatası çıkıyor tekrar ne yapmalıyım .

    • yakup dedi ki:

      hocam ilk bende bu durumu yaşadım.Muhtemelen “alias” kısmını unsigned olarak bıraktınız.Orada kendi oluşturduğunuz alias’ı seçip deneyin

  25. Veheb dedi ki:

    Yaa platform stored nasıl kendi oyunumu yapabilirim.

    • yasirkula dedi ki:

      Game Maker veya Unity gibi oyun motorları en kolay tercih. Çok basit oyunlar için belki belki Android Studio gibi zorlu tercihler de işe yarayabilir.

  26. Barış dedi ki:

    130 bin indirmeli oyunumun keystore dosyasını kurtardım. Ama şifresini bulamadım keystore şifresini öğrenmek için google a mail atsam şifreyi biliyorlarsa söylerler mi?

    • Barış dedi ki:

      Bu keystore şifresini öğrenmenin bir yolu yok mudur? Şifreyi yazmadan build almayı denedim hiç
      birşey olmadı hata falan hiç vermedi.Bu şekilde güncelleme yapsam kabul ederler mi?

      • yasirkula dedi ki:

        Kabul etmez malesef. Yalnızca aynı imza ile imzalanmış uygulamaları update edebiliyorsunuz (şifre girmek zorunlu).

    • yasirkula dedi ki:

      Onların da bildiğini sanmıyorum. Bruteforce ile şifreyi kırmaktan bahsetmişler internette, ben de başka bir çözüm görmüyorum açıkçası.

  27. Berkay dedi ki:

    Merhaba hocam.
    Hazır unity android oyun dosyası var elimde. Bu dosyayı nasıl apk dönüştürürüm?

    • yasirkula dedi ki:

      Unity Android oyun dosyasından kastınız Unity projesi ise Build Settings’ten platformu Android yapıp dersin A part’ını tamamlayın ve Build butonuna tıklayın.

  28. Kimex dedi ki:

    Merhaba
    Ben oyunumda bir plane objesi kullanıyorum ve bu objenin tüm ekranlarda tamda ekran kadar büyümesini istiyorum yani ben bir oran bulmalıyım bu oranla plane objesini çarpınca plane ekran kadar olmalı.Oran lazım bana çünkü bu oranı daha sonra başka objeler içinde kullanıcam.
    Vector3 ekrandurum = new Vector3(Screen.width, Screen.height, 0);
    Vector3 hedefkose = Camera.main.ScreenToWorldPoint(ekrandurum);

    oranx = hedefkose.x / masa.transform.localScale.x;
    masa.transform.localScale = new Vector3(hedefkose.y, 1, hedefkose.x);
    şeklinde bir script yazdım ama olmadı saçmaladı 😦 3d olduğu için mi acaba ?
    3D de nasıl yapabilirim sizce ?

    NOT: sitenize birde soru cevap kısmı açsanız ve konularla alakası olmayan soruları orda sorsak bence çok güzel olur.
    Teşekkürler yardımlarınız için

    • yasirkula dedi ki:

      Kamera perspektif ise plane’in ekrandan ne kadar uzakta olacağına karar vermeniz lazım zira plane kameradan uzaklaştıkça doğal olarak artık ekranın tamamını kaplamayacaktır. Diyelim plane, kameradan 10 birim uzakta ise ekrandurum vektörünüzün z değeri 0 değil 10 olmalı. “localScale”in değeri ise ya “new Vector3(hedefkose.x, hedefkose.y, 1);” olmalı, ya da bunun 2 katı; ondan tam emin değilim.

  29. Kimex dedi ki:

    Kamera perspektif değil ve objede kamerada sabit hareket etmiyorlar.Anlatmak istediğim şeyi resimli hale getirmiştim.Unity nin answer kısmında 2 gündür kimse cevap yazmadı 😦

    http://i.hizliresim.com/A7JlEr.png
    http://i.hizliresim.com/kBvPjr.png

    • yasirkula dedi ki:

      Kamera orthographic ise hedefkose.y yerine Camera.main.orthographicSize, hedefkose.x yerine de (Camera.main.orthographicSize * Camera.main.aspect) yazmayı deneyin (belki de tam tersi). Eğer bu değerlerle plane ekranın hep yarısını kaplarsa da bu değerleri 2 ile çarparsınız.

  30. batıkan dedi ki:

    Merhaba ben oyunu play store a gönderdim fakat oyun işlenme aşamasındayken google oyunu askıya alıyor reddediyor şöyle bi mail atıyor.

    Next Steps

    1- Read through the Impersonation article for more details and examples of policy violations.
    2- Make sure your app is compliant with the Impersonation and Intellectual Property policy and all other policies listed in the Developer Program Policies. Remember additional enforcement could occur if there are further policy issues with your apps.
    3- Sign in to your Developer Console and submit the policy compliant app using a new package name and a new app name.

    Bunu nasıl düzeltebilirim acaba ? İsimden olmadı diye ismini değiştirdim oyunun yine olmadı 3. de mi ne hesabı feshediyolarmış galba şimdi yüklemekten korkuyorum.

    • batıkan dedi ki:

      Paket ve oyun ismini değiştirerek tekrar koydum yine aynı şey kafayı yicem ya 3 kez farklı paket ve oyun isimlerinde koydum yine yayınlanmadan askıya alındı diyor aynı uyarıyı mail atıyolar.

  31. batıkan dedi ki:

    Aha banlandım ben böle play store in …… daha hesabı dün açtım paranın üstüne yattılar resmen 2 ay emekde boşa gitti haram zıkkım olsun hesabı fesh ettiler

    • yasirkula dedi ki:

      Ne kadar işe yarıyor bilmiyorum ama support team’e mail atmanızı öneririm. Askıya alınmasının sebebi copyright’lı içerikler olabilir ya da piyasadaki bir oyunun çok benzer bir versiyonunu yapmış da olabilirsiniz.

      • batıkan dedi ki:

        Baya araştırdım benim gibi birçok kişinin başına gelmiş bu durum. Hiç kimsede hesabını geri alamamış. Ben yinede mail attım 3 gün içinde dönceklerini söylediler. Mesaj bekliyorum. Bu google nin sistemi çok saçma ve haksızlık ediyorlar. Uygulama tamamen bana ait ve hiç bi kötü amacı yok. Benzeri olacağını da sanmıyorum. Sadece karakter ve logo 2d süperman internetten bulmuştum. Sanırsam ondan oldu ama mailde bildirmemesi ve hesabı engellemesi çok saçma. Mesajda gördüğünüz gibi sadece uygulama ve paket ismini değiştirmemi söylediler. Şimdi bunlar birde Mac ban atıyolar ip adresinden değil mac adresinden engelliyolar. Üstelik yeni hesap açmaya kalkanların parasını alıp hesabı yine engelliyolarmış. Mail de de uyardılar.Afedersiniz ama bu google büyüklüğü kadar da şerefsz. Birdaha hesap nasıl açabilirim fikriniz var mı ? Ben laptopdan kullanmıstım birde masaüstü pc var ondan kullanırsam ve migrosta satılan sanal paypal kartını kullanırsam sorun olmaz heralde ?

      • yasirkula dedi ki:

        Mesajda copyright sorunlarını giderdikten sonra yeni versiyonu yeni bir paket ismiyle upload etmenizi yazmış, o konuda yanlış anlaşılma olmasın.

        Bence durumu aceleye getirmek yerine support team’in size geri dönüş yapmasını bekleyin. İkinci hesabı hangi koşullar altında açabileceğiniz konusundaysa malesef bilgim yok :/

      • batıkan dedi ki:

        Anladım hocam sanırsam karakter ve logo süperman olduğu için telif hakkından yani dediğiniz copyright oldugu için kabul etmediler ama hesabı engellemeleride saçma.
        http://www.noe-v.com/images/articles/blue_supes.jpg
        Yukardaki linkteki resim logo ve karakter işte. Şimdi mac ve ip adresini değiştirdim ama ne olur ne olmaz diye arkadaşa hesap açtırcam ona yükletcem uygulamaları arkadaşla ortak kullanırız ne olur ne olmaz. Mail de de dönmedi google araştırdım bu durumda olanların çoğuna dönmemişler bile.
        Bu arada bişey sorcam uygulamayı arka planda oynatma kodu nedir ? Hiç bi yerde yok bulamadım da yapamadım da. Mesela müzik uygulaması yapcam kullanıcılar müziği açıp başka uygulamaya geçebilsinler ?

      • yasirkula dedi ki:

        Arkaplanda nasıl oynatılıyor onu ben de bilmiyorum :/

      • batıkan dedi ki:

        Hocam sıkıntı süpermandeymiş yeni hesap acıp karakter üzerinde oynama yapıp gönderdim kabul ettiler. Herşey için teşekkür ederim sizi takipteyim sitede harika çok şey öğretti.
        https://play.google.com/store/apps/details?id=com.OzbalHan.FlyWithCape

  32. Kimex dedi ki:

    Feature Graphic yani Özellik Grafiği denilen kısım uygulamanın en üstünde yer alan ve tam ortasında play tuşu bulunan uygulamaya ait en büyük resimdir.Tanıtım video su koymazsanız play tuşuda olmaz Promo Graphic yani Tanıtım Grafiği ne işe yarıyor onu çözemedim daha 😦

  33. Barış dedi ki:

    Oyunumu düzgünce test ettim her şey düzgün bir tek app store developer hesabı almak kaldı fakat almaya çalışınca şöyle bir hata çıkıyor ”Ödemenizin yetkilendirilmesi başarısız oldu. Lütfen bilgilerinizi doğrulayıp tekrar deneyin veya başka bir ödeme yöntemini deneyin”. ininal kartla almaya çalışıyorum 396 tl para var içinde google play developer hesabınıda bu kartla almıştım ama nedense apple developer hesabını bir türlü alamadım sizin de başınıza böyle bir şey geldimi geldiyse nasıl çözdünüz bu sorunu?Bir de en tuhafı app storedan oyun falan alabiliyorum deneme amaçlı 59 kr ya oyun aldım.

    • Barış dedi ki:

      Ve bu developer hesabı için apple tam olarak ne kadar para kesiyor daha da mı para yüklesem acaba ininal kartıma.Bir yerde duymuştum extra vergi falan alıyormuş apple. Eger olmazsa kredi karti deneyecem en son çare hiç kredi karti internete girmezdim ama apple mecbur bıraktı. Siz de kredi kartiyla almissinizdir herhalde

    • yasirkula dedi ki:

      Bu konuda bir bilgim yok gerçekten, yanlış bilgi vermek istemem (apple app store hesabım bulunmuyor zaten 🙂 ). Ancak internetten alışveriş yaparken dediğiniz gibi kredi kartımı (sanal kart) kullanıyorum ve şimdiye kadar bir sıkıntı ile karşılaşmadım.

  34. ahmet dedi ki:

    Hocam merhabalar.Hocam ben unity içinde test çözme uygulaması hazırlıyorum.Soruları .json uzantılı dosyalardan çekiyorum ama türkçe karakter sorunu çıkıyor.Bunu nasıl çözebilirim.json uzantıları için bir de litjson.dll diye bir şeyi proje içine dahil etmem gerekti.Türkçe karakter sorununu nasıl halledebilirim.Teşekürler.

  35. Barış dedi ki:

    Rubix Fun oyununuz kaldırılmış geçmiş olsun Yasir Hocam sitenin sol tarafındaki twittler de gördüm.
    İsimdendir derken tam neyi kastettiniz ben oyunun telif yönünden sıkıtılı olduğunu sanmıyorum. (Google Playde ve app storeda rubix fun diye oyun bile yok)Güncellemede oyunun ismini mi değiştirdiniz merak ettim.

    • yasirkula dedi ki:

      Teşekkür ederim. Oyunun kaldırılma sebebi Impersonation idi. O kategoride en olası kaldırılma sebebi de isim oluyor. Rübik küpün ismini Rubix şeklinde telafuz ettiğimdendir belki, o konuda malesef hiç fikrim yok.

      Oyun kaldırılınca güncelleyemiyorsunuz. O yüzden yeni bir isimle oyunu yeniden yükledim.

  36. Barış dedi ki:

    Google Play e oyunumu APK+OBB olarak yükleyeceğim.Split application binary yaptım 2 dosya oluştu biri ana apk dosyası biri de mainObb mi oyle birsey o main li ismi olan dosyayı obb klorune attım apk yi baska klasore attım oyun kuruldu. Baya bekledim ama unity yazisinda kaldi oyun orada takiliyor ben mi yanlis kurdum? ikisini aynı klasorde tutarken kuruncada oyle kalıyor?

    • yasirkula dedi ki:

      OBB konusunda bilgim yok malesef. Ancak tahminen 2 dosyanın da aynı klasörde olmasını ve isimlerinin değiştirilmemesi gerektiğini düşünüyorum.

  37. Cihan dedi ki:

    Merhaba, ben uygulamamı dün yayınladım ancak kategorilerden arattığımda karşıma çıkmıyor.Sadece isimle arattığımda çıkıyor .Böyle olunca kimse bulamaz ki ne yapmak lazım anlamadım saygılar

    • yasirkula dedi ki:

      Uygulamanın indirme sayısı arttıkça kategoride de gözükmeye başlar. Bunu değiştirmenin bir yolu olduğunu sanmıyorum. Oyununuz şimdiden hayırlı olsun.

      • cihan dedi ki:

        Allah razı olsun kardeşim.Aslında belirli aralıklarda uygulamaları öne çıkarsalar böylelikle herkesin uygulaması öne çıkmış olur. En sevmediğim şey ise millete link dağıtıp indirin demek sanırım oyunumu pek indiren çıkmayacak bu gidişle saygılar

  38. mehmet dedi ki:

    Yasir hocam Lütfen bana Yardımcı olurmusunuz bir türlü imza işlemi olmuyor keystore kaydediyorum ama dosya kayıt ettiğim yere kayıt etmiyor dosya yok bu neden oluyor yardımcı olursanız çok minnettar olurum

  39. halil ibrahim orta dedi ki:

    unty assest storeden bir komple proe satın aldım imzalı bir sekikde built ettim ve bu sorunla karılatım ”Yükleme başarısız oldu
    Hata ayıklaması yapılabilir bir APK yüklediniz. Güvenlik nedeniyle, Google Play’de yayınlanmadan önce hata ayıklama özelliğini devre dışı bırakmanız gerekir. ” bu durumdan nasıl kurtulabilirm. lutfen yardımcıolurmusunuz

    • yasirkula dedi ki:

      “B) Yaptığınız Uygulamayı Unity Üzerinden İmzalamak” kısmını yaptığınızdan emin olun. İlaveten, Build Settings’te “Development Build”in seçili olmadığından emin olun.

  40. Ulusoy dedi ki:

    reis keystore girebiliyorum ama alias mi neyse deactive oraya hiçbir şey yazamıyorum (debug) gibi bir şeyler yazıyo

    • yasirkula dedi ki:

      Keystore oluşturduktan sonra açılıyor olmalı orası. Ama keystore oluşturduktan sonra hemen Alias’ı oluşturmanız lazım, başka bir şeye tıklamayın.

  41. Fatih Gündüz dedi ki:

    Hocam bir konuda bilginize başvurmak istiyorum. Benim isimsoyisim@gmail şeklinde mail adresim var. Ama ben Playstore da ismimin ve soy ismimin görünmesini istemiyorum aynı şekilde mail adresiminde. Bir firma gibi davranıp bir domain alıp site kurmayı ve playstore da görünen ismi Firma İsmi mesela “Mavi Oyun” ve mail adresini de info@mavioyun gibi göstermek istiyorum. Bunun için üyeliği ilk başta firma gibi görünerek firma adına mı açmalıyım yoksa normal isimsoyisim@gmail hesabından açtıktan sonra uygulama/oyun yüklerken o bilgileri belileyebiliyor muyuz? Saygılar. İyi Çalışmalar.

  42. Barış dedi ki:

    Oyunumu yaklaşık 1 senedir güncellemedim sadece raporlara bakmak için geliştirici konsolunu kullandım. Fakat son zamanlarda inanılmaz değişmiş sistem artık konsoldan imzalayabiliyormuşuz(sistemi anlamadım tam anlatırsanız sevinirim).Neyse ben normal her zamanki unity den use keystore dedim şifreleri girdim apk çıktı ama güncelleyemiyorum.Konsoldan Sürüm yönetimi>Uygulama sürümleri>Üretim sürümünü yönet diyorum ama “sürüm oluştur” diye birşey çıkmıyor.(tanıdığım birisi ve google ın yardım sayfası buna tıklamam gerektiğini söylüyor fakat bu bende çıkmıyor.)Zaten sürümü düzenle deyincede beklenmedik hata oluştu diyor.Eskiden telefondan sisteme giremezdim artık düzelmiş, giriyorum ama telefondanda sürüm oluştur falan diye birşey çıkmadı.

    • yasirkula dedi ki:

      Bende Sürüm yönetimi – Uygulama sürümleri – Üretim sürümünü yönet diyince gelen ekranda bende sağ üstte Sürüm oluştur butonu var. Bu butona basarak yeni bir sürüm oluşturabiliyorum. Eğer sizde orada o buton yoksa “Google Play Store’daki varlığı” başlığında eksik bir bilgi var mı diye kontrol edebilirsiniz (mesela belki İçerik derecelendirme’yi yapmamışsınızdır).

      Resim: https://yasirkula.files.wordpress.com/2017/05/createrelease.png

      • Barış dedi ki:

        Windows bilgisayarımdan explorer kullanarak girdim çıktı o buton fakat aşamalı sunum olmadan güncelleyemediğim için aşamalı sunumu durdurdum. Herhalde güncelleyemeyeceğim oyunumu.
        Aşamalı sunumu nasıl pas geçeriz?

  43. Barış dedi ki:

    İstediğim sürümü öne çıkarabilir miyim? Birde aşamalı sunum durdurulursa mantıken eski sürümün kullanıcıya açılması gereklidir sanırım?

    • yasirkula dedi ki:

      Aşamalı sunum olayını veya featured sürüm belirlemeyi maalesef bilmiyorum :/ Yalnızca normal bir sürüm çıkarmayı biliyorum o da önceki yorumda belirttiğim buton ile oluyor.

  44. Mucahit1 dedi ki:

    Selamun aleykum abi ben 2.oyunuma google playe yukleyecektim bugun ama bi turlu olmadi hem apk yi kabul etmedi yuklenemiyor dedi hemde oyun goruntulerini kabul etmedi 512×512 koymama ragmen acaba bi hesapla tek bir oyun mu yukleyebiliyoruz bir daha mi hesap acip para vermem lazim

  45. Muhammet dedi ki:

    Hocam Arkaplan.js de 16 adet sorun çıktı.

  46. yunus dedi ki:

    Merhaba daha önce sorunsuz play store’a oyunu koyduğum halde şu an build alırken hata veriyor imzayı kaldırınca hata düzeliyor boş proje açınca da var yardımcı olabilirsen sevinirim
    hata1:

    Win32Exception: ApplicationName=’C:\Users\Yunus Emre Aydemir\AppData\Local\Android\android-sdk\build-tools\26.0.0\apksigner.bat’, CommandLine=’sign –ks “C:/Users/Yunus Emre Aydemir/Documents/play store deneme 2/user.keystore” –ks-pass pass:”” –ks-key-alias “” –key-pass pass:”” “C:\Users\Yunus Emre Aydemir\Documents\play store deneme 2\Temp/StagingArea/Package.apk”‘, CurrentDirectory=’Temp/StagingArea’
    System.Diagnostics.Process.Start_noshell (System.Diagnostics.ProcessStartInfo startInfo, System.Diagnostics.Process process)
    System.Diagnostics.Process.Start_common (System.Diagnostics.ProcessStartInfo startInfo, System.Diagnostics.Process process)
    System.Diagnostics.Process.Start ()
    (wrapper remoting-invoke-with-check) System.Diagnostics.Process:Start ()
    UnityEditor.Utils.Program.Start (System.EventHandler exitCallback) (at C:/buildslave/unity/build/Editor/Mono/Utils/Program.cs:44)
    UnityEditor.Utils.Program.Start () (at C:/buildslave/unity/build/Editor/Mono/Utils/Program.cs:28)
    UnityEditor.Android.Command.Run (System.Diagnostics.ProcessStartInfo psi, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg)
    UnityEditor.Android.PostProcessor.Tasks.TasksCommon.Exec (System.String command, System.String args, System.String workingdir, System.String errorMsg, Int32 retriesOnFailure)
    UnityEditor.Android.PostProcessor.Tasks.BuildAPK.SignPackage (UnityEditor.Android.PostProcessor.PostProcessorContext context)
    UnityEditor.Android.PostProcessor.Tasks.BuildAPK.Execute (UnityEditor.Android.PostProcessor.PostProcessorContext context)
    UnityEditor.Android.PostProcessor.PostProcessRunner.RunAllTasks (UnityEditor.Android.PostProcessor.PostProcessorContext context)
    UnityEditor.Android.PostProcessAndroidPlayer.PostProcess (BuildTarget target, System.String stagingAreaData, System.String stagingArea, System.String playerPackage, System.String installPath, System.String companyName, System.String productName, BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry, UnityEditor.BuildReporting.BuildReport report)
    UnityEditor.Android.AndroidBuildPostprocessor.PostProcess (BuildPostProcessArgs args)
    UnityEditor.PostprocessBuildPlayer.Postprocess (BuildTargetGroup targetGroup, BuildTarget target, System.String installPath, System.String companyName, System.String productName, Int32 width, Int32 height, BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry, UnityEditor.BuildReporting.BuildReport report) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/PostprocessBuildPlayer.cs:263)
    UnityEditor.HostView:OnGUI()

    hata2:
    UnityEditor.BuildPlayerWindow+BuildMethodException: Build failed with errors.
    at UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer (BuildPlayerOptions options) [0x001b9] in C:\buildslave\unity\build\Editor\Mono\BuildPlayerWindowBuildMethods.cs:162
    at UnityEditor.BuildPlayerWindow.CallBuildMethods (Boolean askForBuildLocation, BuildOptions defaultBuildOptions) [0x00050] in C:\buildslave\unity\build\Editor\Mono\BuildPlayerWindowBuildMethods.cs:83
    UnityEditor.HostView:OnGUI()

    • yasirkula dedi ki:

      İnternette ararken şöyle şeyler buldum:
      – Assets klasörünün içerisine build almayın
      – SDK Manager’da build-tools gibi kritik şeylerin son sürüm olduğundan emin olun
      – JDK’nız son sürüm değilse son sürüm JDK kurup Edit-Preferences’ten JDK yolunu güncelleyin
      – Projenizin olduğu klasörde varsa .vs isimli klasörü ve oradaki Visual Studio ile alakalı dosyaları silip Unity’i tekrar açın
      – Kullandığınız bir plugin’de artık geçersiz bir class veya fonksiyon kullanılıyorsa bu durumda da bu hatayı alabiliyorsunuz. Ancak bunun plugin’i güncellemekten veya silmekten başka bir çözümü yok

  47. Mucahit dedi ki:

    selamun aleykum abi ben yeni bi oyunumu google playe koyucakım imzalama bolumunu aynen yaptım hatta yeni keystore açıp bi kaç kere denedim alias seçili oldugunda apk çıkartmıyo unity 2017 kullanıyorum bu arada sorunun sebebi ne olabilir

  48. Batuhan dedi ki:

    Arkadaşlar Google Play Games Plugin ininin kullanımı bu linkten öğrenebilirsiniz.
    http://botsitgames.com/google-play-games-plugin/

  49. enceweb dedi ki:

    Merhabalar Hocam
    Build aldığım oyunum 28 Mb gibi düşük bir yer kaplıyor, Android 6.0.1 cihazlarda çalışıyor ama 4.4.2 cihazda donarak çalışıyor. Sdk nın tümü yüklü ve güncel ama ıdefication minumum api levelde 4.1 jelly bean api level16 var en düşük daha aşağısını göstermiyor. Sorun nereden kaynaklanıyor olabilir hocam
    Saygılarımla…

    • yasirkula dedi ki:

      Oyunun boyutu kasmasını doğrudan etkilemiyor. Oyun esnasında batching ve SetPass calls sayısı ne kadar fazlaysa performans o kadar düşer. Benzer şekilde, eğer scriptlerinizde çok ağır işler yapıyorsanız da bu performansı etkileyebilir. Mobilde performansı artırmanın en hızlı yolu gölgeleri kapatmak. Onun dışında, sahnede kullandığınız materyallerin shader’larını daha basit şeyler yapabilirsiniz. Mesela mobil oyunlarda Standard shader kullanmanızı hemen hiç tavsiye etmem, performansı gerçekten kötü. Onun yerine işinizi görüyorsa Mobile-Diffuse, yoksa Legacy kategorisinden basit bir shader kullanmayı düşünebilirsiniz.

      Android minimum 4.1 olması ise Unity’nin son sürümlerinde olan bir şey; Unity Android 4.1’den önceki API’lerin desteğini kaldırdı. Ama bu artık bir sıkıntı olmamalı çünkü şu grafiğe göre 4.1 öncesi cihazlar tüm cihazların sadece %1.2’sini oluşturuyor: https://developer.android.com/about/dashboards/index.html

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Connecting to %s