14 Mayıs 2011 Cumartesi

Android Programlama Liste Elemanına Tıklama Özelliği Ekleme ( ListView OnClick )

Bu kod parçası liste elemanlarına OnClick özelliği kazandırmaya yarar.Liste elemanlarından hangisine tıklarsanız o eleman için OnClick Metodu çağırır.
1.Durum tıklamadan önce

 Kod parçası
listele.setOnItemClickListener(new OnItemClickListener() {//listenin elemanları için tıklama özelliği eklendi

            public void onItemClick(AdapterView<?> a, View v, int position, long id) {

            AlertDialog.Builder dialog=new AlertDialog.Builder(listeleme.this);//secilen eleman uyarı penceresi ile ekrana getirilir
            dialog.setMessage("Seçilen öge = "+listele.getItemAtPosition(position)); //uyarı penceresinde yazılacak uyarı
            dialog.setPositiveButton("Ok",null);//uyarı penceresine buton atama
            dialog.show();   //dialog unn ekrana getirilmesini saglar
            }
            });
2.Durum  Tıklandıktan sonra
3.Durum Ok Butonuna Bastıktan Sonra

Android Programlama Listeleme Uygulaması ( ListView )

Android programlama da listeleme ListView kullanarak  yapılır.Java kod kısımında dizi olusturulur ve listelenecek liste elemanları dizide tutulur daha sonradan listView e setAdapter ile aktarılır.

Java kod

package com.deneme.listeleme;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;

public class listeleme extends Activity {
     ListView listele;    //listview tanımlandı
     String liste_dizi[]={"Matematik","C","java","Php"}; //dizi tanımlama ilkleme yöntemı ile
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);  //main xml sayfası acılısa yuklendı hangi sayfanın ilk acılmasını istiyorsak yaparız
        listele =(ListView)findViewById(R.id.liste);  //xml dosyasında id ile listview cekildi burada birtakım işleme tutuldu
        listele.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1 , liste_dizi));  //tanımlamıs oldugumuz dizi elemanlarını listView listesine aktardık
        listele.setTextFilterEnabled(true);    //liste elemanlarını göster

    }
}


Xml kod

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout android:id="@+id/LinearLayout01"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

xmlns:android="http://schemas.android.com/apk/res/android">

<ListView android:id="@+id/liste"    //id si liste olan listview tanımlandı

android:layout_width="fill_parent"

android:layout_height="fill_parent" />

</LinearLayout>

13 Mayıs 2011 Cuma

Android Programlama Buton Uygulaması

Buton a tıklayınca Buton üzerinde butona tıklandı yazıyor.Buton tanımlaması xml de yapılıyor ve sonra butona onClick özelliği ekleniyor.OnClick yapıldıgında  (tıklama yapıldıgında)  buton üzerindeki yazı değişecek.
Butona tıklamadan önceki görunum

Xml Kod


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="Buton uygulaması Tıklandı -- Tıklanmadı"
    />
<Button android:text="Buton"   //butonda yazacak metın atandı
android:id="@+id/button1"    //butona id ataması yapıldı
android:layout_width="wrap_content"
 android:layout_height="wrap_content"></Button>
</LinearLayout>


Java Kodu

package com.deneme.buton1;

import android.app.Activity;

import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class buton1 extends Activity {
     Button buton;             //global olarak buton degiskeni tanımlandı
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
      
        buton=(Button)findViewById(R.id.button1); //global buton degiskenine xml deki buton id yardımı ıle baglandı
        buton.setOnClickListener(new OnClickListener() {  //butona tıklanma özelliği eklendi
           
            public void onClick(View v) {
                // TODO Auto-generated method stub
                buton.setText("Butona Tıklandı");    //butona tıklanınca butonda yazan metin değiştirilecek yeni metin set edilecek
               
            }
        });
       
    }
}

Butona tıklandıktan sonrakı görunum





8 Mayıs 2011 Pazar

Android Programlama EditText Tanımlama Kullanım ve String'e Çevirme

EditText kullancıdan degerler alma bölgeleridir. mesela giriş yapılacak ve kullanıcı adı vs aldıgımız bölgelerdir

Java kodu
EditText tx_isim;   //edittext i xml deki yerinden cekmek için
GetChars  Charlar_olarak;   //edittext ten gelecek degerleri charlar dizisi olarak geleceginden Charlar_olarak adlı degisken tanımlandı
String         String_olarak;   //edittext ten gelecek degerleri charlar dizisinden stringe cevirip tutmak için  String_olarak adlı degisken tanımlandı

tx_isim=(EditText)findViewById(R.id.editText1);  //xml deki edittext belirlendi
Charlar_olarak=tx_isim.getText();                       //charlar dizisine atama yapıldı
String_olarak=tx_isim.getText().toString();          //stringe atama yapıldı
yada asagıdakı sekilde stringe atama yapılır
String_olarak=Charlar_olarak.toString();



Xml kodu

<EditText android:text=" "   //ilk ekranda metin giriş bölgesinde birsey yazmasın diye bos bırakıldı "" arası
android:inputType="text"       / /Kullanıcıdan alınacak degerlerin tipi charlar dizisi
android:id="@+id/editText2"  //id si   editText2 olacak
android:layout_width="fill_parent"
android:layout_height="wrap_content">
</EditText>

Android Programlama ListView Yapısı ve OnItemClickListener Kullanımı

ListView yapısı listeleme yapmaya yarar .Bu liste elemanlarına onClick özelliği de eklemek mevcuttur.


Java Kodu

ListView listele;  //tanımlama yapıldı  listview i kullanabilmek için

String liste_elemanlari[]={"Muhendislik","FenEdebiyat","YabanciDil","GuzelSanatlar","Egitim"};  //ekranda listelenecek liste elemanları diziye atandı.

//Bundan sonraki kısımda layout ekranındaki listView e dizi elemanları atanacak önemli bir not olarak listeleme yapacagınız layout penceresini   * ile işaretlediğim gibi ekleyin.     
**  setContentView(R.layout.fakulteler);
 listele =(ListView)findViewById(R.id.liste);  //xml dosyasındaki listView  id ile java dakı tanımlanan listView e cekildi 

 listele.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1 , liste_dizi));  //Bu şekilde dizi elemanları ekrandaki listView e aktarıldı
            listele.setTextFilterEnabled(true);            //görünüme acıldı
        
//liste elemanları na on click ozelliği ekleme için alt kısımdaki kodlama yapılır
  listele.setOnItemClickListener(new OnItemClickListener() { //listedeki tüm elemanlar için clıck ozellıgı yazıldı
           
          public void onItemClick(AdapterView<?> a, View v, int position, long id) {
                          //tıkalnan yerdeki eleman için onclik özelliği eklendi
                       //Bu kısımda tıklama için istenilen ne ise o yazılır                     
               
});


Xml kodu     


<ListView android:id="@+id/liste"    //id si liste olan listView tanımlandı

android:layout_width="fill_parent"     //listenın genıslıgı ekranın enıne tamamen olacak

android:layout_height="fill_parent" />     //listView in yuksekliği de ekranın tamamını kaplayacak
         

7 Mayıs 2011 Cumartesi

Android Programlama Toast Uyarı Mesajı Penceresi

Toast uyarı mesajı ekranda bir an görünen sonra kendi kendine kaybolan uyarı penceresidir.

 Toast.makeText(getApplicationContext(), "Ekranda görünmesini istediğiniz uyarı mesajı!",  Toast.LENGTH_SHORT).show();  //Bu kod parcasını kodunuzda nerede uyarı ekranı görünüp kaybolsun diyorsanız oraya yerlestirebilirisiniz.

Android Programlama Button Tanımlama ve OnClick Özelliği

Butona Tıklama özelliği direkt olarak atanada bilir yada fonksiyon cagrısı olarak da yapılabilir.


Fonksiyon çağırımı  yapmadan
java tanımlaması 

Button buton1;   //buton tanımlaması yapıldı
buton1=(Button)findViewById(R.id.hesapla);// bu tanımlanan butona xml deki hesapla id li buton baglandı
 buton1.setOnClickListener(new OnClickListener() {  //bu butona onClick özelliği eklendi
           
            @Override
            public void onClick(View v) {   //butona her tıklamada bu fonksıyon calısacak
                 //butona her tıkalmada calıstırılacak kod bolgesi  
            }
        });
   


Fonksiyon çağırımı  yapmadan
XML tanımlaması

<Button
android:text="Hesapla"        //Butonun üzerinde yazacak metin
android:id="@+id/hesapla"    //Butona id atama
android:layout_width="wrap_content"    //buton metin uzunlugu kadar genis olacak
android:layout_height="wrap_content" > //buton metin yukseklıgı kadar yuksek olacak
</Button>


Fonksiyon çağırımı 
java tanımlaması
Eğer butona tıklamada direkt olarak onClick özelliğini xml e fonksiyon cagrısı olarak koyduysanız butonu java dosyasında tanımlama ya cagırmaya gerek yok.
Fonksiyon çağırımı 
XML tanımlaması

 <Button
android:onClick="hesapla"   //Butona tıklandığında cagırılacak fonksıyon
android:text="Hesapla"        //Butonun üzerinde yazacak metin
android:id="@+id/hesapla"    //Butona id atama
android:layout_width="wrap_content"    //buton metin uzunlugu kadar genis olacak
android:layout_height="wrap_content" > //buton metin yukseklıgı kadar yuksek olacak
</Button>

Android Programlama Hello World Uygulaması Kaynak kodları ve Açıklama

hello.java

package com.deneme.hello;       //projemızın bulunduğu paket

import android.app.Activity;       //ihtiyac duyulan kütüphaneler
import android.os.Bundle;         //ihtiyac duyulan kütüphaneler

public class hello extends Activity { //karsılam ekranında ilk calısacak activity değiştirilebilir..
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {    //Acılısta calısacak kod kısımı onCreat
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.main);  //Acılısta karsımıza ilk cıkacak ekran görüntüsü
    }                                                    // ilk set edilen oldugu için
}

Main.xml

<?xml version="1.0" encoding="utf-8"?>   //xml versiyon ve karakterlendirme dili
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"                      //ana layout degerleri
    android:layout_width="fill_parent"  //ana layout enıne ve boyuna tüm ekranı kaplayacak sekılde
    android:layout_height="fill_parent"
    >
<TextView                  //ekranda yazı yazılı olan bölge yazı bölgesi
    android:layout_width="fill_parent"      //yazı bölgesi konuldugu konumda tam satır kaplayacak
    android:layout_height="wrap_content"   //yazının yüksekliği yazı boyutu kadar olacak
    android:text="Merhaba Dünya"    //ekrana yazılacak yazı 
    />
</LinearLayout>

Android Programlama Yeni Proje Açma

Öncelikle Eclipse de File > New >Other yönünde ilerliyoruz.
Sonra önümüze cıkan pencereden android Project i
seciyoruz cift tıklıyoruz.












Sonra Önümüze projemızın adını paket adını vs soran ekran cıkıyor resimde ne yazmanız gerekli ise mevcut.



















Finish diyoruz ve otomatik olarak Hello world uygulamamız bizi karsılıyor.

OHA – Open Handset Alliance

Android Programlama TextView in XML Yapısı


android:layout_width="Text yazılacak alan genişliği en olarak  fill_parent ise ekranın sonuna kadar olur"
android:layout_height="Text yazılacak alanı wrap_content ise  yüksekliği yazı boyutunda olur"
android:id="Kullanılmak üzere kodun içerisinden cagırarak müdahale hakkı veren kimliktir"
android:text="Bu text bölgesinde default olarak yazacak kısım"

Adnroid Programlama Activity nedir?






  • Kullanıcı ile etkileşimi sağlayan ekranlardır.
  • Tasarlanan layout activity de kullanılır.
  • Her ekran için bir activity uygulanır.
  • Activity'ler birbirlerini çağırabilirler.
  • Activityler aralarında veri transferi yapabilirler.
 

Android Projesinin Yapısı

  • Source          :   Java paket kodları
  • Gen              :  Otomatik R.java dosyası oluşur resource erişimi için kullanılır.
  • Asset            :   3.parti java kütüphane dizini
  • Resource      :  Layout , Drawable , Values şeklinde 3 e ayrılır.
            1.Layut       :  XML tabanlı ekran tasarımı için kullanılır.
            2.Drawable : Tüm grafik dosyaları için kullanılır
            3.Values      : Hazır değişken değerlerini barındırır.

Android Market

Android market android cihazlarımız için ücretli veya ücetsiz binlerce uygulamanın bulunduğu bir site.Bu markete kendi yadığımız uygulamaları ücretli veya ücretsiz olarak indirme olanaklarında yükleyebiliriz.
Android markete bu linkten ulaşabilirsiniz. Market

 

Adnroid Uygulama Google Maps for Mobile 5.0 ( 3D)

Google Maps for Mobile 5.0 adını alan yeni harita hizmetinde sıradan Google maps in üzerine 3D grünümüde eklenmiş bulunmaktadır.Ekranda sag ve sol üst tarafa iki parmağınızı koyup aşagıya dogru cekerseniz görüntünün 3D haline geldiğini göreceksiniz.Bu hizmet  sadece 3D işleme kapasitesi olan akıllı telefonlar da kullanılabilecek.
Ancak uygulama amerikada belirli, bölgelerde çalışıyor fakat Türkiyede test ettim  çalışmıyor du.
Uygulamaya link ten ulaşabilirsiniz.

6 Mayıs 2011 Cuma

Android Mimarisi


Linux çekirdeğinin üzerinde linux kütüphaneleri ve kendine has kütüphanelerin derlenmesi ile Dalvic Virtual Machine  (çalışabileceği sanal platform) un da birleşmesinden meydana gelmiştir Android Mimarisi.

Android Programlama Kitabı ve Değerlendirme

Merhaba arkadaşlar,
Android 2 ve Android 3 başlığı ve Profesyonel uygulamalarla Android programlama öğrenin sloganı ile piyasada mevcut olan .Sayın Nizar ÖĞÜTMEN in kitabını aldım ve okudum çalışamalar yapıyorum.Öncelikle yazarımıza teşekkür ediyorum türkçe kaynak olarak   az bulunan android konusunda bir kitap yazdığı için.

Kitapta Yer Alan Başlıca Konu Başlıkları:

• Android Programlamaya Giriş
• Eclipse ve Android Plug'in Kurulumu ve Kullanımı
• Dalvid Virtual Machine ve Sandbox Kurulumu ve Kullanımı    
• Kullanıcı Arayüzünü Tanımak ve Kullanmak
• Intent Kavramı
• Veritabanı İşlemleri ve Yönetimi
• Dosya ve Dizin İşlemleri
• Content Provider ile Veri Alışverişi
• Sensör Kullanımı
• Multitouch Fonksiyonları
• Örnek Uygulamalar
• Tetris Oyun Uygulaması
• GPS Tracker Uygulaması
• Stealth Coordinates Forwarder Uygulaması ( GPS casus uygulamasıdır,istek dahilinde GPS koordinat verilerini geri gönderecektir.)
• Kamera Uygulaması
• Battery Information System Uygulaması


Kitap hakkındaki yorumlarım,

Kitap bence ilk aşama olarak biraz ağır olmuş ilerleyen kısımlardaki projeler çok güzel açıklanmış satır satır açıklamaların yapıldığı yerler var.Fakat bence ilk aşamada android'in temelinde neler var ve bu temel üzerine örnek uygulamalar geliştire geliştire ilerlense bence daha iyi olurdu.
 

