Advertisement
Guest User

Untitled

a guest
Jan 16th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.04 KB | None | 0 0
  1. package com.example.sean.asnsmsapp;
  2. import android.Manifest;
  3. import android.content.pm.PackageManager;
  4. import android.database.Cursor;
  5. import android.provider.ContactsContract;
  6. import android.support.v4.app.ActivityCompat;
  7. import android.support.v7.app.AppCompatActivity;
  8. import android.os.Bundle;
  9. import android.widget.ArrayAdapter;
  10. import android.widget.ListView;
  11. import android.widget.Toast;
  12.  
  13. import java.util.ArrayList;
  14.  
  15. public class MainActivity extends AppCompatActivity {
  16.  
  17. ListView listView ;
  18. ArrayList<String> StoreContacts ;
  19. ArrayAdapter<String> arrayAdapter ;
  20. Cursor cursor ;
  21. String name, phonenumber ;
  22. public static final int RequestPermissionCode = 1 ;
  23.  
  24. @Override
  25. protected void onCreate(Bundle savedInstanceState) {
  26. super.onCreate(savedInstanceState);
  27.  
  28. setContentView(R.layout.activity_main);
  29.  
  30. listView = (ListView)findViewById(R.id.lvContacts);
  31.  
  32. StoreContacts = new ArrayList<String>();
  33.  
  34. EnableRuntimePermission();
  35.  
  36.  
  37. }
  38.  
  39. public void GetContactsIntoArrayList(){
  40.  
  41. cursor = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null,null, null, null);
  42.  
  43. while (cursor.moveToNext()) {
  44.  
  45. name = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
  46.  
  47. phonenumber = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
  48.  
  49. StoreContacts.add(name + " " + ":" + " " + phonenumber);
  50. }
  51.  
  52. cursor.close();
  53.  
  54. }
  55.  
  56. public void EnableRuntimePermission(){
  57.  
  58. if (ActivityCompat.shouldShowRequestPermissionRationale(
  59. MainActivity.this,
  60. Manifest.permission.READ_CONTACTS))
  61. {
  62.  
  63. Toast.makeText(MainActivity.this,"CONTACTS permission allows us to Access CONTACTS app", Toast.LENGTH_LONG).show();
  64.  
  65. } else {
  66.  
  67. ActivityCompat.requestPermissions(MainActivity.this,new String[]{
  68. Manifest.permission.READ_CONTACTS}, RequestPermissionCode);
  69.  
  70. }
  71. }
  72.  
  73. public void fillContactList()
  74. {
  75. GetContactsIntoArrayList();
  76. arrayAdapter = new ArrayAdapter<String>(MainActivity.this, R.layout.listviewtemplate, R.id.txtContact, StoreContacts);
  77. listView.setAdapter(arrayAdapter);
  78. }
  79.  
  80. @Override
  81. public void onRequestPermissionsResult(int RC, String per[], int[] PResult) {
  82.  
  83. switch (RC) {
  84.  
  85. case RequestPermissionCode:
  86.  
  87. if (PResult.length > 0 && PResult[0] == PackageManager.PERMISSION_GRANTED) {
  88. Toast.makeText(MainActivity.this,"Permission Granted, Now your application can access CONTACTS.", Toast.LENGTH_LONG).show();
  89. fillContactList();
  90. } else {
  91.  
  92. Toast.makeText(MainActivity.this,"Permission Canceled, Now your application cannot access CONTACTS.", Toast.LENGTH_LONG).show();
  93.  
  94. }
  95. break;
  96. }
  97. }
  98.  
  99.  
  100. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement