بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

درخواست توضیح روی این کد

مدیریت گفتگو
SMS
AliBakh 11 سال پیش
آخرین تغییر: 10 سال پیش

سلام دوستان

لطفا یه توضیح در مورد کد زیر بدین که از چه اجزایی تشکیل شده (استفاده شده توش) و چطور کار میکنه و چطور اونهارو یاد بگیرم؟

 publicstaticvoid deleteSms(String sender){
Cursor cursor = G.context.getContentResolver().query(
Uri.parse("content://sms/"),newString[]{
"_id","thread_id","address","person","date","body"},null,null,null);

try{
while(cursor.moveToNext())
{
int id = cursor.getInt(0);
String address = cursor.getString(2);
Log.i("Log","a"+ id);
if(address.equals(sender))
{
G.context.getContentResolver().delete(
Uri.parse("content://sms/"+ id),null,null);
}

}
}
catch(Exception e){

}
}

نظرات

AliBakh 10 سال پیش
دوستان یه جوابی بدید.

پاسخ‌ها 1

حمید زمانی 10 سال پیش

تا اونجایی که من می دونم شما با این به بانک اس ام اس های ذخیره شده بر روی گوشی دسترسی پیدا می کنید و در خط زیر درخواست ستون های مختلفی را می دهید :

Cursor cursor = G.context.getContentResolver().query(
Uri.parse("content://sms/"),newString[]{
"_id","thread_id","address","person","date","body"},null,null,null);

اندروید به شما یک Cursor که مثل یک جدول دیتابیس است را بر می گرداند که شما با استفاده از Cursor بازگردانده شده می توانید به اطلاعاتی که در خط بالا درخواست کرده بودید دسترسی داشته باشید.
در خطی که حلقه ی while شروع می شود ، شما دونه دونه سطر های جدول بازگشتی را می خوانید و تا وقتی که سطری برای خواندن وجود داشته باشد این حلقه فعال می باشد.
در خط بعد چک می کنید که اگر پارامتر ورودی متد (sender) برابر بود با مقدار ثبت شده در ستون address ، خط زیر که یک سطر از جدول را حذف می کند اجرا شود :

 G.context.getContentResolver().delete(Uri.parse("content://sms/"+ id),null,null);

نظرات

AliBakh 10 سال پیش
ممنون آقا شما content provider ها رو از کجا یاد گرفتین؟
حمید زمانی 10 سال پیش
یه کتابی که اسمش یادم نیست رو خونده بودم این مبحث داخلش بود ، اما با مطالعه ی کد و تکرار و تمرین می تونی متوجه بشی ، راه بعدیشم اینه گوگل رو باز کنی و در موردشون سرچ کنی.

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .