广播监听系统切换语言变换

来源:互联网 发布:网络炒作公司价格 编辑:程序博客网 时间:2024/05/18 01:38
广播监听系统切换语言变换
静态注册:
<receiver
      android:name="com.ulucu.receiver.LOCALEReceiver"
      android:enabled="true">
   <intent-filter>
        <action android:name="android.intent.action.LOCALE_CHANGED" />
   </intent-filter>
</receiver>




public class LOCALEReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent.getAction().equals(Intent.ACTION_LOCALE_CHANGED)) {
            Intent it = new Intent(context, StartActivity.class);
            it.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            it.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            context.startActivity(it);


        }
    }
}


动态注册:
privateBroadcastReceiver mReceiver = new BroadcastReceiver(){
       @Override
      publicvoid onReceive(Context context, Intent intent) {
           Log.v(TAG, "mReceiver  onReceive  intent.getAction(): "+intent.getAction());
          
          if(intent.getAction().equals(Intent.ACTION_LOCALE_CHANGED)) {
                 
                  …//此处做你的处理
               }
       }
    };
 
IntentFilter filter =newIntentFilter();
filter.addAction(Intent.ACTION_LOCALE_CHANGED);    
mContext.registerReceiver(mReceiver, filter);
0 0