merlin007
پنج شنبه 24 اردیبهشت 1394, 22:07 عصر
من یک سرویس دارم که در background فعال هست ....
توی برنامه در صورت کلیک شدن یک دکمه مقدار یک SharedPreferences تغییر میکنه و تا اینجا همه چیز اوکی هست اما این sharedPreferences در سرویس اعمال نمیشه تا زمانی که سرویس بسته و مجددا اجرا بشه.
با بررسی ای که کردم متوجه شدم سرویس و خود برنامه در دو پروسس مجزا اجرا میشن و تغییرات در یکی باعث ایجاد تغییر دومی نمیشه مگر اینکه موقع ایجاد preferences نوعش رو multi process
بزاریم اما من این کار رو هم کردم اما بازم کار نمیکنه!!!!
به این صورت تعریف کردم:
pref = context.getSharedPreferences("myMemory", Context.MODE_MULTI_PROCESS);
توی برنامه در صورت کلیک شدن یک دکمه مقدار یک SharedPreferences تغییر میکنه و تا اینجا همه چیز اوکی هست اما این sharedPreferences در سرویس اعمال نمیشه تا زمانی که سرویس بسته و مجددا اجرا بشه.
با بررسی ای که کردم متوجه شدم سرویس و خود برنامه در دو پروسس مجزا اجرا میشن و تغییرات در یکی باعث ایجاد تغییر دومی نمیشه مگر اینکه موقع ایجاد preferences نوعش رو multi process
بزاریم اما من این کار رو هم کردم اما بازم کار نمیکنه!!!!
به این صورت تعریف کردم:
pref = context.getSharedPreferences("myMemory", Context.MODE_MULTI_PROCESS);