From 59199bd8aacb3285d97b7ae9c3153de553755ba4 Mon Sep 17 00:00:00 2001 From: Toma Nikolov Date: Wed, 12 Jun 2019 10:25:22 +0300 Subject: [PATCH 1/3] Add activity to the AndroidManifest. If the activity tag is not present in the AndroidManifest Cordova prepare will throw `UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'attrib' of null` --- src/lib/hooks/before-prepare.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/lib/hooks/before-prepare.js b/src/lib/hooks/before-prepare.js index c855ecd..cf26789 100644 --- a/src/lib/hooks/before-prepare.js +++ b/src/lib/hooks/before-prepare.js @@ -183,6 +183,7 @@ function prepareForAddingCordovaPlugins(platform, pluginPackageName, platformDir fs.writeFileSync(path.join(mainDirectory, ANDROID_MANIFEST_FILE_NAME), ` + @@ -233,6 +234,10 @@ function processCordovaProject(cordovaProjectDir, platform, pluginDataObjects, i case "java": fse.copySync(fullSrcPath, fullDestPath, { filter: (src, dest) => src.indexOf(idStringComponent) === -1 }); break; + case "AndroidManifest.xml": + const androidManifestContent = fse.readFileSync(fullSrcPath).toString(); + fse.writeFileSync(fullDestPath, androidManifestContent.replace('', '')); + break; default: fse.copySync(fullSrcPath, fullDestPath); } From cd767041d59d56db3317cc42220813106f8fa6a8 Mon Sep 17 00:00:00 2001 From: Toma Nikolov Date: Thu, 13 Jun 2019 14:31:17 +0300 Subject: [PATCH 2/3] Ensure that the support version is present in the project --- src/lib/hooks/before-prepare.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/lib/hooks/before-prepare.js b/src/lib/hooks/before-prepare.js index cf26789..988a0f8 100644 --- a/src/lib/hooks/before-prepare.js +++ b/src/lib/hooks/before-prepare.js @@ -352,6 +352,11 @@ ext.cdvMinSdkVersion = null ${pluginGradleExtensionsSection} dependencies { + def supportVer = "28.0.0" + if (project.hasProperty("supportVersion")) { + supportVer = supportVersion + } + implementation fileTree(dir: '${LIBS_DIRECTORY_NAME}', include: '*.jar') ${subProjectDependenciesSection} } @@ -389,8 +394,8 @@ function getStringBetween(str, start, end) { function getUnifiedAppCompatSupportContent(originalContent) { return originalContent - .replace(/(com.android.support:appcompat-v7:).*?(['"])/g, "$1$supportVersion$2") - .replace(/(com.android.support:support-v4:).*?(['"])/g, "$1$supportVersion$2"); + .replace(/(com.android.support:appcompat-v7:).*?(['"])/g, "$1$supportVer$2") + .replace(/(com.android.support:support-v4:).*?(['"])/g, "$1$supportVer$2"); } function getAndroidAppDir(platformsDirectory) { From b621b961b14f3b90fc549aff03d5b1ddc7ba1714 Mon Sep 17 00:00:00 2001 From: Toma Nikolov Date: Thu, 13 Jun 2019 14:32:20 +0300 Subject: [PATCH 3/3] Update demo project. --- demo/nsconfig.json | 3 +++ demo/package.json | 6 +++--- src/.npmrc | 2 ++ 3 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 demo/nsconfig.json create mode 100644 src/.npmrc diff --git a/demo/nsconfig.json b/demo/nsconfig.json new file mode 100644 index 0000000..6f4d74f --- /dev/null +++ b/demo/nsconfig.json @@ -0,0 +1,3 @@ +{ + "useLegacyWorkflow": true +} \ No newline at end of file diff --git a/demo/package.json b/demo/package.json index 56dd13f..7b58260 100644 --- a/demo/package.json +++ b/demo/package.json @@ -16,10 +16,10 @@ } }, "tns-ios": { - "version": "4.1.0" + "version": "5.4.0" }, "tns-android": { - "version": "4.1.1" + "version": "5.4.0" } }, "dependencies": { @@ -32,7 +32,7 @@ "nativescript-cordova-support": "file:../src", "nativescript-theme-core": "~1.0.4", "phonegap-plugin-barcodescanner": "https://github.com/mbektchiev/phonegap-plugin-barcodescanner/archive/7.1.2-fixed.tar.gz", - "tns-core-modules": "^4.1.0" + "tns-core-modules": "^5.4.1" }, "devDependencies": { "babel-traverse": "6.4.5", diff --git a/src/.npmrc b/src/.npmrc new file mode 100644 index 0000000..5e1f61a --- /dev/null +++ b/src/.npmrc @@ -0,0 +1,2 @@ +package-lock = false +bin-links = false