Android Kotlin ile Favorilere Ekleme Özelliği

 

Room Database Rehberi 

Android Kotlin ile Favorilere Ekleme Özelliği

Android Kotlin ile Favorilere Ekleme Özelliği Nasıl Yapılır? (Room Database Rehberi)

Android uygulama geliştirme sürecinde kullanıcı deneyimini artıran en önemli özelliklerden biri "Favorilere Ekle" sistemidir. İster bir e-ticaret uygulaması ister bir haber bloğu yapın, kullanıcıların beğendikleri içerikleri kaydetmesini sağlamak etkileşimi artırır.

Bu rehberde, Kotlin ve Room Persistence Library kullanarak profesyonel bir favori sistemini nasıl inşa edeceğinizi adım adım öğreneceğiz.


1. Room Bağımlılıklarını Projeye Ekleyin

İlk olarak build.gradle (Module: app) dosyanıza gerekli kütüphaneleri ekleyerek başlayın:

dependencies {
    def room_version = "2.6.1"
    implementation "androidx.room:room-runtime:$room_version"
    kapt "androidx.room:room-compiler:$room_version"
    implementation "androidx.room:room-ktx:$room_version"
}

2. Veri Modelini (Entity) Oluşturun

Favoriye eklenen öğelerin veritabanında nasıl saklanacağını belirleyen bir tablo yapısı kuruyoruz.

@Entity(tableName = "favorites_table")
data class FavoriteProduct(
    @PrimaryKey val id: Int, 
    val name: String,
    val imageUrl: String
)

3. Veri Erişim Nesnesi (DAO) Tanımlayın

Veritabanına veri eklemek, silmek veya tüm favorileri listelemek için gerekli fonksiyonları burada tanımlıyoruz.

@Dao
interface FavoriteDao {
    @Insert(onConflict = OnConflictStrategy.REPLACE)
    suspend fun addFavorite(product: FavoriteProduct)

    @Delete
    suspend fun removeFavorite(product: FavoriteProduct)

    @Query("SELECT * FROM favorites_table")
    fun getAllFavorites(): LiveData<List<FavoriteProduct>>
}

4. MainActivity Üzerinden Favori İşlemi

Kullanıcı bir butona tıkladığında favori ekleme işlemini lifecycleScope kullanarak gerçekleştirebiliriz:

binding.btnFavorite.setOnClickListener {
    val favoriteItem = FavoriteProduct(id = 101, name = "Akıllı Telefon", imageUrl = "url")
    
    lifecycleScope.launch {
        db.favoriteDao().addFavorite(favoriteItem)
        Toast.makeText(this@MainActivity, "Favorilere Eklendi!", Toast.LENGTH_SHORT).show()
    }
}

Favori Sistemi İçin Altın Kurallar

  • Görsel Geri Bildirim: İkon durumunu (dolu/boş) anlık güncelleyin.
  • Asenkron Yapı: Veritabanı işlemlerini mutlaka Coroutines (IO Dispatcher) ile yönetin.
  • LiveData/Flow: Favori listesini gözlemlemek için reactive yapılar kullanın.

Yorumlar

Tarih Bilgini Test Etmeye Hazır mısın?

Avrupa'dan Afrika'ya, Asya'dan Amerika ve İslam tarihine uzanan 40 soruluk dev genel kültür testimiz yayında!

🏆 Yarışmayı Tam Sayfa Aç
PDF Okuyucu İkonu

Hızlı PDF Okuyucu

Hızlı, hafif ve kullanıcı dostu PDF görüntüleme deneyimi.

Google Play'den İndir
Dersimiz Tarih

Dersimiz Tarih Uygulaması

Tarih Derslerinden Tarih Alanında Hemen Herşeye Kadar Dijital Tarih Bilgi Merkezi.

Google Play'den İndir

Bu blogdaki popüler yayınlar

YouTube ile Web Sitesi SEO'su: Kapsamlı Strateji Rehberi

Uygulama Reklam Butonu