Tizen IDE ile yazılım geliştirme

Tizen ile ilgili yazılara devam ediyorum. İlk iki bölümde Tizen SDK kurulumu ve emülatörüne bakmıştık, bu yazımda Tizen’in IDE’sini kullanarak yazılım geliştirmeyi anlatmaya çalışacağım.

Şimdilik sadece 32 Bit Ubuntu üzerine kurulabilen Tizen SDK kurulumu ile Eclipse Ingido tabanlı geliştirme ortamı da kuruluyor. Yani Android’de olduğu gibi SDK ile IDE ayrı ayrı kurulmuyor.


Bu geliştirme ortamına Appications -> Other -> Tizen IDE menüsünden ulaşabiliyoruz.





Devamı

Tizen emülatörü

Tizen emülatörünü düzenlemek ve çalıştırmak için  Emulator Manager yazılımı kullanılıyor. Emulator Manager yazılımını açınca 480 x 800 piksellik bir hazır cihaz olduğunu görüyoruz.


Devamı

Yeni bir mobil işletim sistemi ve geliştirme ortamı: Tizen

Nokia’nın MeeGo’dan tamamen desteğini çekmesi üzerine Intel Samsung ile işbirliği yaparak Linux Foundation çatısı altında MeeGo kodları ile yeni bir işletim sistemi çalışmasına başladı ve ortaya Tizen çıktı. Tizen akıllı telefonlarda, tabletlerde, araç cihazlarında, televizyonlarda kullanılabilecek açıkkaynak kodlu ve Linux tabanlı bir mobil işletim sistemi. Tamamen HTML5 düşünülerek ortaya çıkmış olan Tizen’de uygulamalar HTML, Javascript ve CSS ile yazılıyor.

Aşağıdaki mimari çiziminden de anlaşılacağı üzere çok ince bir kernel ve servis katmanı üzerinde asıl Tizen’in odaklandığı Web API ve Web Uygulamaları bulunuyor.




Devamı

Forum açmak

Birkaç günlük çalışmanın sonuda muharremtac.com forumu aktive ettim.
Şimdi bu zamanda forum mu açılır diyebilirsiniz, doğru da söylersiniz ama önce bazı konuları açıklamama izin verin.
1999 ve 2000 yılından beri Bulletin Board'lar, forumlar içerisinde aktif olarak bulundum. Efsanevi ocal.net forumundan sonra uzunca bir süre ceviz.net'te aktif olarak paylaşımlarda bulunmaya çalıştım ve arada bazı başka yazılım forumlarında da aktif olarak bulundum.

Sosyal medya patlaması ile pek çok sosyal ağda da aktif olmaya çalıştım.

Bu yazı yazıldığı sırada,
Google Plus'ta 2700'ün üzerinde kişinin çevrelerindeyim, 
Twitter'da 1200'ün üzerinde takipçim bulunuyor,
Facebook'da 800'ün üzerinde arkadaşım var, bütün sosyal medya dostlarıma sevgilerimi saygılarımı sunuyorum. 

Bunları anlatmamın nedeni birden bire neden forum açma ihtiyacı hissettiğim. Zaten bana ulaşmak isteyen ulaşabiliyorsa foruma ne gerek var?

Bunun bir kaç nedeni var.

Neden 1) Java ile forum olur mu? Yapılır mı yapılsa kullanılır mı sorularına bir yanıt vermek. JForum adlı daha önce de kullandığım forumu Türkçeleştirerek ve üzerinde epey çalışarak bu soruya bir yanıt vermeye çalıştım. JForum bir kaç yıl öncesinde kendi yardım forumu olan büyük bir platformken birden gelişmesi durmuş halde karşıma çıktı. Ama ben halen ümitli olduğumdan tercihimi ondan yana kullandım. Yoksa başka Java ile yazılmış forumlar da yok değil.

Neden 2) Mail ile, sosyal ağlar ile bana ulaşıp soru soran dostlarıma bu sorulara blog yazarak yanıt vermeye çalışıyordum ama bu soruların bir forumda olmasının daha anlamlı olacağını düşündüm. Eski bir yapı gibi görünse de forumlar bilgilere ulaşmanın halen en başarılı yolu. Bütün büyük bilişim sitelerimizin de forumu var.

Neden 3) Gelecekonline için kuracağımız forum için bir altyapı hazırlığı olması için kendi forumumu canlı ortama aktardım. Buradan gelecek geribildirimler ile farklı bir forum seçebileceğiz ya da bu forumda karar kılacağız.

 
Evet forumum açıldı. Bazı içerikleri forumdan da paylaşacağım.  Her türlü sorunuzu buradan yöneltebilirsiniz.

En derin saygı ve muhabbetlerimle. 


Phonegap ve HTML5 ile Android’de native uygulama geliştirmek

05 January 2012 Thursday
Etiketler: HTML5 Phonegap android
Phonegap, Nitobi şirketi tarafından duyurulmuş açık kodlu bir mobil uygulama geliştirme platformudur. Nitobi Adobe tarafından satın alınmıştır. Phonegap’de yazılım geliştirme HTML, CSS ve JavaScript ile yapılmaktadır ve bu özelliği pek çok avantajı beraberinde getirmektedir:

Bu avantajları şöyle sıralayabiliriz:

HTML - CSS - JavaScript bilgisi ile yazılım geliştirme ve dolayısıyla daha çabuk öğrenme imkanı,
Aynı kodlama ile farklı platformlarda uygulama geliştirme,
Gelecek nesil web deneyimini uygulama,
Geniş topluluk (community),
Başarılı dokümantasyon,
Adobe desteği.

HTML5’in gücünü kullanarak sistem kaynaklarına / sensörlere erişmek teorik olarak bir dereceye kadar mümkündür ancak burada dikkat edilmesi gereken nokta Phonegap’in bu işlemi yaparken native uygulama içerisinden erişim yetkilerini alarak HTML5’e aktarmasıdır.

Devamı

Android üzerinden SQL Server iletişimi

"Android cihazlardan SQL Server'a nasıl erişirim" şeklinde bana ulaşan bir soruya yanıt olması açısından bu blogu yazıyorum umarım yararlı olur.

Öncelikle bilinmesi gereken önemli bir nokta var: veritabanlarına mobil cihazlardan doğrudan veritabanı protokolü üzerinden iletişim kurmak doğru değildir. Bunun bir kaç nedeni var:

1) Veritabanlarının portları farklı olabilir ve bu portlar güvenlik duvarları ile kapatılmış olabilir. Bu portlar üzerinden bağlantı kurmak da güvenlik duvarları neneniyle engellenmiş olabilir.  
2) Veritabanları dış erişimlere tamamen kapalı olabilir.
3)  Mobil uygulamalara veritabanı sürücüsü (database driver) eklemek harici bir kütüphane olduğundan uygulamanın boyutunu artırır.

Uygun olan yöntem API veya Web Servisi kullanmaktır.

Fakat gerçek hayat bazen bazı uygun olmayan koşulları zorunlu kılıyor ve bir mobil ugyulamanın bir veritabanına erişmesi ihtiyacı ortaya çıkabiliyor. Bu durumda da Android'in framework altyapısı olan Java'nın veritabanı bağlanırlığı (JDBC) yardıma yetişiyor.

Yani Android cihazlardan JDBC ile veritabanlarına bağlanmak mümkün.

Android cihazlardan SQL Server'a bağlanmak için dikkat edilecek hususlar şöyle:


1) Android uygulamasına AndroidManifest.xml dosyasından internet izni vermek gerekiyor.
<uses-permission android:name="android.permission.INTERNET" /> 

2) net.sourceforge.jtds.jdbc.Driver sürücüsünü kullanmak gerekiyor. Microsoft'un kendi sürücüsü ile bu işlem gerçekleşmiyor.

3) net.sourceforge.jtds.jdbc.Driver sürücüsünün bağlantı şekline dikkat etmek gerekiyor. Örnek : jdbc:jtds:sqlserver://IP_ADRESI:1433;databaseName=VERITABANI_ADI

Bunların dışında normal JDBC bağlantısını aynen yapabilirsiniz. Örnek:


        Connection conn = null;
String url = "jdbc:jtds:sqlserver://IP_ADRESI:1433;databaseName=VERITABANI_ADI";
String driver = "net.sourceforge.jtds.jdbc.Driver";
 
String userName = "KULLANICI_ADI";
String password = "SIFRE";
try {
  Class.forName(driver).newInstance();
  conn = DriverManager.getConnection(url , userName, password);
  conn.close();
} catch (Exception e) {
   e.printStackTrace();
}

Android projenize SQL Server JDBC sürücüsünü kütüphane olarak tanıtmanın yöntemi de aşağıda mevcut (üzerine tıklarsanız büyük haline ulaşırsınız).




Bu şekildeki bir bağlantıyı yaptığım ve kendi lokal ağımda denediğim bir örneği aşağıdaki adresten indirebilirsiniz:

http://download.muharremtac.com/android_sqlserver.zip
 

Gelecekonline Projeleri

Uzunca bir süredir işten arta kalan zamanlarda Gelecekonline’ın geliştirilmesine zaman ayırıyorum. 
 
Gelecekonline 2005 yılında kod ve server altyapısı olarak ASP/Windows ile başladığı internet yolculuğuna şu an Java/Linux  ile devam ediyor. Aslında Wordpress kurmak ve buna bir de vBulletin Forum entegre etmek başlarda alternatiflerden biriydi ama sonradan Java ile kendi yazdığım bir blog altyapısını Gelecekonline için geliştirmek yönünde karar aldık.
Bilindiği gibi Java diline hakim olmak büyük bir projede tek başına yeterli değil bunun yanında öğrenilmesi gereken bir sürü framework, kütüphane, teknik, SDK’lar, API’ler de işin içine giriyor.
Bu gibi yan konularda hem bir AR-GE laboratuvarı hem de çalışan canlı bir sistem olması açısından Gelecekonline bu zaman zarfında bana çok şey kazandırdı.
 
Gelecekonine Android Uygulaması

Başlangıçta bir RSS okuyucusu olan Gelecekonline Android uygulaması için bir JSON API yaptım ve verileri bu API’den çekmeye başladık. Bu API’yi geliştirerek Android Uygulamasına ilave özellikler kazandırmaya çalıştım. Gelecekonline Android Uygulaması çok büyük bir ilgiyle karşılanmadı açıkçası. Halen 800’ü rakamlarda aktif kullanım ve 4000’lerde gezen bir indirme oranına sahip. Oysa yeni haber eklendiğinde uyarı veren ve widget içeren ilk Android bilişim haber uygulamalarından biridir.
Uygulama adresi : https://market.android.com/details?id=com.gelecekonline
 
Gelecekonine Layar Uygulaması

Layar aslında en başarılı Augmented Reality (Zenginleştirilmiş Gerçeklik) uygulamasıdır. Layarı’ı diğer çalışmalardan ayıran en büyük özellik uygulama yapıp Layar sunucularına yüklenebilmesidir. Geliştirilen uygulama da aslında bir JSON API oluşturmaktan ibaret. Bu JSON API’yi oluştururken Google’ın gson kütüphanesini kullandım.
Layar için bizim sunduğumuz çok kapsamlı bir servis henüz yok. Yaptığımız çalışma kişilerin etrafında bulunan elektronik mağaza, teknik servis gibi bilişim ile ilgili yerleri listelemek ve harita/kamera üzerinden göstermek. Layar uygulamamız şu anda bölgesel olarak en popüler Layar uygulamalarından biri.
Uygulama adresi : https://market.android.com/details?id=com.gelecekonlinelayar
 
Chrome Gelecekonline TV Plugin

