From d36fb0ae14fae36cab632a558ff2fe29ad61f4f2 Mon Sep 17 00:00:00 2001 From: eisenhorn13 Date: Sun, 19 Jul 2020 01:50:42 +0300 Subject: [PATCH] Match Double type in string extras --- README.md | 1 + src/android/Assets.java | 4 ++++ src/android/startApp.java | 4 +++- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 3b411ce..772f731 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,7 @@ var sApp = startApp.set({} params [, {} extras]); | Param | Description | Default | Values | | --- | --- | --- | --- | | noParse | Disable find action and category in Intent package | false | Boolean | +| matchDoubleInSting | Match Double type in string extras (usefull for coordinates, prices etc.) | false | Boolean | | intent | [Intent(String action)](https://developer.android.com/reference/android/content/Intent.html#Intent%28java.lang.String%29) | null | String | | application | [Intent (Context packageContext)](https://developer.android.com/reference/android/content/Intent.html#Intent%28android.content.Context,%20java.lang.Class%3C?%3E%29) | null | String | | action | [Intent setAction](http://developer.android.com/reference/android/content/Intent.html#setAction(java.lang.String)) | null | String || diff --git a/src/android/Assets.java b/src/android/Assets.java index 685f9db..08e45e2 100644 --- a/src/android/Assets.java +++ b/src/android/Assets.java @@ -61,4 +61,8 @@ public class Assets extends CordovaPlugin { return field.getInt(null); } + + protected boolean matchDoubleInSting(String str) { + return (Pattern.matches("([0-9]*)\\.([0-9]*)", str)); + } } diff --git a/src/android/startApp.java b/src/android/startApp.java index 9c70225..32515da 100644 --- a/src/android/startApp.java +++ b/src/android/startApp.java @@ -250,7 +250,9 @@ public class startApp extends Assets { LaunchIntent.putExtra(parseExtraName(key), extra.getInt(key)); } - if(value instanceof String) { + if(params.has("matchDoubleInSting") && matchDoubleInSting(extra.getString(key))) { + LaunchIntent.putExtra(parseExtraName(key), extra.getDouble(key)); + } else if(value instanceof String) { LaunchIntent.putExtra(parseExtraName(key), extra.getString(key)); }