[ https://issues.apache.org/jira/browse/CB-6368?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13955600#comment-13955600 ]
Ian Clelland commented on CB-6368: ---------------------------------- What device are you seeing this on? Do you have a traceback to post? (or console log, more likely) I've just run mobilespec on a Samsung Nexus S running 4.0.4, and the file tests all pass. > 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)