Google’ın başarılı internet tarayıcısı Chrome’a yüklenebilen uygulamamız şu an için sadece Gelecekonine videolarını çekiyor fakat ilerleyen günlerde iyileştirmeler yapacağım ve hatta yeni Chrome uygulamaları yapacağım.
Uygulama adresi :https://chrome.google.com/webstore/detail/ofakenecckigicodicjpepojimegkkno
 
Gelecekonine Deprem İhtiyaç Projesi

Ve geldik canımı yakan ve “nerede hata yaptım” dedirten projeye. 
1999 senesinde meydana gelen büyük depremde Bursa’da yaşıyordum ve depremi çok şiddetli hissettik. Günlerce sokaklarda, parklarda yattık. Çok şükür ki hiçbirimizin başına kötü bir olay gelmedi ama depremin ne derece büyük bir yıkım olduğunu her vatandaş gibi ben de çok ağır şekilde öğrendim. Hayatını, ailelerini kaybeden on binlerce vatandaşımıza günlerce gecelerce gözümüzden yaşlar döktük, yardımcı olmaya çalıştık.
Van’da meydana gelen deprem için de her Türk vatandaşı gibi ben de ne yapabilirim diye düşünmeye çalıştım. Bu düşünce ile ihtiyaçların bildirilmesi için bir projeyi hayata geçirdim.
Bu projede ihtiyaçlar Android ve Java ME uygulaması ile Gelecekonline Deprem sayfasına anlık olarak iletiliyor ve @vandpr Twitter kullanıcısı ile bölge bilgisi de dahil olmak üzere tweet gönderiyor.
Gönderilen ihtiyaçlar gelecekonline.com/deprem adresinden anlık olarak izlenebiliyor.
Bu projeyi duyurabilmek için memleketin pekçok gazetecisine mail attım, Gelecekonline’da haber yaptım ama kullanılmasını / duyurulmasını sağlayamadım.
 
Proje halen açık durumda ve kullanılmaması için bir sebep de yok.
 
Evet benim için sadece bir içerik paylaşım sitesi değil büyük bir AR-GE laboratuvarı olan Gelecekonline’ın projeleri hakkında bilgi vermeye çalıştım. Okuduğunuz için teşekkürler. 

Hey Taksi Projesi

Hey TaksiToplu taşıma araçlarını ve özellikle taksileri çok yoğun olarak kullanan bir kişi olarak, arandığı zaman bulunmayan ama aranmadığı zaman adım başı karşımıza çıkan taksilerle ilgili bir Android uygulaması yapmayı uzun zamandır düşünüyordum.

Taksiler bilindiği gibi ülkemizde kendini teknolojiye en çabuk adapte eden vasıtalar oldular.
Taksi durakları, odalar ve meslek grupları olarak örgütlenmeleri,
Belediye tarafından şoförlerin sürekli eğitime tabi tutulması,
Trafik yoğunluğu hakkında diğer taksilerden bas konuş cihazları ile bilgi almaları,
Araçların büyük çoğunluğunun temiz ve konforlu olması gibi nedenlerle aracı olmayan ya da aracı olmasına karşın trafikte boğuşmak isteyenlerin kurtarıcısı durumuna geldiler.

Bu zamana kadar taksilerle ilgili pek çok mobil uygulama yapılmış ancak hiç biri yeterli yaygınlığa ulaşamamış. Yaptığım araştırmalarda 2002 yılından itibaren o yılların teknolojisi ile yapılması düşünülmüş ve çeşitli nedenlerle hayata geçememiş tez konusu dahi olduğunu buldum.

Bu uygulamaların başarılı olmama nedenlerini araştırdığımda şöyle sonuçlara ulaştım:

1.Sorun ) Küresel konumlandırma sistemi (GPS)  verileri yanlış kullanılmış veya hiç kullanılmamıştı. Taksi çağıracak kişi telefonuyla kendi konumunu buluyor ve kendisine en yakın taksi durakları bilgisine ulaşıyordu.

