puchen created CB-6368:
--------------------------

             Summary: FileReader readAsBinaryString can't work in Android.
                 Key: CB-6368
                 URL: https://issues.apache.org/jira/browse/CB-6368
             Project: Apache Cordova
          Issue Type: Bug
          Components: Plugin File
    Affects Versions: 3.4.0
         Environment: Android 4.0.4
            Reporter: puchen


Run spec test, at spec.86 of 'Run File Tests', got error message

D/CordovaLog(7621): : Line 1 : Uncaught SyntaxError: Unexpected token ILLEGAL
E/Web Console(7621): Uncaught SyntaxError: Unexpected token ILLEGAL at :1

Only Android
1.Can't get the success callback. When cordova called 'public 
PluginResult(Status status, byte[] data, boolean binaryString) ' method, the 
bytes encoded to string, and assigned to 'encodedMessage'. Then cordova sent 
the pluginResult, and called pluginResult.getMessage() in encodeAsJsMessage 
method.So the problem appeared, the callback result is the String type but 
can't be JSONObject.quote. Then cordova called callbackFromNative method in 
cordova.js, the 'callback.success.apply' worked error, the Cordova Log showed 
'Uncaught SyntaxError: Unexpected token ILLEGAL'. The reason is 
'readAsBinaryString' returned a binary string but can't be quoted, caused the 
js layer syntax error.
2.If we can get the success callback, but the result is not expected in 
spec.86, because 'Base64.encodeToString' can't return the correct result in 
PluginResult.java.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to