PDA

View Full Version : contact_db



aryana_b
دوشنبه 15 تیر 1394, 10:58 صبح
سلام بچه ها
من تو برنامه نویسی اندروید به یه مشکل جدی بر خوردم خوشحال میشم اگه کمکم کنید
دارم یه برنامه برای بلاک تماس و sms مینویسم و تو برنامه از contact list خود گوشی برای بلاک کردن استفاده میکنم من میخواستم وقتی کاربر روی اسم یکی از contctها کلیک میکنه اسم و شماره کاربرو برای من برگردونه و من اون رو در DB وارد کنم .من از کد زیر برای اینکار استفاده میکنم ولی بدبختانه کل اسامی و شماره های contact list رو بر میگردونه . من کلی روش امتحان کردم یا مشکلش همینه یا اینکه فقط اسم کانتک رو بر میگردونه . شما کدم رو بررسی کنید ببینین مشکل از کجاست :گریه::گریه::گریه::گریه::گریه: :گریه::گریه:
خیییییییییییلی ممنون میشم ازتون اگه کمکم کنید :قلب::قلب::قلب::بوس::بوس::بوس:: وس:





132944

ali_khodayar
دوشنبه 15 تیر 1394, 12:20 عصر
شاید اگر بجای دستورت do while از If استفاده کنی مشکل حل بشه .



if (people.getColumnCount() >0){


String namee = people.getString(indexName);
String number = people.getString(indexNumber);
txtadded.setText(namee+" inserted to list");
checkinsert (namee,number, "1");


}

aryana_b
دوشنبه 15 تیر 1394, 14:07 عصر
مرسی ولی اینم نشد

ali_khodayar
دوشنبه 15 تیر 1394, 14:25 عصر
عجیبه!!!! . بازهم اطلاعات تمام contact ها رو نمایش داد؟

نمیشه که اطلاعات تمام Contact ها رو نمایش بده . بخاطر اینکه حلقه ای وجود نداره .

gilas1368
دوشنبه 15 تیر 1394, 14:29 عصر
چیزی ک من دارم میبینم با چیزی ک میگید متفاوته
شما میگید روی ی contact کلیک میکنید و میخواید بره توی دیتابیس ذخیره بشه
خب تا اینجا ینی شما ی query باید بزنید و براساس اون مخاطبی ک روش کلیک شده دیتا رو برگدونید و داخل دیتابیس بریزید
اما توی کدتون شما اینکارو نکردید توی دو خط زیر شما ی URI و ی Projection میسازید

Uri uri = ContactsContract.CommonDataKinds.Phone.CONTENT_URI ;
String[] projection = new String[] {ContactsContract.CommonDataKinds.Phone.DISPLAY_NA ME,
ContactsContract.CommonDataKinds.Phone.NUMBER};

و با خط زیر هم میگید نتیجه رو بهم برگردون:

Cursor people = getContentResolver().query( uri, projection, null, null, null);

خب حالا میشه بگید شرطتون کجاست؟!!!
این دستورات لیست تمام مخاطبا رو برمیگردون و بعد هم میریزه توی دیتا بیس
شما باید زمانی ک URI رو میسازید بهش بگید این مخاطب رو میخوام
برای مثال میتونید اینجا (http://stackoverflow.com/questions/18600932/search-contact-by-name) رو ی نیگا بندازید
توی این لینک میاد و اطلاعات رو بر مبنای اسم هایی ک rohan هستش پیدا میکنه و نتیجه رو برمیگردونه

برنامه اتون رو متناسب با این کدها تغییر بدید و ببینید اون چیزی ک میخواید رو بهتون میده یا خیر
اگر نتیجه اون چیزی نبود ک میخواستید، اعلام کنین تا براتون ی نمونه آماده کنم

aryana_b
دوشنبه 15 تیر 1394, 15:12 عصر
آقا خییییییییییییییییلی ممنون مشکلم برطرف شد واقعا ممنون
این لینک باعث شد یک مشکل دیگه هم که داشتم برطرف شد
ممنون