【问题标题】:change the language of runtime permission更改运行时权限的语言
【发布时间】:2016-03-16 11:14:00
【问题描述】:

如何在android中更改运行时权限的语言?

当我尝试使用

更改语言时
Configuration config = getBaseContext().getResources().getConfiguration();
        locale = new Locale(lang);
        Locale.setDefault(locale);
        Configuration conf = new Configuration(config);
        conf.locale = locale;
        getBaseContext().getResources().updateConfiguration(conf, getBaseContext().getResources().getDisplayMetrics());

它改变了应用程序的语言,但相机的权限,这样的对话框只以英文显示。

有什么办法可以更改权限对话框语言?

【问题讨论】:

    标签: android android-permissions


    【解决方案1】:

    有没有办法改变权限对话框语言?

    让用户更改他们的设备语言。

    您的方法最多会改变应用进程使用的语言(尽管在 Android N 上可能会改变)。任何系统提供的 UI(例如权限对话框)都将使用用户为其设备选择的语言。

    【讨论】:

    • 应用程序语言已更改,但相机请求权限等权限对话框不会更改。它仅显示英文。
    • @krishnachaitanya:正确。正如我在回答中所写,任何系统提供的 UI,例如权限对话框,都将使用用户为其设备选择的语言。你不能影响这个。
    • Facebook 应用程序无需用户更改设备语言即可执行此操作。 IE。将 facebook 应用程序中的语言更改为中文,然后单击照片选择器 - 系统将提示您输入中文权限(带有系统对话框)。所以这个答案似乎不正确。
    • @jt-gilkeson:也许 Facebook 正在利用该设备上的一些安全漏洞。
    【解决方案2】:

    为此,您需要在更改应用程序语言之前或之后创建自己的对话框或更改手机的语言。

    【讨论】:

    • 我不明白我们可以为运行时权限创建自定义对话框吗?或者用户需要更改设备设置?
    • 您需要更改设备设置。无法创建权限对话框。
    猜你喜欢
    • 1970-01-01
    • 2011-09-14
    • 1970-01-01
    • 2011-07-11
    • 2017-04-02
    • 2012-10-22
    • 1970-01-01
    • 2013-05-08
    • 2021-12-05
    相关资源
    最近更新 更多