درخواست توضیح روی این کد
سلام دوستان
لطفا یه توضیح در مورد کد زیر بدین که از چه اجزایی تشکیل شده (استفاده شده توش) و چطور کار میکنه و چطور اونهارو یاد بگیرم؟
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){
}
}
تا اونجایی که من می دونم شما با این به بانک اس ام اس های ذخیره شده بر روی گوشی دسترسی پیدا می کنید و در خط زیر درخواست ستون های مختلفی را می دهید :
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);
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .