Skip to content

Commit 21d5ee9

Browse files
committed
fix: Disable Live Sync in production builds.
1 parent 08af8ae commit 21d5ee9

2 files changed

Lines changed: 31 additions & 2 deletions

File tree

src/command.js

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ const et = require('elementtree');
1212
const path = require('path');
1313
const npmCache = require('./npm-cache');
1414
const { showConfirmation } = require('./requirements');
15-
const { isDirectory } = require('./utils');
15+
const { isDirectory, readAndReplaceFileContent } = require('./utils');
1616

1717
const loggerLabel = 'wm-cordova-cli';
1818

@@ -142,6 +142,15 @@ async function updatePackageJson(dest, cordovaVersion, cordovaIosVersion, cordov
142142
fs.writeFileSync(projectDir + 'config.xml', data);
143143
}
144144

145+
async function setIsAppConnectedToPreviewToFalse(projectDir) {
146+
const writeFn = function(content) {
147+
return content.replace(/isAppConnectedToPreview\(\)/, 'isAppConnectedToPreview() && false');
148+
};
149+
const mobileScriptDir = `${projectDir}www/wmmobile/scripts`;
150+
await readAndReplaceFileContent(`${mobileScriptDir}/wm-mobileloader.js`, writeFn);
151+
await readAndReplaceFileContent(`${mobileScriptDir}/wm-mobileloader.min.js`, writeFn);
152+
}
153+
145154
async function getDefaultDestination(projectDir, platform) {
146155
let data = fs.readFileSync(projectDir + 'config.xml').toString();
147156
const config = et.parse(data);
@@ -278,6 +287,9 @@ module.exports = {
278287
label: loggerLabel,
279288
message: `Building at : ${config.src}`
280289
});
290+
if (args.buildType === 'release') {
291+
await setIsAppConnectedToPreviewToFalse(config.src);
292+
}
281293
await updatePackageJson(args.dest, args.cordovaVersion, args.cordovaIosVersion, args.cordovaAndroidVersion);
282294
const cordovaToUse = args.cordovaVersion ? config.src + 'node_modules/cordova/bin/cordova' : 'cordova';
283295
const cordovaVersion = args.cordovaVersion || (await exec('cordova', ['--version'])).join('').match(/[0-9][0-9\.]+/)[0];

src/utils.js

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,22 @@ const endWith = (str, suffix) => {
66
return str;
77
};
88

9+
async function readAndReplaceFileContent(path, writeFn) {
10+
if (!fs.existsSync(path)) {
11+
return;
12+
}
13+
const content = fs.readFileSync(path, 'utf-8');
14+
return Promise.resolve().then(() => {
15+
return writeFn && writeFn(content);
16+
}).then((modifiedContent) => {
17+
if (modifiedContent !== undefined && modifiedContent !== null) {
18+
fs.writeFileSync(path, modifiedContent);
19+
return modifiedContent;
20+
}
21+
return content;
22+
});
23+
}
24+
925
function isDirectory(path) {
1026
try {
1127
return fs.existsSync(path) && fs.lstatSync(path).isDirectory();
@@ -20,5 +36,6 @@ module.exports = {
2036
const f = files.find(f => f.match(nameregex));
2137
return endWith(path, '/') + f;
2238
},
23-
isDirectory: isDirectory
39+
isDirectory: isDirectory,
40+
readAndReplaceFileContent: readAndReplaceFileContent
2441
};

0 commit comments

Comments
 (0)