2016-05-16 23 views
1

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

回答

0

您需要在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(); 
     }); 
    }); 
    }); 
}; 
相关问题