|
@@ -0,0 +1,34 @@
|
|
|
+import fs from "fs";
|
|
|
+import path from "path";
|
|
|
+
|
|
|
+export const updateVersion = () => {
|
|
|
+ // 读取 package.json 版本
|
|
|
+ const packageJson = JSON.parse(fs.readFileSync("./package.json", "utf8"));
|
|
|
+ const version = packageJson.version;
|
|
|
+
|
|
|
+ const rootDir = process.cwd();
|
|
|
+
|
|
|
+ // 更新 Android 版本
|
|
|
+ const androidBuildGradlePath = path.join(
|
|
|
+ rootDir,
|
|
|
+ "android/app/build.gradle"
|
|
|
+ );
|
|
|
+ let androidBuildGradle = fs.readFileSync(androidBuildGradlePath, "utf8");
|
|
|
+ androidBuildGradle = androidBuildGradle.replace(
|
|
|
+ /versionName\s+".*?"/,
|
|
|
+ `versionName "${version}"`
|
|
|
+ );
|
|
|
+ fs.writeFileSync(androidBuildGradlePath, androidBuildGradle);
|
|
|
+
|
|
|
+ // 更新 iOS 版本
|
|
|
+ const iosPlistPath = path.join(rootDir, "ios/App/App/Info.plist");
|
|
|
+ let iosPlist = fs.readFileSync(iosPlistPath, "utf8");
|
|
|
+ iosPlist = iosPlist.replace(
|
|
|
+ /<key>CFBundleShortVersionString<\/key>\s*<string>.*?<\/string>/,
|
|
|
+ `<key>CFBundleShortVersionString</key>\n\t<string>${version}</string>`
|
|
|
+ );
|
|
|
+ fs.writeFileSync(iosPlistPath, iosPlist);
|
|
|
+
|
|
|
+ console.log(`✅ 版本号已同步至: ${version}`);
|
|
|
+ return version
|
|
|
+};
|