diff --git a/plugin.xml b/plugin.xml index 9e25cf6..aa18fed 100644 --- a/plugin.xml +++ b/plugin.xml @@ -27,6 +27,8 @@ + + diff --git a/scripts/re-add.js b/scripts/re-add.js new file mode 100644 index 0000000..46bbcbb --- /dev/null +++ b/scripts/re-add.js @@ -0,0 +1,42 @@ +/** + * ~ Copyright (c) 2023 Beijing Shuto Technology Co,. Ltd. All rights reserved. + */ + +const path = require("path"); +const fs = require("fs"); +var child_process = require("child_process"); + +/** + * 读取文件内容,然后替换部分内容后写回 + * @param file + * @param callback + */ +function replaceContents(file, callback) { + fs.readFile(file, 'utf8', function (err, data) { + if (err) throw err; + data = callback(data); + fs.writeFile(file, data, 'utf8', writeErr => { + if (err) throw err; + console.log(file, 'replace success.'); + }); + }); +} + +/** + * 一些自定义操作 + * @param ctx + */ +module.exports = function (ctx) { + console.log('======================webServer pod re-add hook=========================='); + var rootDir = ctx.opts.projectRoot; + var project = path.join(rootDir, 'platforms/ios'); + if (fs.existsSync(project)) { + replaceContents(path.join(project, 'Podfile'), (content) => { + if (content.indexOf('GCDWebServer') < 0) { + content = content.replace("\nend", " pod 'GCDWebServer', :git => 'https://m.shuto.cn:8681/github/GCDWebServer.git'\nend") + } + return content; + }); + child_process.execSync("pod install", { cwd: project }); + } +};