【问题标题】:how to specify the locale when cordova build科尔多瓦构建时如何指定语言环境
【发布时间】:2016-06-01 21:32:17
【问题描述】:

当我使用 Xcode 为 cordova 项目构建和导出 ipa 时,我可以选择中文的本地化选项。当我转而使用cordova build -device 直接在没有Xcode 的情况下生成ipa。如何从命令行指定语言环境选项

【问题讨论】:

    标签: cordova


    【解决方案1】:

    您需要在platforms/ios/{appName}/{appName}-Info.plist中设置语言。

    语言的键为CFBundleDevelopmentRegion,默认值为English

    我不确定究竟允许哪个值。我用Dutch 尝试过,但我认为Chinese 也是一个有效值。

    我创建了一个简单的Cordova hook 来自动执行此任务。只需将其用作 ios 平台的 after_platform_add 挂钩即可。

    #!/usr/bin/env node
    'use strict';
    
    const fs = require('fs');
    const path = require('path');
    
    const plist = require('plist');
    
    
    module.exports = context => {
      const ConfigParser = context.requireCordovaModule('cordova-common').ConfigParser;
    
      return new Promise((resolve, reject) => {
        let config = new ConfigParser(path.resolve(context.opts.projectRoot, 'config.xml'));
        let name = config.name();
        let plistPath = path.join(context.opts.projectRoot, 'platforms', 'ios', name, `${name}-Info.plist`);
    
        fs.readFile(plistPath, 'utf-8', (err, data) => {
          if (err) {
            return reject(err);
          }
          let infoPlist = plist.parse(data);
          infoPlist.CFBundleDevelopmentRegion = 'Chinese';
          fs.writeFile(plistPath, plist.build(infoPlist), err => {
            if (err) {
              return reject();
            }
            resolve();
          });
        });
      });
    };
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-25
      相关资源
      最近更新 更多