Skip to content
This repository was archived by the owner on May 20, 2025. It is now read-only.

Commit 3ab1fa0

Browse files
committed
feedback
1 parent 1c74ab3 commit 3ab1fa0

File tree

4 files changed

+15
-16
lines changed

4 files changed

+15
-16
lines changed

CodePush.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ async function checkForUpdate(deploymentKey = null) {
7070
* because we want to avoid having to install diff updates against the binary's
7171
* version, which we can't do yet on Android.
7272
*/
73-
if (!update || update.updateAppVersion || localPackage && (update.packageHash === localPackage.packageHash) || config.packageHash === update.packageHash) {
73+
if (!update || update.updateAppVersion || localPackage && (update.packageHash === localPackage.packageHash) || !localPackage && config.packageHash === update.packageHash) {
7474
if (update && update.updateAppVersion) {
7575
log("An update is available but it is targeting a newer binary version than you are currently running.");
7676
}

android/codepush.gradle

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,20 +21,19 @@ gradle.projectsEvaluated {
2121

2222
productFlavors.each { productFlavorName ->
2323
buildTypes.each { buildTypeName ->
24-
25-
def sourceName = "${buildTypeName}"
26-
def targetName = "${sourceName.capitalize()}"
27-
if (productFlavorName) {
28-
sourceName = "${productFlavorName}${targetName}"
29-
}
24+
def targetName = "${productFlavorName.capitalize()}${buildTypeName.capitalize()}"
25+
def targetPath = productFlavorName ?
26+
"${productFlavorName}/${buildTypeName}" :
27+
"${buildTypeName}"
3028

3129
def jsBundleDirConfigName = "jsBundleDir${targetName}"
30+
def assetsDir = "$buildDir/intermediates/assets/${targetPath}"
3231
def jsBundleDir = elvisFile(config."$jsBundleDirConfigName") ?:
33-
file("$buildDir/intermediates/assets/${sourceName}")
32+
file(assetsDir)
3433

3534
def resourcesDirConfigName = "jsBundleDir${targetName}"
3635
def resourcesDir = elvisFile(config."${resourcesDirConfigName}") ?:
37-
file("$buildDir/intermediates/res/merged/${sourceName}")
36+
file("$buildDir/intermediates/res/merged/${targetPath}")
3837
def jsBundleFile = file("$jsBundleDir/$bundleAssetName")
3938

4039
// Make this task run right before the bundle task
@@ -52,7 +51,7 @@ gradle.projectsEvaluated {
5251
def generateBundledResourcesHash = tasks.create(
5352
name: "generateBundledResourcesHash${targetName}",
5453
type: Exec) {
55-
commandLine "node", "../../node_modules/react-native-code-push/scripts/generateBundledResourcesHash.js", resourcesDir, "$jsBundleDir/$bundleAssetName", "$buildDir/intermediates/assets/${sourceName}"
54+
commandLine "node", "../../node_modules/react-native-code-push/scripts/generateBundledResourcesHash.js", resourcesDir, "$jsBundleDir/$bundleAssetName", assetsDir
5655
}
5756

5857
generateBundledResourcesHash.dependsOn("bundle${targetName}JsAndAssets")

scripts/generateBundledResourcesHash.js

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ var getFilesInFolder = require("./getFilesInFolder");
2020
var CODE_PUSH_FOLDER_PREFIX = "CodePush";
2121
var CODE_PUSH_HASH_FILE_NAME = "CodePushHash.json";
2222
var HASH_ALGORITHM = "sha256";
23-
var JS_BUNDLE_FILE_NAME = "main.jsbundle";
2423
var TEMP_FILE_PATH = path.join(require("os").tmpdir(), "CodePushResourcesMap.json");
2524

2625
var resourcesDir = process.argv[2];
@@ -61,7 +60,7 @@ if (bundleGeneratedAssetFiles.length) {
6160
hashStream.end();
6261
var buffer = hashStream.read();
6362
var fileHash = buffer.toString("hex");
64-
manifest.push(CODE_PUSH_FOLDER_PREFIX + assetFile + ":" + fileHash);
63+
manifest.push(CODE_PUSH_FOLDER_PREFIX + assetFile.replace(/\\/g, "/") + ":" + fileHash);
6564

6665
if (manifest.length === bundleGeneratedAssetFiles.length) {
6766
// Generate hash for JS bundle
@@ -75,7 +74,7 @@ if (bundleGeneratedAssetFiles.length) {
7574
hashStream.end();
7675
var buffer = hashStream.read();
7776
var fileHash = buffer.toString("hex");
78-
manifest.push(CODE_PUSH_FOLDER_PREFIX + "/" + JS_BUNDLE_FILE_NAME + ":" + fileHash);
77+
manifest.push(CODE_PUSH_FOLDER_PREFIX + "/" + path.basename(jsBundleFilePath) + ":" + fileHash);
7978
manifest = manifest.sort();
8079

8180
var finalHash = crypto.createHash(HASH_ALGORITHM)

scripts/getFilesInFolder.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,16 @@
11
var fs = require("fs");
2+
var path = require("path");
23

34
// Utility function that collects the stats of every file in a directory
45
// as well as in its subdirectories.
56
function getFilesInFolder(folderName, fileList) {
67
var folderFiles = fs.readdirSync(folderName);
78
folderFiles.forEach(function(file) {
8-
var fileStats = fs.statSync(folderName + "/" + file);
9+
var fileStats = fs.statSync(path.join(folderName, file));
910
if (fileStats.isDirectory()) {
10-
getFilesInFolder(folderName + "/" + file, fileList);
11+
getFilesInFolder(path.join(folderName, file), fileList);
1112
} else {
12-
fileStats.path = folderName + "/" + file;
13+
fileStats.path = path.join(folderName, file);
1314
fileList.push(fileStats);
1415
}
1516
});

0 commit comments

Comments
 (0)