cordova生成android的settings.gradle配置module

cordova通过platforms\android\cordova\lib\builders\StudioBuilder.js 生成settings.gradle文件。

// 通过遍历subProjects生成    
var settingsGradlePaths = subProjects.map(function (p) {
        var realDir = p.replace(/[/\\]/g, ':');
        var libName = realDir.replace(name + '-', '');
        var str = 'include ":' + libName + '"\n';
        if (realDir.indexOf(name + '-') !== -1) {
            str += 'project(":' + libName + '").projectDir = new File("' + p + '")\n';
        }
        return str;
    });
    var propertiesObj = this.readProjectProperties();
    var subProjects = propertiesObj.libs;

// readProjectProperties 方法生成subProjects 
StudioBuilder.prototype.readProjectProperties = function () {

    function findAllUniq (data, r) {
        var s = {};
        var m;
        while ((m = r.exec(data))) {
            s[m[1]] = 1;
        }
        return Object.keys(s);
    }

    var data = fs.readFileSync(path.join(this.root, 'project.properties'), 'utf8');
    return {
        libs: findAllUniq(data, /^\s*android\.library\.reference\.\d+=(.*)(?:\s|$)/mg),
        gradleIncludes: findAllUniq(data, /^\s*cordova\.gradle\.include\.\d+=(.*)(?:\s|$)/mg),
        systemLibs: findAllUniq(data, /^\s*cordova\.system\.library\.\d+=(.*)(?:\s|$)/mg)
    };
};

    var data = fs.readFileSync(path.join(this.root, 'project.properties'), 'utf8');

project.properties中配置如下即可生成需要的module

android.library.reference.1=app
android.library.reference.2=module1


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值