ورود

View Full Version : آپدیت نشدن sharedpreferences در broadcast reciever



mortex3000
یک شنبه 09 اسفند 1394, 09:12 صبح
سلام من یک BroadcastReceiver دارم که در اون با استفاده از sharedpreferences یکسری داده میگیرم. وقتی در برنامه ام روی این sharedpreferences تغییراتی ایجاد می کنم در BroadcastReceiver آپدیت نمی شود اما وقتی برنامه ام را از طریق گوشی میبندم (کامل بسته می شود) آپدیت می شود. لطفا راهنمایی کنید مشکل از کجاست


public class service extends BroadcastReceiver{
SharedPreferences sp;
@Override public void onReceive(Context context, Intent intent) {
PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "");
wl.acquire();
sp=context.getSharedPreferences("data", 0);
if(sp.getBoolean("mydata", true)==true){
Toast.makeText(context, test !!!!!!!!!!", Toast.LENGTH_LONG).show();
}
wl.release();
}
}

JYasProgramer
دوشنبه 10 اسفند 1394, 06:31 صبح
سلام دوست من Broadcast برای هدف شما استفاده خوبی نیست
برود کست رسیور در موارد خاصی به کار میره که شاید در کار شما به درد نخوره
شما میخایین دقیقا چه کاری انجام بدین؟؟

mortex3000
دوشنبه 10 اسفند 1394, 09:22 صبح
سلام دوست من Broadcast برای هدف شما استفاده خوبی نیست
برود کست رسیور در موارد خاصی به کار میره که شاید در کار شما به درد نخوره
شما میخایین دقیقا چه کاری انجام بدین؟؟
ممنون هدف من اینجام یک کار مشخص در فواصل زمانی منظم به عنوان مثال روزی بکبار است و برای اینکار هم از آلارم منیجر استفاده کردم و جواب هم گرفتم اما فقط مشکلم آپدیت نشدن sharedpreferences زمانی است که برنامه باز باشه و قتی برنامه به طور کامل بسته میشه و به نوعی kill میشه آپدیت میشه

JYasProgramer
دوشنبه 10 اسفند 1394, 10:13 صبح
یه برود کست در اکتیویتی اصلی خودت که هنگام ران شدن برنامت بازمیشه از نوع همون برودکستی که در بالا نوشتی بساز
کدهاش بستگی به خودت داره که درست باشه یا نه
ان شاالله کارت را میافته