İçindekiler

İçindekiler

1 Android Programlamaya Giriş

1.1 Android’e İlişkin Terminoloji ve Temel Kavramlar

1.1.2 Android Sürümleri

1.1.3 Android’in Pazar Payı ve Geleceği

1.1.4 Uygulama ve Marketleri

1.1.5 Android’in Kullanım Alanları

1.2 Android Altyapısı ve Aşağı Seviyeli Detaylar

1.2.1 Native (Doğal) ve Hybrid (Hibrit) Uygulama Ayrımı

1.2.2 Sanal Makine (Virtual Machine) Nedir ?

1.2.3 Dalvik ve ART Sanal Makineleri

1.2.4 Diğer Aşağı Seviyeli Detaylar

1.3 Android Programlamada Kullanılan Dil Ve Araçlar

1.4 Gerekli Araçların Kurulumu

1.4.1 Kurulumda Dikkat Edilmesi Gerekenler

1.5 DEMO

1.6 DDMS Nedir ?

1.6.1 LogCat ve Log Sınıfı

1.6.2 Android Device Monitor Diğer Pencereler

1.7 Android Projelerindeki Dosya ve Klasör Yapılanması

1.8 Sandbox Fenomeni

2. Bölüm

2 Android GUI Kütüphanesi

2.1 Android Kütüphanesinin Çekirdek Sınıfları

2.1.1 Kütüphaneye Genel Bakış

2.1.2 Context Sınıfı

2.1.3 Activity Sınıfı

2.1.4 View Sınıfı

2.1.5 ViewGroup Sınıfı

2.1.6 Intent Sınıfı

2.1.7 Service

2.2 Context Sınıfı

2.3 Activity Sınıfı

2.3.1 Activity Yaşam D.ngüsü

2.3.2 Yaşam D.ngüsüne İlişkin Detaylar

2.4 View Sınıfı

2.5 ViewGroup Sınıfı

2.6 Ekran Tasarım Yöntemleri

2.6.1 Deklaratif Yöntemin Uygulanması

2.6.2 Programatik Yöntemin Uygulanması

2.7 Kontrollere ID Atanması

2.7.1 View Nesnelerinin Yaratılmasıyla İlgili İyi ve K.tü Teknikler

2.8 Layout Sınıflarının Kullanımı

2.8.1 Kullanım Gerekçeleri

2.8.2 Layout Sınıflarının Ortak Özellikleri

2.8.3 Ölçme Sistemi ve Birimler

2.8.4 FillParent, WrapContent ve MatchParent Nedir ?

2.9 LinearLayout

2.9.1 Yönelim

2.9.2 Genişlik, Yükseklik ve Boşluklar

2.9.5 ScrollView Sınıfı ile Kaydırma İşlemi

2.9.6 LinearLayout’un Dekleratif Kullanımı

2.9.7 Weight Kavramı

2.9.8 Parent Elemana Programatik Erişim

2.10 AbsoluteLayout

2.11 RelativeLayout

2.11.1 Bir Elemana Göre Başka Bir Elemanın Konumlandırılması

2.11.2 RelativeLayout’un Programatik Kullanımı

2.12 FrameLayout

2.13 TableLayout

2.14 GridLayout

2.14.1 GridLayout’un Deklaratif Kullanımı

2.15 TextView Sınıfı

2.15.1 Kontrole İlişkin Önemli Özellikler

2.16 Button Sınıfı

2.17 Event Mekanizması

2.17.1 Terminolojik Değerlendirme

2.17.2 Konuyla İlgili Dil Özellikleri

2.18 Event Handling Yöntemleri

2.18.1 Yöntem (1)

2.18.2 Yöntem (2)

2.18.3 Yöntem (3)

2.18.4 Event Handling İçin Öneriler

2.18.5 Event Handling Mekanizmasının Arka Planı

2.18.6 Klavye Mesajlarının Yakalanması

2.19 Resource (Kaynak) Kullanımı

2.19.1 Resource Kullanmanın Gerekçeleri

2.19.2 Dekleratif Resource Kullanımı

2.19.3 Programatik Resource Kullanımı ve Resources Sınıfı

2.19.4 Style Resource’lar

