J'ai un tableau imbriqué en Java, quelque chose comme ça :
String [] [] x;
Dans mon code, je le convertis en une chaîne JSON pour le transmettre à travers le pont @JavascriptInterface au javascript qui s'exécute dans une WebView à l'aide de ce code :
String ret = (new JSONArray(Arrays.asList(x))).toString();
Cela fonctionne bien sur les appareils récents, mais en testant un appareil plus ancien, je rencontre un comportement très étrange. Au lieu de créer une belle chaîne comme celle-ci :
"[ [ 1.234, 5, 7 ], [ 23.456, 7, 8 ] ]"
il crée une chaîne qui ressemble à ceci :
'["[Ljava.lang.String;@405ba988"]'
Pour autant que je sache, tous les objets que j'utilise (JSONArray, Arrays) et les fonctions membres correspondantes (toString, asList) existent depuis le niveau 1 de l'API.
Est-ce que je fais quelque chose de mal, ou est-ce qu'il y a quelque chose que je n'ai pas fait et que je dois faire pour m'adapter aux versions antérieures d'Android ?