如何从命令行以特定语言启动 iOS 模拟器?

How to launch iOS Simulator in specific language from command line?

我需要启动 iOS 使用命令行使用特定语言的模拟器。所以我发现我可以使用

instruments -w <device>

它运行良好,我可以设置特定的设备。但是我怎样才能 运行 使用特定语言的模拟器呢?我试过添加

-AppleLanguages -AppleLocale

但有一些警告:

Instruments Usage Error : Specified target process is invalid: -AppleLanguage

谢谢!

看看:

https://developer.apple.com/library/ios/documentation/MacOSX/Conceptual/BPInternational/TestingYourInternationalApp/TestingYourInternationalApp.html 搜索 "Testing Specific Languages and Regions"

也许它也可以是创建不同目标的解决方案。每个目标都配置了另一种语言

为了 运行 必须安装并定位您的应用程序(如果没有,将打开默认语言)

使用此命令运行 您的应用程序支持某种语言

xcrun simctl launch <deviceid> <appid> -AppleLanguages "(pt-BR)"

样本:

xcodebuild -sdk iphonesimulator8.4 -arch i386 install DSTROOT=SomeFolder
xcrun instruments -w "iPhone 6 (8.4 Simulator)"
xcrun simctl install booted SomeFolder/Applications/YourApp.app
xcrun simctl launch booted com.yourdomain.yourapp -AppleLanguages "(pt-BR)"

使用特定语言启动 iOS Simulator 的唯一方法是更改​​其 .GlobalPreferences.plist 文件的内容。使用 xcrun 工具将不起作用,因为它会将参数传递给启动的应用程序并且不会更改模拟器本身的语言。对 .GlobalPreferences.plist 的操作非常困难,因为它是二进制 plist 文件,因此您不能将其修改为 'normal' xml。更改其内容的最简单方法是编写简单的 Xcode Command Line Tool application,Foundation SDK 拥有修改二进制 plists.

所需的所有工具