From bbb5dab3e2690e59445ddcdbe0f4ce0b5f146489 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8C=83=E5=A4=A7=E5=BE=B7?= Date: Thu, 12 Oct 2023 23:28:54 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=84=E7=90=86=E6=95=B0=E7=BB=84=E4=B8=AD?= =?UTF-8?q?=E7=9A=84=E6=B5=AE=E7=82=B9=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/android/cordova/plugin/jcprinter/JcPrinter.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/android/cordova/plugin/jcprinter/JcPrinter.java b/src/android/cordova/plugin/jcprinter/JcPrinter.java index dd14954..427c6a5 100644 --- a/src/android/cordova/plugin/jcprinter/JcPrinter.java +++ b/src/android/cordova/plugin/jcprinter/JcPrinter.java @@ -110,9 +110,18 @@ public class JcPrinter extends CordovaPlugin { obj = methodJsonArgs.opt(i); } if(obj instanceof JSONArray){ - Object array = Array.newInstance(a.getComponentType(),((JSONArray) obj).length()); + a = a.getComponentType(); + Object array = Array.newInstance(a,((JSONArray) obj).length()); for(int j=0;j<((JSONArray) obj).length();j++){ - Array.set(array,j,((JSONArray) obj).opt(j)); + Object innerObj; + if(a == Float.class){ + innerObj = Float.parseFloat(((JSONArray) obj).optString(j)); + } else if(a == Integer.class){ + innerObj = ((JSONArray) obj).optInt(j); + } else{ + innerObj = ((JSONArray) obj).opt(j); + } + Array.set(array,j,innerObj); } methodArgs[i] = array; }else{