0

I want to fetch contacts from individual user to Firebase Database i refered this article android get all contacts I Declared it to get Contacts to Firebase Database Even it Goes To Failed to fetch Contacts i also Declared permission of Internet in Manifest , Set Firebase Console to Allow it to write to Firebase Database well as Added Firebase Database Follow Code is the code

    public class MainActivity extends AppCompatActivity {

ProgressDialog dialog;

DatabaseReference yourReference;  

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    yourReference = FirebaseDatabase.getInstance().getReference().child("users");
    setContentView(R.layout.activity_your);
    dialog = new ProgressDialog(this);
    dialog.setMessage("Uploading contacts...");

    Cursor contacts = getContentResolver().query(
            ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
            new String[]{
                    ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME,
                    ContactsContract.CommonDataKinds.Phone.NUMBER
            },
            null,
            null,
            null
    );



    HashMap<String,Object> map = new HashMap<>();


    if(contacts!=null) {
        while(contacts.moveToNext()){
            map.put(
                    contacts.getString(contacts.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME)),
                    contacts.getString(contacts.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER))
            );
        }
        contacts.close();
    }

    dialog.show();

    yourReference.updateChildren(map)

            .addOnSuccessListener(new OnSuccessListener<Void>() {
                @Override
                public void onSuccess(Void aVoid) {
                    dialog.dismiss();
                    Toast.makeText(YourActivity.this, "Contacts uploaded suffessfully!", Toast.LENGTH_SHORT).show();
                }
            })

    .addOnFailureListener(new OnFailureListener() {
        @Override
        public void onFailure(@NonNull Exception e) {
            dialog.dismiss();
            Log.w("MKN","Error: "+e.getMessage());
            Toast.makeText(YourActivity.this, "Contacts upload failed.", Toast.LENGTH_SHORT).show();
        }
    });
}
}
Yash
  • 27
  • 2

0 Answers0