从GCMBroadcastReceiver获取共享首选项

时间:2013-12-24 14:07:19

标签: java android notifications sharedpreferences google-cloud-messaging

我的应用程序中有一个值保存在MainActivity的共享首选项中,每当我的应用程序收到通知时,我需要在GCMBroadcastReceiver中使用该值。

我可以从GCMBroadcastReceiver访问共享首选项吗?或者也许有另一种方法可以获得这个价值?

2 个答案:

答案 0 :(得分:1)

使用以下代码保存值并检索值。

public class GCMBroadcastReceiver extends BroadcastReceiver 
{
   PreferenceManager manager;

   @Override
   public void onReceive(Context context, Intent intent) 
  {

      manager = (PreferenceManager) PreferenceManager.getDefaultSharedPreferences(context.getApplicationContext());
      SharedPreferences preferences = manager.getSharedPreferences();
    // handle here your broadcast receiver specific code. 
  }
}

答案 1 :(得分:0)

我发现了问题。

我必须使用传递给onReceive方法的上下文

SharedPreferences prefs = context.getsharedPreferences("prefs name", Context.MODE_PRIVATE);