Android Cihaz HTC Desire Değerlendirme

Merhaba arkadaşlar,
Android cihazım hakkında da birşeyler yazmak istedim belki almak isteyen arkadaşlarım olabilir.Htc Desire telefonumu almadan önce dokunmatik fakat kaliteli , fiyatına değecek ,yüksek performanslı ,internet bağlantısı hızlı bir  cihaz arayışı içerisinde idim.SonyEricson , Samsung , Blackberry , Nokıa, ıphone, Motorola markaları üzerine yoğunlaştım nerede ise istediğim özelliklere yakın tüm telefonlarına baktım fakat bir türlü aradığımı bulamıyordum.En son Samsung Wave almaya karar vermiştim.İşletim sistemi bada idi ve amoled ekrandı ve telefon şık duruyordu fakat neden se birden biraz daha araştırmam gerekli gibi bir hissiyata kapıldım.


Htc Desire yi keşfettim Telefonun internetteki nerede ise tüm videolarını izledim.İşletim sistemi dikkatimi çekmemişti fakat android iyi falan yazıyordu yorumlarda.Sonradan fark ettimki iyiki android almışım .Ekranı gayet kaliteli dokunmatik hassasiyeti gayet iyi ,internet baglantı hızı baya iyi kamerası 5 mp flash var gayet güzel çekiyor fotograf  makinasını aratmıyor.Ekran baya geniş ve dokunmatiği sivri cisimlere karsı korumalı sivri cisimle dokununca algılamıyor parmakla dokunmak lazım.Telefon 2011 ocak ayında bana 2.2 froyo sürümü yüklü olarak gelmişti yaklaşık 1 ay önce de 2.3.1 güncellemesi geldi ve yaptım .Telefon da  çağrı geldiğinde ses açıksa telefonu elinize aldıgınızda veya hareket ettirince ses kısılma özelliği var.Bana göre yanlış bir özellik olmuş .İnsanız hareket halinde olabiliyoruz ve hareket halinde ikende telefon otomatik olarak sesi kendi kısıyor ve bu kötü oluyor.Bu telefonun da diğer dokunmatik telefonların genelinde olduğu gibi şarj problemi var .Şarj maximum normal kullanımda (2 saat telefon görüşmesi yarım saat internet) 1.5 gün gidiyor.Ama alışıyorsunuz şarj olayına şarj aleti ile gezmeyi öğreniyorsunuz. :) .Ayrıca telefon da tuşlarında mevcut olması tuşa basma alışkanlığınızı da kaybetmemenizi sağlıyor.

Emülatör nedir?

Emülatör android cihazın bilgisayar üzerinde çalıştırılan similasyon tarzı uygulamasıdır.Mesela java da android için uygulama yazdık ve test etmemiz lazım android cihazımız yoksa bu Emülatörler yardımı ile android cihazlarda yazdığımız uygulamaları test etme şansı buluyoruz.Google çok sağlıklı düşünmüş bence çünkü herkes android cihaza sahip olmayabilir ama herkes android programlayabilir.Emülatörler linkinden bakabilirsiniz.

Android SDK ve Eclipse Kurulumu

Bu yazım da Windows işletim sistemlerine Android SDK yı nasıl yükleyeceğimi ve geliştirme oramını nasıl oluşturacağımızı anlatacağım.
1.İlk olarak bilgisayarınıza Java JDK linkinden işletim sisteminize uygun olanını indiriniz.

2.Android uygulamalarımızı Eclipse üzerinden yapacağımız için Eclipse  linkinden işletim sistemimize uygun olanı indirelim.

3.Android Software Development Kit’in işletim sistemimize uygun olanı SDK adresinden indirelim.

4.Eclipse mizi acalım  Windows >Android AVD and SDK manager Avalible packages sekmesini tıklayalım