2.Sorun ) Yapılan çalışmalar zamanından önce düşünülmüştü. Yani düşünülen projelerin ihtiyacı olan İnternet, GPS, telefon hızları gibi konular yeterince gelişmeden bu projeler hayata geçirilmeye çalışılmıştı.

3.Sorun ) Projelerdeki uygulamalar yeterince basit değildi. Uygulamalarda isim soyisim, kullanıcı adı, şifre, telefon, kayıt, plaka bilgisi gidilecek yer gibi bir taksi çağrısında tamamen gereksiz olan pek çok özellik bulunmaktaydı.

Bu üç soruna kendimce çözümler bulmaya çalıştım ve Hey Taksi projesini iki adet Android uygulaması olarak yayına aldım.

1.Çözüm ) GPS’i doğru kullanmaya çalıştım. Hey Taksi projesi Android cihazından GPS bilgisini alarak sunucuya 10 dakika süreyle aktif bir taksi çağrısı olarak kaydediyor. Bu aktif çağrıları görmek için taksilerde de bir uygulama olması gerekiyor. Bu uygulama da bir Android uygulaması ve 200 metre çapında bir alanda bulunan aktif çağrıları buluyor. Yani müşteri taksilere bir mesaj göndermiyor, taksilerin aktif çağrıları araması gerekiyor.



2.Çözüm ) Konuma dayalı uygulamalar için gerekli teknolojik şartlar günümüzde mevcuttur. Günümüzde Android cihazları  yeterince yaygın, GPS alıcısı var, Turkcell T20 gibi başarılı cihazların fiyatları son derece makul durumda. 3. çözüm için benim yapmam gereken bir şey yoktu aslında. Çünkü günümüzde zaten böyle uygulamalar için gereken her türlü imkan bulunuyor.

3.Çözüm ) Uygulamayı basit tuttum. Geliştirdiğim uygulamada sadece “Çağrı Yap” butonu bulunuyor ve bu butona basılması yeterli. Bunun dışında yapılması gereken bir şey yok. Yani müşteriden hiç bir bilgi alınmıyor.




Hey Taksi uygulamalarını aşağıdaki Android Market adreslerinden indirebilirsiniz:

Taksi çağırmak için kullanılan uygulama :
https://market.android.com/details?id=com.m2.taksi

Taksiler için gereken uygulama:
https://market.android.com/details?id=com.m2.taksi.arac
Hey Taksi Arac uygulaması

Uygulamamızı Android Market'te görüp bir tasarım yaparak hediye eden Sayın Sencer Buğrahan Yılmaz'a teşekkürlerimi sunarım.
2012

Ocak

2011

Ocak Şubat Nisan Haziran Temmuz Ekim

2010

Ocak Şubat Nisan Haziran

2009

Ocak Şubat Nisan Mayıs Haziran Temmuz Ağustos Eylül Ekim

2008

Ocak Nisan Haziran Temmuz Ağustos Eylül Ekim Kasım Aralık

2007

Şubat Mart Nisan Mayıs Haziran Temmuz Ağustos Eylül Ekim Kasım Aralık

2006

Ocak Şubat Nisan Ağustos

2005

Ocak Şubat Mart Nisan Mayıs Haziran Temmuz Ağustos Eylül Ekim Kasım Aralık

2004

Ocak Şubat Nisan Ağustos Eylül Ekim Kasım Aralık

2003

Ocak Şubat Mart Nisan Mayıs Haziran Temmuz Ağustos Eylül Ekim Kasım Aralık

2002

Ağustos Eylül Ekim Kasım Aralık



Bir güzel söz söyleme sanatı varsa, bir de güzel anlama ve dinleme sanatı vardır.
Epiktetos


  
Bu site açık kaynak kodlu uygulamalar ve kütüphaneler kullanılarak yapılan mblog içerik yönetim sistemi ile sunulmaktadır.
© 2002 - 2012 Muharrem Taç
Sürüm : 5.4.8