PDA

View Full Version : ارسال دفترچه تلفن



ebrahim.rayatparvar
یک شنبه 04 بهمن 1394, 20:19 عصر
سلام دوستان

تو برنامه نویسی اندروید به چه صورتی میشه به مخاطبین دفترچه تلفن دسترسی داشت که بشه مثلا به یک ایمیلی که خود طرف تنظیم میکنه میل بشه.

msroid
یک شنبه 04 بهمن 1394, 21:30 عصر
سلام
اول نیاز به دسترسی داری:

android:name="android.permission.READ_CONTACTS"/>

بعد باید به سیستم بگیم که کانتک هارو میخوایم که با استفاده از اینتنت این کار رو میکنیم:

Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(intent, REQUEST_CODE);

با استفاده از متد زیر نتیجه رو میگیریم:

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, intent);
if(requestCode == REQUEST_CODE && resultCode == RESULT_OK){
Uri contactData = data.getData(); Cursor c = managedQuery(contactData, null, null, null, null);
if (c.moveToFirst()) {
String name = c.getString(c.getColumnIndexOrThrow(People.NAME));
// do here what u want to do
}
}
}

ebrahim.rayatparvar
دوشنبه 05 بهمن 1394, 11:09 صبح
سلام
اول نیاز به دسترسی داری:

android:name="android.permission.READ_CONTACTS"/>

بعد باید به سیستم بگیم که کانتک هارو میخوایم که با استفاده از اینتنت این کار رو میکنیم:

Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(intent, REQUEST_CODE);

با استفاده از متد زیر نتیجه رو میگیریم:

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, intent);
if(requestCode == REQUEST_CODE && resultCode == RESULT_OK){
Uri contactData = data.getData(); Cursor c = managedQuery(contactData, null, null, null, null);
if (c.moveToFirst()) {
String name = c.getString(c.getColumnIndexOrThrow(People.NAME));
// do here what u want to do
}
}
}


سلام مهندس
من کد بالا رو کپی می کنم تمام دستوراتی که نیاز داره Import بشه رو انجام میدم ولی باز REQUEST_CODE رو هنوز نمیشناسه.

ebrahim.rayatparvar
دوشنبه 05 بهمن 1394, 11:22 صبح
سلام
اول نیاز به دسترسی داری:

android:name="android.permission.READ_CONTACTS"/>

بعد باید به سیستم بگیم که کانتک هارو میخوایم که با استفاده از اینتنت این کار رو میکنیم:

Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(intent, REQUEST_CODE);

با استفاده از متد زیر نتیجه رو میگیریم:

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, intent);
if(requestCode == REQUEST_CODE && resultCode == RESULT_OK){
Uri contactData = data.getData(); Cursor c = managedQuery(contactData, null, null, null, null);
if (c.moveToFirst()) {
String name = c.getString(c.getColumnIndexOrThrow(People.NAME));
// do here what u want to do
}
}
}


سلام مهندس
من کد بالا رو کپی می کنم تمام دستوراتی که نیاز داره Import بشه رو انجام میدم ولی باز REQUEST_CODE رو هنوز نمیشناسه.

msroid
دوشنبه 05 بهمن 1394, 12:16 عصر
اون REQUEST_CODE یک کلمه کلیدی نیست خودت باید یه عدد به جاش بذاری. هر عددی باشه فرقی نمیکنه. با اون عدد اکتیویتی رو اجرا میکنی با اون عدد هم نتیجه رو میگیری. مثل کد شناسایی میمونه.