Android: Change language android N, application instance not updated

Viewed 1394

I follow Android N change language programmatically to changed language of my app in android N and above. However, I still have the problem with the application context instance.

In my Application class:

private static Application mInstance;

public static Context getApplication() {
    return mInstance;
}

@Override
public void onCreate() {
    super.onCreate();

    mInstance = this;
}

The language is changed, but Resources get from the Application context is not changed. For example:

MyApplication.getApplication().getResources().getString(stringId);  

With return the wrong language string.

Can I update the application instance in this situation? I stuck to this problem for several hours. Because the MyApplication.getApplication() have used in many places throughout my app. So I can't convert to the Activity context.

Many thanks.

1 Answers
Related