在Android设备上以编程方式切换语言

Jim*_*ins 9 android monkeyrunner

我正在为我们的应用程序编写一些Android测试自动化,这些应用程序本地化为18种语言.

我需要能够以编程方式切换设备上的语言 - 我并不是要切换应用程序的语言 - 我的意思是在Android设置中切换实际的设备语言,这也是我们的应用程序切换的方式.

有什么方法可以通过MonkeyRunner,Android Debug Bridge或其他方式实现这一目标吗?理想情况下,我想要一种适用于Android模拟器和物理设备的方法.

谢谢.

Jim*_*ins 4

最后发现你可以通过我刚刚安装在我的测试机器上并添加到 Windows PATH 变量中的Android 调试桥来完成此操作。

例如,将设备语言切换为德语的命令为:

adb shell "su -c 'setprop persist.sys.language de; setprop persist.sys.country de; stop; sleep 5; start'
Run Code Online (Sandbox Code Playgroud)

您需要一个已取得 root 权限的设备才能使其正常工作。