Add site kısımını tıklayalım ve alttaki adresi ekleyelim.Ok diyelim.

https://dl-ssl.google.com/android/eclipse   

Ekleme işleminden sonra sağ üstteki install sekmesini tıklayalım bu kurulum işlemi bittikten sonra eclipse yi yenıden baslatalım.

5.İndirdiğimiz Android SDK zip dosyasını klasöre çıkaralım.Daha sonra Windows > Preferences i secelim ve acılacak ekrandan sol taraftan Android i secelim.Sonra SDK nın olduğu klasörü  seciyoruz.
Ok butonuna basıyoruz işlemimiz tamamlandı.

Android Versiyonları

Versiyon     1.1 ilk sürüm

















*  Versiyon     1.5 Cupcake


















Versiyon     1.6 Donut

 














Versiyon     2.0  Eclair


















Versiyon     2.1  Eclair

















*  Versiyon     2.2  Froyo
















*  Versiyon     2.3.1  Gingerbread





















*  Versiyon     2.3.3  Gingerbread


 
















*  Versiyon    3.0 Honeycomb

Kod Yazmadan Android Uygulaması Geliştirme

Merhaba Arkadaşlar,
Kod yazmadan uygulama geliştirmek adı altında geçsede kodlama mantığı olmadan bunun yapılacağına inanmıyorum.Mesela if for vs vs javanın getirdiği yöntemler döngüler değişkenler olsun bunlar hakkında temel bilgi sahibi kişiler  kod yazmadan uygulma yapabilirler.

Android App Inventor isimi ile  yap boz mantığı ile çalışan bir uygulama dır.Android App Inventor kullanımını KadirGülAğız Arkadaşımız güzel anlatmış.Video

Kod Yazarak Android Uygulaması Geliştirme

Merhaba arkadaşlar,
Kod yazarak android uygulaması geliştirmek mümkün.Android programlama da kullanılan dil JAVA dır.Eclipse ortamına Android SDK mızı entegre ederek Eclipse ortamında yazdığımız android uygulamamızı Emülatör veya Android cihazımızda hızlıca test edebiliriz.Android programlama kısımında standart java bilgimize extradan android görseline de ulaşıp bir fiil değişiklikler yapmak gerekli olduğundan xml e müdahale amacı ile  bazı kod parçalarını (yapılarını ) da öğrenmeliyiz.

Android ile Micro Edition'ın (J2ME platformu) Karşılaştırma

Merhaba arkadaşlar,
Android için uygulama geliştirme dili JAVA dır.Fakat telefonlarda standartlaştırılmış java (j2me) ile karıştırılmamalı.Bu standart farklı model veya markada aynı şekilde çalışıyor fakat çok kısıtlanıyor.Tüm telefonların özellikleri aynı olmamasından kaynaklı olarakta son kullanıcıya yansıtılacak ortak bir sonuca varılamıyor.Android ise işletim sistemine çok güzel entegre olmuş, tüm donanıma hükmedebilecek ve çok az kısıtlama ile çalışır.

Android Uygulaması Geliştirme Yöntemleri

Merhaba arkadaşlar android'de uygulama geliştirmek için (bildiğim kadarı ile) 2 yol mevcut.
1.Kodlama yaparak (benim sevdiğim :) )

2.Android App Inventor

Bu yöntemler ile kodlama bilgisi olan da olmayanda android için uygulama yazabilecek.Google android konusunda kod yazmayı sevmeyen kitleyede hitap etmiş.

Android (Mobil iletim Sistemi) Nedir?


Android, Google ve Open Handset Allience tarafından kodlanmış Linux İşletim Sistemi tabanlı bir mobil cihaz (PDA ve cep telefonları) için geliştirilmiş açık kaynak kodlu bir işletim sistemidir.
Android, aygıtların fonksiyonelliğini genişleten uygulamalar yazan geniş bir geliştirici grubuna sahiptir.