2.19.5 Birden Çok Dili Destekleyen Uygulamalar

2.20 Toast Pencereleri

2.20.1 Toast’un Programatik Olarak Özelleştirilmesi

2.20.2 Toast’un Deklaratif Olarak Özelleştirilmesi

2.21 EditText Kontrolü

2.21.1 Basılan Tuşun Öğrenilmesi

2.22 ToggleButton, CheckBox, Switch ve RadioButton Kontrolleri

2.22.1 ToggleButton Kontrolü

2.22.2 Switch Kontrolü

2.22.3 CheckBox, RadioButton, RadioGroup

2.23 Portrait ve Landscape G.rünümler

2.23.1 Yöntem (1)

2.23.2 Yöntem (2)

2.23.3 Cihazın Tutuluş Pozisyonuna Göre Değişmeyen Görünüm Elde Etmek

2.24 Activity’lerin Başlatılması ve Intent Sınıfı

2.25 Diyalog Pencereleri

2.25.1 Activity Sınıfının Diyalog Konusuyla İlgili Fonksiyonları

2.26 AlertDialog ve Builder

2.26.1 Seçenek Listesi Barındıran AlertDialog

2.26.2 AlertDialog’un Özelleştirilmesi

2.27 DatePickerDialog ve TimePickerDialog

2.28 .zgün (Custom) Diyalog Oluşturmak

2.29 TabActivity Sınıfı

2.30 Menülerin Oluşturulması

2.30.1 Genel Menü Konsepti

2.30.2 Deklaratif Option (Seçenek) Menü

2.30.3 Programatik Option Menü

2.30.4 Context (Bağlam) Menüleri

2.30.5 Popup Menüler

2.31 Adapter Sınıflar

2.32 Spinner ve ListView Kontrolleri

2.32.1 ListActivity Sınıfı

2.33 .zgün (Custom) Adapter Sınıfları

2.33.1 BaseAdapter Sınıfının Saf Sanal Fonksiyonları

2.34 Sistem Servisleri

2.34.1 Vibrator Sınıfı ve Titreşim

2.34.2 NotificationManager, Notification ve Builder

2.34.3 ClipboardManager

2.35 Application Sınıfı

3 Android Dosya Sistemi ve Dosya İşlemleri

3. Bölüm

3.1 Giriş

3.2 Environment ve File Sınıfları

3.3 Metin (Text) Dosyalar Üzerinde Çalışmak

3.3.1 Dosyaya Yazma İşlemleri

3.3.2 Dosyadan Okuma İşlemleri

3.4 Harici Depolama Alanına Erişim

3.5 Dosya İşlemlerinde JSON Formatı ve MVC Patern’inin Kullanımı

3.6 Ham Resource’ların Kullanımı

4. Bölüm

4 Preferences Mekanizması 199

4.1 Giriş 199

4.2 SharedPreferences ve Editor Kullanımı 200

4.2.1 SeekBar Kontrolü 205

4.2.2 Shared Preferences’a D.nüş 205

5. Bölüm

5 Lokal Veritabanı olarak SQLite Kullanımı

5.1 Giriş

5.1.1 SQLite Veritabanı Hakkında

5.1.2 SQLite İçin Kullanılan Sınıflar

5.2 Veritabanının Oluşturulması

5.2.1 Çalışma Zamanında Veritabanı Oluşturma Yöntemi

5.3 Veritabanı Üzerinde Yapılacak CRUD İşlemleri

5.3.1 Bağlantı Yönetimi

5.3.2 Kayıt Ekleme (INSERT) ve ContentValues Sınıfı

5.3.3 Güncelleme (UPDATE) İşlemi

5.3.4 Silme (DELETE) İşlemi

5.3.5 Kayıtların Elde Edilmesi (SELECT) İşlemi

5.3.6 Cursor Interface’i ve Sonuç Seti Üzerinde İşlemler

5.4 Uygulama Örneği

5.4.1 DAL (Data Access Layer) Paketi

5.4.2 PL (Presentation Layer) Paketi

5.4.3 Activity’nin Kodlanması

5.5 SimpleCursorAdapter Sınıfı

6. Bölüm

