BroadcastReceiver nicht erhalten, Vorsatz Vorsatz.ACTION_LOCALE_CHANGED

Ich möchte, dass meine app sich bewusst sein, wenn der Benutzer änderungen der locale. Also in meinem Application Klasse, ich erstelle ein receiver zu hören, um das system Absicht ACTION_LOCALE_CHANGED:

public final class MyApp extends Application {

    private BroadcastReceiver myReceiver = new BroadcastReceiver() {

    @Override public void onReceive(Context context, Intent intent) {
        String locale = Locale.getDefault().getCountry();
        Toast.makeText(context, "LOCALE CHANGED to " + locale, Toast.LENGTH_LONG).show();
    }
    };

    @Override public void onCreate() {
       IntentFilter filter = new IntentFilter(Intent.ACTION_LOCALE_CHANGED);

       LocalBroadcastManager.getInstance(this).registerReceiver(myReceiver, filter);
    }
}

Wenn ich drücken Sie auf Startseite und wechseln Sie zur Einstellungen-app ändern, meine locale, der Toast wird nicht angezeigt. Einstellung der Haltepunkt in onReceive zeigt, dass es sich nie getroffen wird.

InformationsquelleAutor user3148156 | 2015-05-26
Schreibe einen Kommentar