Kişisel Sayfaları
İlgi Alanları
İş Tecrubesi
Eğitim Geçmişi
Sertifikalar & Başarılar
Kullanıcıya ait test sonucu bulunmamaktadır.
Dil Becerileri
Son Forum Aktiviteleri
56Android | Animasyon "Her" Cihazda Çalışmıyor
Merhabalar. Android Studio üzerinden bir uygulama geliştirmekteyim. Veri alışverişi ile alakalı olduğu için roket-Dünya-uzay üçlüsüyle oyun görünümlü bir dizayn konseptini sağladım. Fakat yaptığım animasyonun her cihazda çalışmadığını fark ettim. 4 farklı emülatörde problemsiz, 4 gerçek cihazdanın da 2 sinde problem çıktı. Animasyon başlamadan bitiyor. Alternatifler oluşturdum fakat yavaş çalışıyor ve hoş gözükmüyor. Olay şöyle; arkaplanda bir scrollview var, (custom). Bu scroll en aşağıda başlıyor ve yukarıya doğru çıkıyor. Bu sırada roket de dünyanın tam üzerinde duruyor. Roketi fırlatmak için
1) Value Animator ile setY yaptırıyorum, olmuyor (çalışmayan cihazlarda, yoksa diğerleri problemsiz).
2) Translate Animation ile direkt hedefe gönderiyorum, olmuyor.
3) Timer ile her milisaniyede setY yaptırıyorum. Oluyor fakat durgun ve kasma belirtileri gösteriyor.
ValueAnimator un olması tercih çünkü
setInterpolator(new FastOutSlowInInterpolator()); ile aniden kalkıp yavaşça bitmesini sağlıyorum. Kodlar şunlar;
void RoketiFirlat(int tur)
{
final float RoketY = Roket.getY();
final float RoketYSon = DunyaUstu.getBottom() - DunyaUstu.getBottom() / 2;
Log.d("slide", "Roket Y Son=" + RoketYSon);
if (tur == 1)
{
Animation roketGonder = new TranslateAnimation(0, 0, RoketY, RoketYSon);
Log.d("slide", RoketY + "\n" + RoketYSon);
roketGonder.setZAdjustment(Animation.ZORDER_TOP);
roketGonder.setDuration(5000);
Roket.startAnimation(roketGonder);
}
if (tur == 2)
{
Roket.post(new Runnable()
{
@Override
public void run()
{
Log.d("slide", "Roket Y=" + RoketY + "\n Baslik Top=" + RoketYSon);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB)
{
ValueAnimator hareketEtRoket = ValueAnimator.ofFloat(RoketY, RoketYSon);
hareketEtRoket.setDuration(5000);
hareketEtRoket.setInterpolator(new FastOutSlowInInterpolator());
hareketEtRoket.addListener(new Animator.AnimatorListener()
{
@Override
public void onAnimationStart(Animator animation)
{
Arkaplan.setEnableScrolling(false);
}
@Override
public void onAnimationEnd(Animator animation)
{
Arkaplan.setEnableScrolling(false);
}
@Override
public void onAnimationCancel(Animator animation)
{
}
@Override
public void onAnimationRepeat(Animator animation)
{
}
});
hareketEtRoket.addUpdateListener(new ValueAnimator.AnimatorUpdateListener()
{
@Override
public void onAnimationUpdate(ValueAnimator animation)
{
float nere = (float) animation.getAnimatedValue();
Roket.setY(nere);
}
});
hareketEtRoket.start();
}
else
{
Log.d("slide", "Animasyon Otomatik Olarak Bitti");
Roket.setY(RoketYSon);
}
}
});
}
if (tur == 3)
{
final Timer scrollRoket = new Timer();
roketSuan = (int) Roket.getY();
scrollRoket.scheduleAtFixedRate(new TimerTask()
{
@Override
public void run()
{
Roket.setY(roketSuan);
roketSuan--;
if (Roket.getY() <= RoketYSon)
{
scrollRoket.cancel();
}
}
}, 0, 1);
}
}
Handlerlar, UI Thread, Z adjustment gibi farklı çözümler denedim fakat bir türlü olmadı. Ayriyeten 11 API üstü bütün cihazlar, yani son else ten dolayı değil zira oraya koyduğum bir Log u görmüyor. Kaldı ki "aniamsyon bitince" kısmını görüp çalıştırıyor. Sadece görüntü yok yani. Aynısı Arkaplan tanımlı ScrollView için de geçerli Onda da Value Animator ve Timer kullanıyorum. Yine sadece Timer çalışıyor. Gözümden kaçırdığım bir şey mi var acaba? Cevaplarınızı bekliyorum, şimdiden teşekkürler
AccountManager ByType null Veriyor
Merhaba arkadaşlar.Öylesine oluşturduğum test projesinde hesapları almaya çalışıyorum.
AccountManager hesapYonetici = AccountManager.get(this);
Account[] butunHesaplar = hesapYonetici.getAccountsByType("com.google"); // şurada Facebook u almak istediğimde
com.facebook.android,com.facebook.orca,com.facebook.katana yı denememe rağmen sürekli null veriyor.Bunu almak için Facebook SDK daki auth işlemlerine mi girmeliyim.Öyleyse hiç uğraşmıyıcam ama bunun olması gerekirdi.Aynı şey bu haliyle çalışıyor ve gmail i alabiliyor.Çok gerekli de değil ama neden çalışmadığını anlayamadım.Bilen biri varsa doğru yöntemi söyleyebilir mi acaba?
Volley Kütüphanesi Türkçe Karakter Sorunu
Merhaba arkadaşlar.Uygulamamda volley kütüphanesini kullanarak bi json dan veriler çekiyorum.
Fakat bu çektiğim verilerde "ş","ı" ve "ğ" karakterlerini görüntüleyemiyor.
Volley kütüphanesinde bu sorunu çözebilen var mı acaba,nasıl yapabilirim?
Actionbar Renk "Doğru" Çalışmıyor
Merhaba arkadaşlar.Uygulamamda actionBar rengini değiştirdiğim bir bölüm var ama her seferinde aynı çalışmıyor. Şöyle ki; onCreate'te getActionBar().setBackgroundDrawable(new ColorDrawable(Color.parseColor("#FFA0C4FF"))); kodunu yazıyorum.Fakat uygulama açıldığında renk işlemiyor.Android Menü tuşuna dokundupumda sanki focus oraya geçmiş gibi,o zaman çalışıyor.Fakat bu kdou sadece burada kullanıyorum.Yani menü tuşuyla bi ilgisi olmayan bir şey. Ayrıca uygulamayı tamamen kapatıp bi daha açtığımda (her 3 denemede 1-2sinde) kodu görüyor.Yani doğru çalışmıyor.Ayrıca actionBar'da 2 tane menü butonum var.Onlarda elin üstünde kaldığında title ını gösterir ya.Onu yapınca da kod yeni yapılıyor.Acaba sorun nedendir? ActionBar focus parametresini alıyo gibi.Bana öyle geldi daha doğrusu. Uygulama biraz complex,tetikleyen başka şeyler de olabilir ama sizler de böye bir sorun yaşadınızmı,yaşadıysanız nasıl çözdünüz veya 3.şahıs bakış açısı olarak görüşlerinizi almak isterim.Teşekkür ederim...
Admob Gelir Yüksekliği
Uygulamanın hedef aldığı coğrafya ve kullanıcının hangi işletim sisteminden olduğu çok önemli bu konuda. Amerika ve iOS ikilisi her zaman daha fazla kazandırır. Uygulamanda lokalizasyon varsa ve İngilizce kullanılabiliyorsa yabancılar oynadığı için farklılık yaşanmıştır. Bunun haricinde yok diyosan da gösterilen reklamların reklam veren tarafında geliştiriciye vermeyi tercih ettiği ücretin yüksek olduğu reklamlara denk gelmiş olabilir bu da bi olası durum çünkü.
Uygulamam Play Store da yayınlanmıyor ?
Ön kayıt yayımlamak için gereken bir şey değil. Şöyle ki; Önkayıtta kullanıcılara 90 gün içinde lansman yapacağınızı haber veriyorsunuz ve kullanıcı kitlesi oluşturuyorsunuz. Şu anda Call Of Duty Mobile ın yaptığı ve indirlebilir bir oyun henüz olmamasına rağmen PUBG ye rakip olarak gözüküp geleceğini haber vermesi durumu aslında tam olarak. Uygulamanızın yayınlanması için aynı ekrandan Üretim Sürümü kısmını seçip APK nızı oradan yayınlamanız gerekmekte. Ön kayıt ülkelerini kaldırın derim zira sizin istediğiniz böyle bir durum değil gördüğüm kadarıyla. Üretim Sürümü oluşturup normal yayın seçeneğini kullanabilirsiniz.
Admob banner reklam görünmeme sorunu
adb logcat -s Ads olarak loglara baktığınızda büyük ihtimalle failed to load no ad sent vs gibi bi metin göreceksiniz. Uygulamanın tek kullanıcısı siz olduğunuz için (veya 3-5 kişi fark etmiyor) Admob dan gerçek bir reklam isteği gelmiyor ve clienta reklam sunulmuyor. Sebebi bu. Emulatorde test ad geldiyse problem yok demektir bi endişeniz olmasın.
Bildirim cubugu rengi
Kotlin öyle bu şekilde yapabilirsin, Java kodu benzer zaten tanımlama ve syntaxlarla oynaman yeter;
fun SetNotifBarColor() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
val window: Window = window
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS)
window.statusBarColor = ColorUtils.blendARGB(Color.parseColor("#FFFFFF"), Color.BLACK, 0.2f) // #FFFFFF" kısmına karıştırılmasını istediğin rengi girmen yeter. Bu renk 1 üzerinden 0.2 oranla siyaha doğru kayarak bildriim rengini değiştirecektir
}
}