Android getString()使已发布的应用程序崩溃

Android getString()使已发布的应用程序崩溃,android,xml,localization,crash,Android,Xml,Localization,Crash,我在文件夹中有一些带有字符串的本地化文件,如 values values-ru values-es etc. 在每个文件夹中都有一个strings.xml文件,该文件的键相同,但值不同 在调试模式下,它可以完美地工作。但当我从Play Market下载应用程序时,它在每个地区都会崩溃,Resources$NotFoundException 我也是 Locale locale = getBaseContext().getResources().getConfiguration().locale;

我在文件夹中有一些带有字符串的本地化文件,如

values
values-ru
values-es
etc.
在每个文件夹中都有一个strings.xml文件,该文件的键相同,但值不同

在调试模式下,它可以完美地工作。但当我从Play Market下载应用程序时,它在每个地区都会崩溃,
Resources$NotFoundException

我也是

Locale locale = getBaseContext().getResources().getConfiguration().locale; 
        Locale.setDefault(locale);
        Configuration config = new Configuration();
        config.locale = locale;
        getBaseContext().getResources().updateConfiguration(config,                                 getBaseContext().getResources().getDisplayMetrics());
在初始化期间。这可能是原因吗

有什么建议吗

来自开发控制台的日志:

android.content.res.Resources$NotFoundException: String resource ID #0x7f080010
at android.content.res.Resources.getText(Resources.java:201)
at android.content.res.Resources.getString(Resources.java:254)
at android.content.Context.getString(Context.java:182)
at com.companyName.appName.menuActivity.onWindowFocusChanged(menuActivity.java:115)
at com.android.internal.policy.impl.PhoneWindow$DecorView.onWindowFocusChanged(PhoneWindow.java:1986)
at android.view.View.dispatchWindowFocusChanged(View.java:3788)
at android.view.ViewGroup.dispatchWindowFocusChanged(ViewGroup.java:658)
at android.view.ViewRoot.handleMessage(ViewRoot.java:1921)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:878)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:636)
at dalvik.system.NativeStart.main(Native Method)
我去掉了这个部分

Locale locale = getBaseContext().getResources().getConfiguration().locale; 
        Locale.setDefault(locale);
        Configuration config = new Configuration();
        config.locale = locale;
        getBaseContext().getResources().updateConfiguration(config,                                 getBaseContext().getResources().getDisplayMetrics());

它是有效的。正如我所建议的,无需修复区域设置,系统将按照预期使用所需的资源。

在手机中安装logcat应用程序,并发布您所收到的错误。是否再次尝试运行Project>Clean并导出?有时aapt生成的资源在应该刷新时不会刷新。尝试过,但不确定是否有用-资源在很长时间内都是相同的。另外,我打开.apk as.zip,在res文件中发现了一些与我的字符串非常相似的东西。