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
Rastgele Üretilen Sayıyı WorkManager Sınıfında Bildirimle Gösteren Android Java Uygulaması
Birden Fazla Sayfayı Fragment Kullanarak FrameLayout Nesnesinde Gösteren Android Java Uygulaması
Gmail Hesabi Açmak, Gmail Kaydol, Yeni Bir Gmail Hesabı Oluşturma
QR Code/Kare Kod Okuyan Android Java Uygulaması
Belirtilen Aktiviteyi Bildirim Yardımıyla Açan Android Java Uygulaması
Windows İşletim Sistemi İçin Android Studio Programının Kurulumu
Android Studio İçin Meb Sertifika Yükleme
Ksoap Modülünü Kullanarak Web Service Metoduna Bağlanarak Üçgenin Alanını Bulan Android Java Uygulaması
Android Studio Programında Cleartext HTTP Traffic Not Permitted Hatasını Düzeltme
Euro 2024 Avrupa Şampiyonasında Ülkemizin Yer Aldığı Grubu TableLayout Kullanarak Gösteren Android Studio Uygulaması
Bluetooth Kontrolünü Yapan Android Java Uygulaması
Beni Hatırla Seçeneğiyle Birlikte Kullanıcı Adı ve Şifre İşlemlerini Gerçekleştiren Android Java Uygulaması
Girilen Şehir Adını Görüntüleyen Uygulamayı Android Studio Programında Yapınız
Üç Basamaklı Bir Sayının Yediye Bölünüp Bölünmediğini Kontrol Eden Android Java Uygulaması
Mevsimlere Ait Ayları ViewBinding Yöntemini Kullanarak Android Java Kodlarıyla Tasarlama
Yemek Siparişi Veren Form Sayfasını Code Sekmesini Kullanarak Android Studio Programında Yapma
Personele Ait Yaş Bilgisini Kapsülleyerek Tanımlayan Android Java Uygulaması
Üç Basamaklı Bir Sayının Üçe Bölünüp Bölünmediğini Kontrol Eden Android Java Uygulaması
Üç Basamaklı Bir Sayının Altıya Bölünüp Bölünmediğini Kontrol Eden Android Java Uygulaması
Android Studio Uygulamalarında Intent Kullanımı

Yorum Ekle
   
Kötü
İyi