How to read all phone contacts in android studio

1.Open manifest file in your android studio and past the below code.

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

2.Open your layout.xml file past the following codes.

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"    
xmlns:app="http://schemas.android.com/apk/res-auto"    
xmlns:tools="http://schemas.android.com/tools"    
android:layout_width="match_parent"    
android:layout_height="match_parent"    
tools:context=".MainActivity">
    <TextView        
android:layout_width="wrap_content"        
android:layout_height="wrap_content"       
android:id="@+id/phone"        
android:padding="3dp"/>
</ScrollView>


3. Open your Main activity.java past the following codes.

package com.imageresizer.phonecontact;

import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;

import android.Manifest;
import android.content.pm.PackageManager;
import android.database.Cursor;
import android.os.Build;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.widget.TextView;

import java.util.ArrayList;

public class MainActivity extends AppCompatActivity {
TextView photo;
ArrayList<String>arrayList;
    @Override    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        photo = findViewById(R.id.phone);
        arrayList = new ArrayList<>();
        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);

        }
        else        {
            getcontact();
        }
    }

    private void getcontact()
    {
        Cursor cursor = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
                null, null, null, null);
        while (cursor.moveToNext())
        {
            String name = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
            String mobile = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
            arrayList.add(name + "\n"+ mobile);
            photo.setText(arrayList.toString());
        }
    }

    @Override    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
        if(requestCode==1)
        {
            if(grantResults[0] == PackageManager.PERMISSION_GRANTED)
            {
                getcontact();
            }
        }
    }
}


Comments

Popular posts from this blog

How to load image view from your android to your android studio app

About Us

Best 10 places to visit in punjab