Android Activity Arası Veri

Android Aktiviteleri Arası Veri Paylaşımı

Android uygulamalarında, farklı aktiviteler arasında veri paylaşımı yapmak sıklıkla karşılaşılan bir ihtiyaçtır. Bu veri paylaşımı, aktiviteler arasında bilgi alışverişini sağlayarak uygulamanın işlevselliğini artırır.

Android’de aktiviteler arasında veri paylaşımı yapmak için çeşitli yöntemler bulunmaktadır. Bu yöntemler şunlardır:

  • Intent Objesi: Intent nesnesi, aktiviteler arasında veri paylaşımı yapmak için kullanılan temel yöntemdir. Intent nesnesi, bir aktiviteyi başlatmak için kullanılır ve aynı zamanda bu aktiviteye veri göndermek için de kullanılabilir.
  • Bundle Nesnesi: Bundle nesnesi, Intent nesnesine eklenen ve veri paylaşımı için kullanılan bir nesnedir. Bundle nesnesi, farklı veri türlerini saklayabilir ve bu veriler aktiviteler arasında kolayca paylaşılabilir.
  • SharedPreferences: SharedPreferences, aktiviteler arasında veri paylaşımı yapmak için kullanılan bir başka yöntemdir. SharedPreferences, cihazda kalıcı olarak saklanan bir veri deposudur ve bu veri deposuna erişim tüm aktiviteler tarafından yapılabilir.
  • SQLite Veritabanı: SQLite veritabanı, aktiviteler arasında veri paylaşımı yapmak için kullanılan bir diğer yöntemdir. SQLite veritabanı, cihazda saklanan bir veritabanıdır ve bu veritabanına erişim tüm aktiviteler tarafından yapılabilir.

Intent Objesi ile Veri Paylaşımı

Intent nesnesi, aktiviteler arasında veri paylaşımı yapmak için kullanılan temel yöntemdir. Intent nesnesi, bir aktiviteyi başlatmak için kullanılır ve aynı zamanda bu aktiviteye veri göndermek için de kullanılabilir.

Intent nesnesine veri eklemek için putExtra() metodu kullanılır. Bu metod, veri türüne göre farklı parametreler alır. Örneğin, bir dize veri eklemek için putExtra() metodu şu şekilde kullanılır:

java
Intent intent = new Intent(this, SecondActivity.class);
intent.putExtra("name", "John Doe");
startActivity(intent);

Intent nesnesinden veri almak için getStringExtra() metodu kullanılır. Bu metod, veri türüne göre farklı parametreler alır. Örneğin, bir dize veri almak için getStringExtra() metodu şu şekilde kullanılır:

java
Intent intent = getIntent();
String name = intent.getStringExtra("name");

Bundle Nesnesi ile Veri Paylaşımı

Bundle nesnesi, Intent nesnesine eklenen ve veri paylaşımı için kullanılan bir nesnedir. Bundle nesnesi, farklı veri türlerini saklayabilir ve bu veriler aktiviteler arasında kolayca paylaşılabilir.

Bundle nesnesine veri eklemek için put() metodu kullanılır. Bu metod, veri türüne göre farklı parametreler alır. Örneğin, bir dize veri eklemek için put() metodu şu şekilde kullanılır:

java
Bundle bundle = new Bundle();
bundle.putString("name", "John Doe");
intent.putExtras(bundle);
startActivity(intent);

Bundle nesnesinden veri almak için get() metodu kullanılır. Bu metod, veri türüne göre farklı parametreler alır. Örneğin, bir dize veri almak için get() metodu şu şekilde kullanılır:

java
Intent intent = getIntent();
Bundle bundle = intent.getExtras();
String name = bundle.getString("name");

SharedPreferences ile Veri Paylaşımı

SharedPreferences, aktiviteler arasında veri paylaşımı yapmak için kullanılan bir başka yöntemdir. SharedPreferences, cihazda kalıcı olarak saklanan bir veri deposudur ve bu veri deposuna erişim tüm aktiviteler tarafından yapılabilir.

SharedPreferences nesnesine veri eklemek için put() metodu kullanılır. Bu metod, veri türüne göre farklı parametreler alır. Örneğin, bir dize veri eklemek için put() metodu şu şekilde kullanılır:

java
SharedPreferences sharedPreferences = getSharedPreferences("my_preferences", MODE_PRIVATE);
sharedPreferences.edit().putString("name", "John Doe").apply();

SharedPreferences nesnesinden veri almak için get() metodu kullanılır. Bu metod, veri türüne göre farklı parametreler alır. Örneğin, bir dize veri almak için get() metodu şu şekilde kullanılır:

java
SharedPreferences sharedPreferences = getSharedPreferences("my_preferences", MODE_PRIVATE);
String name = sharedPreferences.getString("name", "");

SQLite Veritabanı ile Veri Paylaşımı

SQLite veritabanı, aktiviteler arasında veri paylaşımı yapmak için kullanılan bir diğer yöntemdir. SQLite veritabanı, cihazda saklanan bir veritabanıdır ve bu veritabanına erişim tüm aktiviteler tarafından yapılabilir.

SQLite veritabanına veri eklemek için insert() metodu kullanılır. Bu metod, veri türüne göre farklı parametreler alır. Örneğin, bir dize veri eklemek için insert() metodu şu şekilde kullanılır:

java
SQLiteDatabase db = getWritableDatabase();
db.insert("my_table", null, ContentValues("name", "John Doe"));

SQLite veritabanından veri almak için query() metodu kullanılır. Bu metod, veri türüne göre farklı parametreler alır. Örneğin, bir dize veri almak için query() metodu şu şekilde kullanılır:

java
SQLiteDatabase db = getReadableDatabase();
Cursor cursor = db.query("my_table", null, "name = ?", new String[] { "John Doe" }, null, null, null);
if (cursor.moveToFirst()) {
String name = cursor.getString(cursor.getColumnIndex("name"));
}

Faydalı Siteler ve Dosyalar


Yayımlandı