From dad1aae38e13e1419fef2112116659e87ea90854 Mon Sep 17 00:00:00 2001 From: Mathias Chouet <mathias.chouet@irstea.fr> Date: Fri, 27 Mar 2020 10:38:55 +0100 Subject: [PATCH] Fix #384 - Cordova: updates notifications --- config.xml | 17 +++- package-lock.json | 30 +++++- package.json | 9 +- src/assets/icons/android/ic_stat_notify.png | Bin 0 -> 14121 bytes src/assets/icons/android/icon.png | Bin 0 -> 16420 bytes src/assets/icons/android/icon_96.png | Bin 0 -> 3418 bytes src/assets/icons/ios/icon.png | Bin 0 -> 16420 bytes src/index.html | 97 ++++++++++++++++++++ 8 files changed, 148 insertions(+), 5 deletions(-) create mode 100644 src/assets/icons/android/ic_stat_notify.png create mode 100644 src/assets/icons/android/icon.png create mode 100644 src/assets/icons/android/icon_96.png create mode 100644 src/assets/icons/ios/icon.png diff --git a/config.xml b/config.xml index 7e9e138ab..bc6c498dc 100644 --- a/config.xml +++ b/config.xml @@ -8,7 +8,7 @@ UMR G-EAU </author> <content src="index.html" /> - <icon src="src/android-chrome-512x512.png" /> + <icon src="src/assets/icons/android/icon.png" /> <plugin name="cordova-plugin-whitelist" spec="1" /> <access origin="*" /> <allow-intent href="http://*/*" /> @@ -19,11 +19,22 @@ <allow-intent href="geo:*" /> <platform name="android"> <allow-intent href="market:*" /> - <icon src="src/android-chrome-512x512.png" qualifier="ldpi" /> + <icon src="src/assets/icons/android/icon.png" qualifier="ldpi" /> + <!-- 2 following files are for notifications big icon: res://icon --> + <resource-file src="src/assets/icons/android/icon_96.png" target="app/src/main/res/icon.png" /> + <resource-file src="src/assets/icons/android/icon_96.png" target="app/src/main/res/drawable/icon.png" /> + <!-- all following files are for notifications small icon: res://ic_stat_notify --> + <resource-file src="src/assets/icons/android/ic_stat_notify.png" target="app/src/main/res/ic_stat_notify.png" /> + <resource-file src="src/assets/icons/android/ic_stat_notify.png" target="app/src/main/res/drawable/ic_stat_notify.png" /> + <!-- <resource-file src="src/assets/icons/android/ic_stat_notify_24.png" target="app/src/main/res/drawable-mdpi/ic_stat_notify.png" /> + <resource-file src="src/assets/icons/android/ic_stat_notify_36.png" target="app/src/main/res/drawable-hdpi/ic_stat_notify.png" /> + <resource-file src="src/assets/icons/android/ic_stat_notify_48.png" target="app/src/main/res/drawable-xhdpi/ic_stat_notify.png" /> + <resource-file src="src/assets/icons/android/ic_stat_notify_72.png" target="app/src/main/res/drawable-xxhdpi/ic_stat_notify.png" /> + <resource-file src="src/assets/icons/android/ic_stat_notify_96.png" target="app/src/main/res/drawable-xxxhdpi/ic_stat_notify.png" /> --> </platform> <platform name="ios"> <allow-intent href="itms:*" /> <allow-intent href="itms-apps:*" /> - <icon src="src/android-chrome-512x512.png" qualifier="ldpi" /> + <icon src="src/assets/icons/ios/icon.png" qualifier="ldpi" /> </platform> </widget> diff --git a/package-lock.json b/package-lock.json index 08291333e..c303924da 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7334,6 +7334,21 @@ } } }, + "cordova-plugin-advanced-http": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/cordova-plugin-advanced-http/-/cordova-plugin-advanced-http-2.4.1.tgz", + "integrity": "sha512-6G8MTy/d02jE6n3Y9CVyCtD5hZGiBb+/dR2AIzhKN1RGGz38g1D2C8yE4MqHRvnmry6k/KHQWT1MsHNXrjouXQ==" + }, + "cordova-plugin-app-version": { + "version": "0.1.9", + "resolved": "https://registry.npmjs.org/cordova-plugin-app-version/-/cordova-plugin-app-version-0.1.9.tgz", + "integrity": "sha1-nbBgeGMzenEEiTAuX1CpBPFEm9s=" + }, + "cordova-plugin-badge": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/cordova-plugin-badge/-/cordova-plugin-badge-0.8.8.tgz", + "integrity": "sha512-RhIBtd5xhD/iLnxjt35jvOae28oNW/wtMZBOmQR3Rf0y4wirvA1bpAZEhBoFqL+rZGhsd6ddOdQXdex1T0DRyQ==" + }, "cordova-plugin-device": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/cordova-plugin-device/-/cordova-plugin-device-2.0.3.tgz", @@ -7349,6 +7364,11 @@ "resolved": "https://registry.npmjs.org/cordova-plugin-file-opener2/-/cordova-plugin-file-opener2-3.0.0.tgz", "integrity": "sha512-yQcJ5coOlfkDcTfIhFJEL2A7SWtLhy50y51Cb+EEkI7Y0lP74Ec2tsMtIOhe9i8wPSoSfnDcN77Hj6CSeIjogA==" }, + "cordova-plugin-local-notification": { + "version": "0.9.0-beta.2", + "resolved": "https://registry.npmjs.org/cordova-plugin-local-notification/-/cordova-plugin-local-notification-0.9.0-beta.2.tgz", + "integrity": "sha512-63n77K1pt8dnbWnNR8QWETi9Glezi1bvNHvHWmGNIOv0xCb0phZnm+Ku49BQ+omwe8Z5voMvrA4I03SYPpv38w==" + }, "cordova-plugin-whitelist": { "version": "1.3.4", "resolved": "https://registry.npmjs.org/cordova-plugin-whitelist/-/cordova-plugin-whitelist-1.3.4.tgz", @@ -9825,10 +9845,12 @@ }, "falafel": { "version": "2.1.0", - "resolved": "", + "resolved": "https://registry.npmjs.org/falafel/-/falafel-2.1.0.tgz", + "integrity": "sha1-lrsXdh2rqU9G0AFzizzt86Z/4Gw=", "dev": true, "requires": { "acorn": "^5.0.0", + "foreach": "^2.0.5", "isarray": "0.0.1", "object-keys": "^1.0.6" }, @@ -10270,6 +10292,12 @@ "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", "dev": true }, + "foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", + "dev": true + }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", diff --git a/package.json b/package.json index 4aba95fc5..03797063d 100644 --- a/package.json +++ b/package.json @@ -52,9 +52,13 @@ "angular2-hotkeys": "^2.2.0", "chartjs-plugin-zoom": "^0.7.5", "cordova-android": "^8.1.0", + "cordova-plugin-advanced-http": "^2.4.1", + "cordova-plugin-app-version": "^0.1.9", + "cordova-plugin-badge": "^0.8.8", "cordova-plugin-device": "^2.0.3", "cordova-plugin-file": "^6.0.2", "cordova-plugin-file-opener2": "^3.0.0", + "cordova-plugin-local-notification": "^0.9.0-beta.2", "cordova-plugin-whitelist": "^1.3.4", "core-js": "^3.6.4", "file-saver": "^2.0.2", @@ -114,7 +118,10 @@ "cordova-plugin-file-opener2": { "ANDROID_SUPPORT_V4_VERSION": "27.+" }, - "cordova-plugin-device": {} + "cordova-plugin-device": {}, + "cordova-plugin-local-notification": {}, + "cordova-plugin-app-version": {}, + "cordova-plugin-advanced-http": {} }, "platforms": [ "android" diff --git a/src/assets/icons/android/ic_stat_notify.png b/src/assets/icons/android/ic_stat_notify.png new file mode 100644 index 0000000000000000000000000000000000000000..9b300d9301ed2a18c10f97b850842e50e871c323 GIT binary patch literal 14121 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 Jil4vn|35JfsZ;;} literal 0 HcmV?d00001 diff --git a/src/assets/icons/android/icon.png b/src/assets/icons/android/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..67c7918826dd586f53aab4da6d7dbfe3ea96937a GIT binary patch literal 16420 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 literal 0 HcmV?d00001 diff --git a/src/assets/icons/android/icon_96.png b/src/assets/icons/android/icon_96.png new file mode 100644 index 0000000000000000000000000000000000000000..518dc99413c402fc7b20a45a44ea94c523ef1b4c GIT binary patch literal 3418 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 literal 0 HcmV?d00001 diff --git a/src/assets/icons/ios/icon.png b/src/assets/icons/ios/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..67c7918826dd586f53aab4da6d7dbfe3ea96937a GIT binary patch literal 16420 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 literal 0 HcmV?d00001 diff --git a/src/index.html b/src/index.html index c129854a2..55f7c5833 100644 --- a/src/index.html +++ b/src/index.html @@ -182,6 +182,103 @@ </script> </nghyd-app> + + <script type="text/javascript"> + /** + * Compares semver strings + * @see https://github.com/substack/semver-compare + */ + function semverCompare(a, b) { + var pa = a.split('.'); + var pb = b.split('.'); + for (var i = 0; i < 3; i++) { + var na = Number(pa[i]); + var nb = Number(pb[i]); + if (na > nb) return 1; + if (nb > na) return -1; + if (!isNaN(na) && isNaN(nb)) return 1; + if (isNaN(na) && !isNaN(nb)) return -1; + } + return 0; + } + /** + * Calls the Cassiopee update server to check for available updates; + * if so, displays a desktop notification which, if clicked, will + * trigger the download of the latest version installer for the + * current platform + * + * Web updates system prerequisites + * -------------------------------- + * + * ${URL} should point to an http-accessible directory containing: + * + * 1. a file named "releases.json" with a contents of the form + * { + * "latest": "4.5.0", + * "4.5.0": { + * "darwin": "cassiopee-setup-4.5.0.dmg", + * "linux": "fr.irstea.cassiopee_4.5.0_amd64.deb", + * "win32": "Cassiopée Setup 4.5.0.exe" + * }, + * "4.4.2": { + * "darwin": "cassiopee-setup-4.4.2.dmg", + * "linux": "fr.irstea.cassiopee_4.4.2_amd64.deb", + * "win32": "Cassiopée Setup 4.4.2.exe" + * } + * } + * + * 2. all platform-dependent installer files specified in "releases.json", + * at the root of the directory (ex: "fr.irstea.cassiopee_4.5.0_amd64.deb") + */ + const lookForUpdates = function() { + // Web update resources root directory + const URL = "https://cassiopee.g-eau.fr/cassiopee-releases/"; + + // detect current app version and platform + let version = "4.4.2"; // debug + cordova.getAppVersion.getVersionNumber((versionNumber) => { + version = versionNumber; + // fetch releases information + const options = { + method: 'get', + headers: { "Cache-Control": "no-cache" } + }; + cordova.plugin.http.sendRequest(URL + "releases.json", options, (response) => { + var data = JSON.parse(response.data); // This is the resultant JSON in useful form + // alert(`Youpi ! ${response.status} version=${version}, latest=${data.latest}, comp=${semverCompare(data.latest, version)}`); + // compare current version to latest version + if (data.latest && semverCompare(data.latest, version) == 1) { + // get download link for latest version, depending on platform + if (data[data.latest] && data[data.latest]["android"]) { + const latestVersionURL = URL + data[data.latest]["android"]; + // show notification + cordova.plugins.notification.local.schedule({ + title: `Cassiopee version ${data.latest} is available`, + text: "Download update installer", + foreground: true, + smallIcon: "res://ic_stat_notify", + icon: "res://icon" + }); + cordova.plugins.notification.local.on("click", () => { + // ask system to open URL with default browser + // @TODO find a way to get rid of "are you sure you want to leave this page ?" prompt + window.open(latestVersionURL, "_system"); + }); + } // else could not find link, silent fail + } // else you already have the latest version + }, (response) => { /* silent fail */}); + }); + }; + + // execute on Cordova (mobile app) only + if (window.cordova && cordova.platformId !== "browser") { + document.addEventListener("deviceready", function () { + // check updates at app startup + lookForUpdates(); + }); + } + </script> + </body> </html> \ No newline at end of file -- GitLab