6 Android IPC ve ContentProvider Mekanizması

6.1 Giriş

6.2 URI (Unified Resource Identifier) ve Uri Sınıfı

6.3 ContentProvider Sınıfının Önemli Üyeleri

6.4 Standart Android Uygulamalarına İlişkin ContentProvider’ların Kullanımı

6.4.1 : Telefon Rehberine (Contacts) Erişim

6.4.2 : Arama Kayıtlarına (Call Logs) Erişim

6.4.3 : Ajandaya (Calendar) Erişim

6.5 .zgün ContentProvider Yazmak

7. Bölüm

7 Fragment Kullanımı

7.1 Giriş

7.2 Çekirdek Sınıflar

7.3 Fragment’ların Yaratılması ve Activity Üzerinde G.rüntülenmesi

7.3.1 Fragment Yaratma

7.3.2 Activity Üzerinde Fragment’ları G.rüntüleme

7.4 FragmentManager & FragmentTransaction

7.4.1 Temel İşlemler

7.4.2 Animasyonlar

7.5 Swipe Fragment ve Paging

7.6 Navigation Drawer

7.7 Android Navigation Editor

8. Bölüm

8 Multi Threading, Asenkron Çalışma ve Timer

8.1 Giriş

8.2 Temel Kavramlar 287

8.3 Thread Kavramı

8.4 Multi Thread Çalışma

8.4.1 Multi Thread Çalışmanın Avantaj & Dezavantajları

8.5 Runnable Interface’i & Thread Sınıfı

8.6 Cross Thread Operasyonlar

8.7 AsyncTask Sınıfı

8.8 Timer ve TimerTask Sınıfları

8.9 Process Sınıfları

8.9.1 java.lang.Process Sınıfı

8.9.2 android.os.Process sınıfı

8.10 Sistemde Çalışan Process’lerin Listelenmesi

9. Bölüm

9 Web Servislerin Kullanımı

9.1 Giriş

9.1.1 RESTful & SOAP

9.1.2 Hangisi Tercih Edilmeli ?

9.2 RESTful bir Web Servisinin Android’te Kullanılması

9.2.1 Genel Konsept

9.2.2 HttpUrlConnection Sınıfı

9.2.3 RESTful Servisin ASP.NET ile Geliştirilmesi

9.3 KSOAP2 ile SOAP Tabanlı Web Servise Erişim

10. Bölüm

10 Web Sayfalarının Görüntülenmesi

10.1 WebView Kontrolü

11. Bölüm

11 Çizim İşlemleri

11.1 Giriş

11.2 Canvas ve Paint Sınıfları

11.2.1 Paint Sınıfının Sıkça Kullanılan Üyeleri

11.2.2 Çizim İçin İskelet Kodlama

11.2.3 Canvas Sınıfının Sıkça Kullanılan Üyeleri

11.3 Drawable Sınıfı

11.4 Geometrik Şekillere İlişkin Sınıflar

11.5 GradientDrawable Sınıfı

11.6 Dokunmatik Ekranla Etkileşim

11.8 Çizim Nesnelerinin Deklaratif Kullanımı

11.9 SurfaceView

12. Bölüm

12 Animasyonlar

12.1 Giriş

12.2 Programatik Animasyon

12.3 Deklaratif Animasyon

12.4 ObjectAnimator Sınıfı

13. Bölüm

13 Multimedya 371

13.1 MediaPlayer Sınıfı

13.2 Video Dosyalarının Görüntülenmesi

13.3 MediaRecorder Sınıfı

13.4 Kamera Kullanımı

13.5 Kameradan Alınan G.rüntünün Veritabanına BLOB Olarak Kaydedilmesi

13.6 Ses Tanıma

13.7 Metni Sese Çevirme (TTS)

14. Bölüm

14 Sensör Kullanımı 393

14.1 Giriş 393

14.2 Android Sensör Mimarisi 393

15. Bölüm

15 Broadcast Mekanizması

15.1 Giriş

15.2 BroadcastReceiver Sınıfı

15.3 Broadcast Mesajlarının Yayınlanması

15.4 Lokal Broadcast Yayınları

16. Bölüm

16 Android Servisleri

