Programlama konusunda her zaman bilgi ve deneyimleriyle bizleri aydınlatan Muharrem Taç ve Aykut Taşdelen‘in Android Programlama ,C ve Sistem Programcıları Derneği kursları ve genel olarak mobil programlama,mobil programlama kursları ve mobil programlamanın geleceği hakkında yaptıkları söyleşi.
Posts Tagged ‘Mobil Programlama’
Android Programlama Söyleşisi
Tuesday, February 14th, 2012Mobil araçlar için HTML 5 Frameworkü
Thursday, January 6th, 2011Şurada mobil araçlarda html5 ile ne yapılabildiğini ve sizin de bu frameworkü
kullanarak neler yapabileceğinizi ,bişey yapmasanız bile html5 ile mobil programlama ve mobil araçların ne kadar kullanışlı hale geleceğini görebileceğiniz bir siteyi bulabilirsiniz.
mobil programlama ve mobil araçlar için HTML5 frameworkü için :
http://www.dhtmlx.com/ziyaret etmeniz yeterli .



Mobil Programlamaya Yönelmenin Tam Zamanı
Wednesday, April 21st, 2010Bundan 15 – 20 sene önce bilim kurgu filmlerinde izlediğimiz şeyler gerçek olmaya başladı. İnternetten okuduğum bir habere göre, görüntülü konuşmayı da destekleyen ve en gelişmiş cep telefonlarındaki tüm özelliklere sahip bir kol saati 2010 yılının başlarında satışa sunulacakmış. Zaten biz elde taşınan kibrit kutusu büyüklüğünde bir cihazla dünyanın öbür ucundaki biriyle görüntülü konuşmaya da razıydık.
3G ile ilgili olarak birçok kişi birçok şey yazdı. Ben sizi bu konuda gereksiz detayla boğmayacağım. Kısaca artık cep telefonunuzla çok daha fazla veri aktarımı gerçekleştirebileceksiniz demek istiyorum. Bu da cebinizdeki o küçücük cihazla görüntülü iletişim yapabilecek, canlı yayın izleyebilecek ve asıl önemlisi hızlı veri aktarımı sayesinde birçok internet bağlantılı yazılımı kullanma şansınız olacak.
Şu an için 3G, görüntülü konuşma, televizyonda dizi ve maç izleme devrimiyle birlikte anılıyor. Biz yazılımcılar için önemli olan yönüyse, mobil cihazlar için internet bağlantılı uygulama geliştirme yönünde önümüzü açması. Şu ana kadar çok düşük kalan gprs/edge hızı nedeniyle mobil cihazlarda internet bağlantılı uygulamalar pek kullanılamıyordu. Şimdiyse düşen maliyetler ve artan hız, çok çeşitli mobil uygulamalar için talep ve fırsat yaratacaktır.
Demedi demeyin! Zaman mobil uygulama geliştirme zamanı.
Hayal gücünüzü kullanın.
Hızlı veri aktarımı ve harita + GPS desteğiyle eşinizin, çocuğunuzun, sevgilinizin gerçek zamanlı olarak nerede olduğunu gösteren bir uygulama hoşunuza gitmez miydi?
Ya da trafikte giderken ayrıntılı olarak yol durumlarını raporlayan ve bulunduğunuz konuma göre, trafik bilgisini de göz önünde bulundurarak en uygun yolu belirleyen bir yol gösterici (navigator).
Belki de vapurda/ otobüste seyahat sırasında dördüncü olarak katılıp, arkadaşlarınızla bir okey partisi düzenlersiniz.
Ya da akıllı evinize bağlanır, odaları ve evin dışını görüntülü olarak denetleyip, ışıkları açıp/kapatabilir, perdeleri örtebilirsiniz.
Bunlar ve daha fazlası er ya da geç yapılacak. Mesele bunları yapanlardan biri de siz olacak mısınız?
Kadir Çamoğlu /CHİP
Kitap : Mobil Programlama
Friday, March 19th, 2010
KADİR ÇAMOĞLU – ÇAĞDAŞ DAVULCU
yayın tarihi:01.02.2008, 272sf, 1.Hamur, 19,5 x 24, 260gr
Mobil programlamanın temellerini öğrenmek için hazırlanmış ilk kitap! Bu kitapla .Net Compact Framework ile güçlü ve verimli uygulamaları kolaylıkla geliştirebilir, SQL Server 2005 Everywhere sürümüyle mobil cihazlarda veri işlemenin derinliklerine dalabilir, akıllı aygıtlarla profesyonel uygulamalar geliştirmenin keyfini yaşayabilirsiniz.
Kitapta işlenen konular kısaca şöyle:
• Program Geliştirme Arabirimi (IDE)
• Standart Mobil Kontroller Kullanıcı
Arabirimi ve Formlar
• Zengin Kullanıcı Arabirimleri
• Metinler, Sayılar ve Tarihlerle Çalışmak
• Dosya ve Dizinlerle Çalışmak
• Koleksiyonlarla Çalışmak
• Özel Amaçlı Mobil Kontrolleri
• XML ve DataSet ile Mobil Programlama
• Sql Server 2005 Mobile Edition ve
ADO.Net ile Veri Erişimi
• XML Web Servisleriyle
Mobil Programlama
• Hata Ayıklamak
• GDI+ ve Yazdırma İşlemleri
Kadir ÇAMOĞLU
1974 İstanbul doğumlu olan Kadir Çamoğlu iktisat alanında lisans sahibidir. 1995 yılından bu yana çeşitli yazılım projelerinde görev almış, veritabanı ve yazılım geliştirme başlıklarında danışmanlık yapmıştır. 1994 yılında başlayan eğitim sektörü deneyimini 2000 yılından itibaren teknik eğitmen olarak devam ettiren Kadir Çamoğlu, New Horizons Bilimer Bilişim Akademisi’nde, Yazılım ve Veritabanı Eğitimleri İş ve Ürün Geliştirme Yöneticisi olarak çalışmaya devam etmektedir.
Çağdaş DAVULCU
İzmir Atatürk Anadolu Lisesi mezunu olan ve İstanbul Üniversitesi İktisat Fakültesi Ekonometri Bölümü kültürü ile yetişen Çağdaş DAVULCU, profesyonel kariyerinde Microsoft teknolojileri üzerine yüzlerce saat eğitim aldı. Öğrenciyken çalışmaya başladığı BAY-TEK Software firmasından sonra Bilimer Bilişim Akademisinde Yazılım Geliştirme Eğitmeni olarak 2 sene görev aldı.
PUSULA YAYINLARI
Android İle 30 dolara robot
Friday, March 19th, 2010Tim Heath ve Ryan Hickman, Android işletim sistemi tabanlı bir
cihaz ile basit de olsa bir robot yapmayı başardı. Bu basit robotun üzerinde sadece 30 dolarlık bir cihaz bulunuyor. Bilgisayar üzerinden gerekli komutları verilip uzaktan yönlendirilebilen bu robot bir şekilde Android’in gücünü de ortaya koyuyor. Cihaza ait videolara ve yapım süreçlerine ait bilgileri bulabileceğiniz kendi internet sitelerine buradan ulaşabilirsiniz.
Android’de Başlangıç Programı Yazmak
Friday, March 19th, 2010Hikaye: Telefonunuz yeni açıldığında, programınızın otomatik olarak açılmasını sağlayabilir, ya da arka planda bazı önyüklemeleri gerçekleştirebilirsiniz. İşte bende bugün yeni yapmaya başladığım bir programın benzer bir özelliği olmasını istediğim için bu konuyu araştırmaya koyuldum. Zaman içerisinde değişen Android API’leri yüzünden internetten araştırıp bulduğum hiç bir bilginin tam ve geçerli olmaması sonucunda, yarım saatte yapmayı planladığım şeyi ancak yarım günde yapabildim. Zaten bu dökümanı yazma sebebim de tam olarak bu oluyor.
Background: Öncelikle Broadcast Receiver (ya da eski ismiyle Intent Receiver) ile, cep telefonumuzun açıldığını anlayacağız. Peki ama Broadcast Receiver’da ne oluyor? derseniz; Broadcast kelime manası olarak, “yayın yapmak” demektir. Bunu televizyon yayınına benzetebiliriz. Ortada bir antenden, her tarafa yayın yapılır ve o sinyali almak isteyen herkes alır. Tam olarak Android işletim sistemi içerisindeki broadcast yayını da böyle yapılır. İşletim sistemi içerisinde gerçekleşen bir olay karşısında, “ben bunu yaptım” diye bir yayın yapar. Bu bilgiyi almak isteyen her program bunu alarak kullanır, tepki verir. Mesela cep telefonuna bir SMS mesajı geldiğinde, Android bir broadcast yayını ile(intent göndererek) tüm programlara SMS alındığına dair bilgilendirir. Aynı şekilde, cep telefonumuz açıldığında, Android bize telefonun açılışını haber verebilir. Biz yeter ki bu yöne kulağımızı kabartalım
İcraat: İşte BroadReceiver sayesinde, tüm broadcastlara ulaşabiliriz. Fakat önemli olan tüm broadcast yayınları içerisinden işimize yarayacak olana ulaşabilmek. Bunun için gelen broadcastları AndroidManifest.xml içerisinde filtreleyeceğiz. Tabi bir de tüm bu işlemler için gerekli permission’ları yine AndroidManifest.xml içerisinde tanımlamış olmamız gerekiyor. İsterseniz artık icraata geçelim..
<receiver android:name=”.StartupIntentReceiver”>
<intent-filter>
<action android:name=”android.intent.action.BOOT_COMPLETED” />
<category android:name=”android.intent.category.LAUNCHER” />
</intent-filter>
</receiver>
Yukarıdaki gibi bir receiver’ımız için bir filtre yazıyoruz. Yani, tüm broadcast yayınları içerisinden telefonun açılışının ardından yapılan yayını yakalayacağız. Bunu android.intent.action.BOOT_COMPLETED sayesinde anlayacağız. Fakat bu broadcast yayını dinleyebilmemiz için de, belli izinleri almış olmamız gerekiyor. Bunun için yine AndrodManifest.xml’in içerisine şu permission kodunu ekliyoruz.
<uses-permission android:name=”android.permission.RECEIVE_BOOT_COMPLETED” />
Yanılgı: Her ne kadar Android’in kendi sitesindeki dökümanlarda ve diğer bir çok sitede yukarıdaki permission’un yeterli olduğu yazsa da, telefon açılışının dinlenmesinde kullanılacak izin için aslında bu tek başına yeterli değildir. Benim yarım gün boyunca boşuna uğraşmamın sebeblerinden bir tanesi olan bu permissionun yanına aşağıdakilerin de tamamını eklemediğiniz sürece, (Android 1.5 ve 2.0′da test edilmiştir) almak istediğimiz broadcast yayınını asla alamayacağız. Ekleyeceğimiz extra permission’lar.
<uses-permission android:name=”android.permission.ACCESS_LOCATION” />
<uses-permission android:name=”android.permission.ACCESS_GPS” />
<uses-permission android:name=”android.permission.ACCESS_ASSISTED_GPS” />
<uses-permission android:name=”android.permission.ACCESS_CELL_ID” />
Ne alaka? diyebilirsiniz.. fakat uzuuun araştırmalarım sonucunda ben internette çözüm yolu olarak sadece bunun işe yaradığını gördüm. (Extra not: gerçek bir telefona bu programı kurmaya çalıştığımda, bu extra izinlerin install ekranındaki bilgilendirmede karşıma çıkmadığını gördüm. Bunun manası, “ben aslında bu özellikleri kullanmıyorum” demek olsa da, bize neden bu izinleri aldırttığını henüz çözebilmiş değilim.)
Sıra geldi, filtreleyerek aldığımız broadcastımızın çalışacağı class’ı oluşturmaya.
public class StartupIntentReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Intent startupIntent = new Intent(context, RunMfa.class);
startupIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(startupIntent);
}
}
Filtreleyerek aldığımız broadcastımız bu classın çalışmasına neden oldu. Ve bizde Intent ile RunMfa activity’sinin çalışmasını söylüyoruz. (Mesela bu programımızın ana ekranı olabilir..)
public class RunMfa extends Activity{
TextView tv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tv = (TextView) findViewById(R.id.serialTV);
tv.setText(“Run start up ile calisti -by Mustafa Ferhan Akman”);
}
}
AndroidManifest.xml’in son hali:
<?xml version=”1.0″ encoding=”utf-8″?>
<manifest xmlns:android=”http://schemas.android.com/apk/res/android“
package=”com.androidprogramcisi” android:versionCode=”1″ android:versionName=”1.0″>
<uses-permission android:name=”android.permission.RECEIVE_BOOT_COMPLETED” />
<uses-permission android:name=”android.permission.ACCESS_LOCATION” />
<uses-permission android:name=”android.permission.ACCESS_GPS” />
<uses-permission android:name=”android.permission.ACCESS_ASSISTED_GPS” />
<uses-permission android:name=”android.permission.ACCESS_CELL_ID” />
<application android:icon=”@drawable/icon” android:label=”@string/app_name”
<activity android:name=”.RunMfa” android:label=”@string/app_name”></activity>
<receiver android:name=”.StartupIntentReceiver”>
<intent-filter>
<action android:name=”android.intent.action.BOOT_COMPLETED” />
<category android:name=”android.intent.category.LAUNCHER” />
</intent-filter>
</receiver>
</application>
<uses-sdk android:minSdkVersion=”3″ />
</manifest>
inşaallah benim gibi uzun uzun araştırmak zorunda kalmadan bu dökümana ulaşırsınız diyerek yazımı sonlandırıyorum..
Yazan: Mustafa Ferhan Akman http://ferhanakman.wordpress.com/
