jsonImport or JSONToArray

Matthias Rebbe matthias_livecode_150811 at m-r-d.de
Sun Oct 21 18:59:03 EDT 2018


Douglas,

did you try to select the inclusions manually in StandaloneBuilder settings?

I might be wrong, but i think i remember there was a problem with including that library when “searching for inclusions” was selected in the SB settings.

Regards,
Matthias


Matthias Rebbe

free tools for Livecoders:
https://instamaker.dermattes.de <https://instamaker.dermattes.de/>
https://winsignhelper.dermattes.de <https://winsignhelper.dermattes.de/>
> Am 22.10.2018 um 00:45 schrieb Douglas Ruisaard via use-livecode <use-livecode at lists.runrev.com <mailto:use-livecode at lists.runrev.com>>:
> 
> Has anyone recently tried to create a standalone app which includes either a jsonImport or JSONToArray call?
> 
> While my code works perfectly when run within the LC API, once a standalone is produced, it chokes  on either one of these calls.  I've reduced the code to its bare essentials.  A sample/simple JSON string I am trying is:
> 
> {
> "array": [
>   1,
>   2,
>   3
> ],
> "boolean": true,
> "null": null,
> "number": 123,
> "object": {
>   "a": "b",
>   "c": "d",
>   "e": "f"
> },
> "string": "Hello World"
> }
> 
> This string is embedded as a Custom Property within a button.  The button calls the following:
> 
> on mouseUp
> 
> // just empty everything to make sure things are in a known state
> 
>     put empty into temp
>     put empty into tArray
>     put empty into dispArray
>     put empty into tJson
> 
>     get the json of button "ThingSpeak_Fetch"
>     put it into testJson
> 
> // display the JSON before it is converted into an array
> 
>     answer "Simple JSON example:" & cr & testJson
> 
> // this line (either "version") will choke the standalone... it doesn't lock it up in the API
> 
>     put JsonToArray(testJson) into tArray
>     //put jsonImport(testJson) into tArray
> 
>     put displayArrayData(tArray,  "") into dispArray
>     answer dispArray
> 
> end mouseUp
> 
> function displayArrayData pArray, pIndent
>     # create the variable that loops through the keys in the array
>     local tKey
>     if pArray is an array then
>          # print information to indicate that we are entering a new nested level of the array
>          get "Array" & return
>          # print full stops that allow the reader to track the depth of an element
>          put "." after pIndent
>          # create the indentation
>          put tab after pIndent
>          repeat for each key tKey in pArray
>               # call displayArrayData with a nested array
>               put format("%s[%s] => %s\n", pIndent, tKey, displayArrayData (pArray[tKey], pIndent)) after it
>          end repeat
>          delete the last char of it
>          return it
>     else
>          return pArray
>     end if 
> end displayArrayData
> 
> The function call simply outputs the converted array.... and will do so when this code is run from within the API ... but create a Windows standalone and the array output is never generated.
> 
> I've tried this in Windows 7 Enterprise SP1, LC: 8.1.9, 8.1.10 and 9.0.1 ... also tried on MAC Sierra (10.12.6) and LC 8.1.9
> 
> All platforms behave identically as described above
> 
> Any help would be appreciated... meanwhile I'll be submitting this to LC directly
> 
> Douglas Ruisaard
> Trilogy Software
> (250) 573-3935
> 
> 
> 
> 
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com <mailto:use-livecode at lists.runrev.com>
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode




More information about the use-livecode mailing list