Programlama etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Programlama etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

27.11.2012

Android & Processing

Processing and Android

Daha önce processing programlama dilinden ve derleyicisinden bahsetmiştim. Bunun için Processing yazımı okuyabilirsiniz. Ayrıca arduino ile birlikte kullanıp bir kaç uygulama yapmıştım. Bunun içinde Arduino bölümüne bakabilirsiniz. Bu sefer processing ile yapacağım programın nasıl android sistemler üzerinde çalıştırıldığını göstereceğim. Processing çok ileri programlama bilgisi gerektirmeyen bir dil. Bu sayede aklınıza gelen uygulamarı hızlı bir şekilde tasarlayabilir ve Android üzerinde çalıştırabilirsiniz. Ayrıca bu yazı karşılaşılan sorunlar için çözüm yollarını gösteren tek türkçe kaynak olacak :) (bence)
Ek not : Android + Arduino + Processing bu üçü bir araya gelirse neler olur neler yapılabilir. "yakında" :)

Daha önce android için uygulama geliştirmiş iseniz java, sdk, emulator vb.terimlere uzak değilsinizdir. Emülatöre derleyici üzerinde yazıp derlediğimiz yazılımları test ettiğimiz sanal cihazlar diyebiliriz. Bir nevi programı telefona kurmadan önce neler olacağını ekranınızda görebiliyorsunuz. Bu sayede bir çok model ve versiyon için elinizde cihaz bulunmasada uygulama geliştirebiliyorsunuz. Ben burada android için hazırlanan sdk yı kullanacağım ve kendi sanal cihazımı oluşturacağım. 

İlk olarak processing indirip kuruyorsunuz.
İkinci adım sdk manager indiriyorsunuz ve kuruyorsunuz.
Üçüncü adım sdk manager ile android tools ve apı 10 indirmeniz gerekli. Dikkat : Android api 10 olmak zorunda çünkü processing derleyicisi diğer api için şuanda hata veriyor. Ayrıca extras bölmündeki araçları da kurun.
Dördüncü adım Android AVD manager kontrol etmeniz gerekli. Eğer kendiliğinden herhangi bir sanal cihaz oluşturulmuş ise hepsini silin. Processing kendisi için gerekli sanal cihazı otomatik olarak oluşturacaktır. Aşağıdaki resimde benim kullandığım sanal cihazlar görülmektedir.
 
Beşinci adım sıra geldi işin processing üzerinde yapılması gereken kısmına. Derleyiciyi çalıştırın ve sağ üstte bulunan Java butonuna tıklayın. Ardından bir pencere açılacak ve size Android SDK'yı kurmanız gerekdiğini söylecek. Tamam seçeneğini ile devam edin. Sonraki pencerede sizden SDK yı kurduğunuz dizin yolunu isteyecek. Arayüzü kullanarak sdknın bulunduğu adrese gidin ve open butonuna tıklayın. Android klasörü genelllikle program files dizini içersinde bulunur. Eğer herşey sorunsuz tamamlanırsa derleyicinin rengi değişecek ve yeşil olacak. Ayrıca yukarıdaki alana android sekmesi eklenecek.

Son adım artık denem yapma zamanı geldi. Herşey yolunda giderse ilk uygulama emulator penceresinde görülecek. File->exemples yolunu izleyerek denemek için bir yugulama seçin. Çok spesifik bir şey olmasın (gps, cam, 3d) kütüphane indirmeniz ve eklemeniz gerekebilir. Başlangıç için makul bir uygulama seçin. Yeni bir pencere açılacak. Bu pencere üzerinde Sketch -> Run in emulator yolunu izleyin. Biraz beklemeniz gerekcek. Derlenme ve emulatorün açılması kurulması biraz zaman alıyor. Sonunda aşağıdaki resime benzer bir emulator penceresi gelmeli. Şimdi projenizi bir daha derleyin büyük ihtimalle port meşgul olduğunda ve sanal cihaz hazır olmadığından derleme aşamasında hata almışsınızdır.



 Tekrar derledikten sonra derleyici ekranında uygulamanın gözükmesi gerekli. Örnek aşadığıdaki ekran görüntüsü. Bir sonraki yazıda görüşmek üzere. Artık kendim bir uygulama yazıp onu telefon üzerinde çalıştıracağım.


Karşılaşılacak muhtemel sorunlar ve çözüm yolları : 

- Önce sabır
- SDK güncelleyin
- Google Andorid API 10 kurun
- Processing güncel sürümünü indirin
- Processing File-> Preferences yolunu izleyerek preferences.txt dosyası içersinde port numarasını ayarlayın. Örneğin benim emulatorumün port numarası 5554. Bunu yukarıdaki resimde sol üste bakarak görebilirsiniz. Her kullanıcı için bu numara farklı olabilir ! Port numarasını öğrendikten sonra android.emulator.port=5554 şeklinde değeri dosya içinde kaydedin.
- SDK için dopru yolu gösterdiğinizden emin olun. Bunu preferences.txt içerisindeki  android.sdk.path=C:\Program Files\Android\android-sdk değerini kontrol ederek yapabilirsiniz.
- Eğer hala daha sorun alıyorsanız ya da derledikten sonra emulator çalışmıyorsa AVD Manager aracılığı ile Processing'in kendi oluşturuduğu AVD ismini Processing-Android-10 olarak değiştirin ve yeni bir AVD olarak kaydedin. 
 - Önce emulatorun tam olarak krulmasınıı bekleyin. Ardından projeyi tekrar derleyin.
- Bilgisayarınızı yeniden başlatın.











22.02.2012

LUA Programming Language


Uygulama geliştirmek için yine az duyulmuş farklı bir programlama dilini kullanacağım :) Bu dilin adı lua. Peki neden lua ? Çünkü bir PSP'ye sahibim ve artık onunla oynamak kesmiyor :) Kendi yazdığım uygulamalar ve oyunlar ile elimdeki cihazı daha etkin bir şekilde kullanmak istiyorum. Daha önce alel acele de olsa bir heyecanla girişmiştim lua ile programlamaya. Hatta psp ilginç için birkaç oyun bile yazdım. Fakat hiç biri programlama açısından istediğim şekilde değildi. Çünkü o zamanlar nesneye dayalı programlama nedir bilmiyordum. Dolayısıyla yazdığım uygulamalar alıp başını gidiyor karma karşık içinden çıkılmaz bir hal alıyordu. Şimdi ise PSP VITA yavaş yavaş meydanı eline geçirme aşamasındayken emektara (PSP FAT) bir uygulama daha yazmak istiyorum. Aradan uzun bir zaman geçti bu yüzden lua programlama dilini kullanabilmek için yapısına yeniden bir göz geçirmem lazım. Bu ilk baştan göz geçirme sırasında da yaptıklarımı burada yazacağım. Bu sayede PSP için uygulama geliştirmeyi anlatan güzel bir kaynak yaratmayı amaçlıyorum.

Lua ile ilgili olarak ön bilgi edinmek isteyenler http://www.lua.org/ adresini ziyaret edebilirler. İnternette bu konu ile araştırdınız zaman sizde göreceksiniz bir dil için yeterli olabilicek kaynak ve örnek çalışma bulunamıyor. Durum böyle olunca Türkçe ayrıntılı ve düzgün bir kaynak ise neredeyse hiç yok. Lua ile ilgili ilk projede görüşmek üzere. 

print("Olá lua"); // portekizcede "merhaba lua" :) bu arada lua ay anlamına geliyormuş.