Android

Telefon Rehberini ListView Penceresinde Listeleyen Android Java Uygulaması

Telefonlarda en sık kullandığımız özelliklerden biri de telefon numaralarını, isimleriyle birlikte rehbere kaydetmektir. Bu uygulamamızda telefon rehberini ListView penceresinde listeleyeceğiz. 

Öncelikle activity_main dosyasını düzenleyelim.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_horizontal"
    android:orientation="vertical">

    <Button
        android:id="@+id/button"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="get"
        android:text="Button" />

    <ListView
        android:id="@+id/listview"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
</LinearLayout>

Daha sonra MainActivity dosyasını düzenleyelim.

public class MainActivity extends AppCompatActivity {

    ListView li;
    Cursor cursor = null;
    Context context = this;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        li = findViewById(R.id.listview);
    }

    public void get(View view) {
        cursor = getContentResolver().query(
ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null, null);

        startManagingCursor(cursor);

        String[] from = {ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME, 
ContactsContract.CommonDataKinds.Phone.NUMBER, 
ContactsContract.CommonDataKinds.Phone._ID};

        int[] to = {android.R.id.text1, android.R.id.text2};

        SimpleCursorAdapter simpleCursorAdapter = new SimpleCursorAdapter(context, 
android.R.layout.simple_list_item_2, cursor, from, to);

        li.setAdapter(simpleCursorAdapter);

        li.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
    }
}

Manifest dosyasına aşağıdaki satırı ekleyelim.

    <uses-permission android:name="android.permission.READ_CONTACTS" />

Projemizi harici bir telefonda çalıştıralım. Proje çalışmayacaktır. Her ne kadar izin için gerekli kodu yazmamıza rağmen telefon bizden ilgili uygulamanın iznini onaylamamızı ister. Bunun telefonunun Ayarlar kısmına gelelim. Buradan Uygulamalar sekmesine girelim. Listeden uygulama ismini bulalım. Uygulamayı seçelim. İzin verilmeyenler listesinden Kişiler kısmına gelelim. İzin ver radyo düğmesini seçelim. Uygulamayı tekrar çalıştıralım. Butona bastığımızda rehber ekranda görüntülenecektir. 

Proje üzerinde izinleri elle vermek yerine bir liste halinde kullanıcıyı bilgilendirmek istersek aşağıdaki metodu kullanabiliriz.

    public boolean checkPermission() {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M
                && checkSelfPermission(Manifest.permission.READ_CONTACTS)
                != PackageManager.PERMISSION_GRANTED) {
            requestPermissions(new String[]{Manifest.permission.READ_CONTACTS}, 1);
            return false;
        }
        return true;
    }

Bu metodu program içinde kullanmak için get() metodunun en üstüne aşağıdaki satırları eklemeniz yeterli olacaktır.

        if (!checkPermission()) return;

 


İlgili Makaleler
App Inventor 2 Uygulamasında Köstebek Oyunu
App Inventor Uygulamasında Belli Bir Süre İçinde Sayı Toplama Oyunu
Android Studio İçin Meb Sertifika Yükleme
Gmail Hesabi Açmak, Gmail Kaydol, Yeni Bir Gmail Hesabı Oluşturma
Personele Ait Yaş Bilgisini Kapsülleyerek Tanımlayan Android Java Uygulaması
Mevsimlere Ait Ayları ViewBinding Yöntemini Kullanarak Android Java Kodlarıyla Tasarlama
Beni Hatırla Seçeneğiyle Birlikte Kullanıcı Adı ve Şifre İşlemlerini Gerçekleştiren Android Java Uygulaması
App Inventor 2 Kurulumu
Android Studio Programında SharedPreferenc Sınıfı Oluşturma
Ksoap Kütüphanesini Android Studio Projesine Dahil Etme
Android Studio Programında Shared Preferences Kullanımı
Android Java Application Using TabbedActivty and Fragment to Login Username and Password
Telefon Araması Yapan Android Java Uygulaması
Galeride Bulunan Resimlerden Birini ImageView Nesnesinde Gösteren Android Java Uygulaması
AnyDesk Programıyla Cep Telefonu Görüntüsünü Bilgisayara Aktarma
Yemek Siparişi Veren Form Sayfasını Code Sekmesini Kullanarak Android Studio Programında Yapma
No Activity Seçeneğiyle Oluşturulan Projede Sayıları Arttıran Android Java Uygulaması
Girilen Şehir Adını Görüntüleyen Uygulamayı Android Studio Programında Yapınız
Ksoap Modülünü Kullanarak Web Service Metoduna Bağlanarak Üçgenin Alanını Bulan Android Java Uygulaması
Windows İşletim Sistemi İçin Android Studio Programının Kurulumu

Yorum Ekle
   
Kötü İyi