16.1 Giriş

16.2 Service Taban Sınıfı

16.2.1 Sınıfa Ait Üyeler

16.2.2 Servisin Sisteme Kaydedilmesi

16.3 Servisin Cihaz Başlatıldığında Otomatik Olarak Başlatılması

16.4 Bağlı (Bound) Servisler

16.4.1 Giriş

16.4.2 onBind() Fonksiyonu

16.5 Servisin Çalışıp Çalışmadığının Kontrol Edilmesi

17. Bölüm

17 Telefon, SMS ve E-Mail

17.1 Giriş

17.2 Telefon Özellikleri

17.2.1 Gerekli Donanımın Kontrol Edilmesi

17.2.2 IMEI ve Telefon Numarasının Alınması

17.2.3 Telefon Araması Yapmak

17.2.4 PhoneStateListener Sınıfı

17.3 SMS Haberleşmesi

17.3.1 SMS Göndermek & SmsManager Sınıfı

17.3.2 Gelen SMS’leri Yakalamak ve Okumak

17.3.3 Gönderilen SMS’leri Yakalamak & ContentObserver Sınıfı 435

17.4 E-Mail Gönderme İşlemi 438

18. Bölüm

18 Bluetooth Haberleşmesi 441

18.1 Giriş

18.2 Bluetooth İçin Gerekli İzinler

18.3 Çekirdek Sınıflar

18.4 BluetoothAdapter Sınıfı

18.5 Tarama ve Algılama İşlemleri

18.6 Arduino ile Bluetooth Üzerinden Haberleşme

19. Bölüm

19 GPS ve Harita

19.1 GPS Kullanımı

19.1.1 Giriş

19.1.2 LocationManager Sınıfı

19.1.3 LocationListener Interface’i

19.1.4 Location Sınıfı

19.1.5 Location Provider Seçenekleri

19.1.6 Geocoder Sınıfı

19.1.7 Asenkron Coğrafi Aramalar

19.2 Google Map API

19.2.1 Şifre ve Key Üretimi

19.2.2 Android Studio Tarafındaki İşlemler

19.2.3 GoogleMap Sınıfı

19.2.4 Point ve Projection Sınıfları ile Dönüşümler

19.2.5 Lokasyon Değişimlerinin Takip Edilmesi

19.2.6 Kamera Olgusu ve İlişkili Sınıflar

19.2.7 GroundOverlay Sınıfı

19.3 Google Places API

20 Uygulamaların Google Play’de Yayınlanması

20. Bölüm

20.1 Giriş

20.2 Release Versiyon Üretimi

20.2.1 Yapılması Gerekenler

20.2.2 Dijital İmzalı APK Üretimi

20.3 Google Play’de Yayınlama

EK 1 Java Diline Ait Temel Özellikler ve

Java’nın C++ ve C# Dillerinden Farklılıkları 

Tür Sistematiği

Kod Organizasyonu

Faaliyet Alanı İfade Eden Anahtar S.zcüklerin Kullanımı

Property vs Getter Setter

Paket (Package) Kavramı

Diziler ve Kolleksiyonlar

Generic Türler

throws Anahtar Sözcüğü

Operator Overloading

Switch Farklılıkları

Değişken Sayıda Argüman Alan Variadic Fonksiyonlar

Türetme (Inheritance)

Arayüz Gerçekleme (Interface implementasyonu)

Sanallık Mekanizması (Virtual Fonksiyonlar)

Overriding

Annotation Nedir

Reflection

Local Inner Type (Yerel Dahili Sınıflar)

Anonymous Inner Type (Anonim Dahili Sınıflar)

this, super anahtar s.zcükleri

final Anahtar Sözcüğü

Dinamik Türün Öğrenilmesi İşlemi

Java’da Henüz Olmayan Diğer Özellikler

EK 2 Örnek Sınav Soruları 

Referans Gösterilen Kaynaklar

DİZİN 

Reklamlar

İçindekiler” üzerine bir yorum

  1. Geri bildirim: Android Programlama Eğitimi Kitabı Hakkında Soru ve Cevaplar | Android Programlama Eğitimi Kitabı Aykut TAŞDELEN

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s