在Android中有很完整的消息通知机制,可以很方便的发送一个通知,然后注册一个receiver去接收这些消息.
public static void notifyAuthenticationChange(Context ctx, String authority, boolean authenticated) { Utils.log("notifyAuthenticationChange,authority="+authority); Intent broadcast = new Intent(ACTION_SOCIAL_AUTH); broadcast.putExtra(EXTRA_AUTHORITY, authority); broadcast.putExtra(EXTRA_AUTHENTICATED, authenticated); ctx.sendBroadcast(broadcast); }
private void registerAuthReceiver() { IntentFilter filter = new IntentFilter(); filter.addAction(AuthObserver.ACTION_SOCIAL_AUTH); filter.addCategory(Intent.CATEGORY_DEFAULT); registerReceiver(mAuthChangeReceiver, filter); } private BroadcastReceiver mAuthChangeReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub Utils.log("onReceive,the Auth may changed.intent=" + intent); } };如果不用的时候还需要unregister:
unregisterReceiver(mAuthChangeReceiver);