[
https://issues.apache.org/jira/browse/CB-1533?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13465821#comment-13465821
]
Becky Gibson commented on CB-1533:
----------------------------------
If you are using iOS 6 with Cordova 2.0 (which is stated in your google group
posting) You need this fix:
https://git-wip-us.apache.org/repos/asf?p=incubator-cordova-js.git;a=blobdiff;f=lib/ios/platform.js;h=9667183fe2455b8bdb93186f70dd68f6916d13b0;hp=8a7042823624f6fa6768734608feb8cd2742892e;hb=ae6959dc320e3a82b5d721fe04429d307cbabcb0;hpb=821ba6fa1afd46f1594c109421db4cc9ec88970c
> cannot read file
> ----------------
>
> Key: CB-1533
> URL: https://issues.apache.org/jira/browse/CB-1533
> Project: Apache Cordova
> Issue Type: Bug
> Components: iOS
> Affects Versions: 2.0.0
> Environment: tested on ios6 in emulator
> Reporter: alexander casassovici
> Assignee: Shazron Abdullah
>
> /////
> //summary
> ////
> using documentation, i'm trying to write than read a file
> writing works
> file is actually created on fs
> when writing, everything goes fine until FileReader.readAsText which does
> nothing at all...
> /////
> //example code
> ////
> <!DOCTYPE html>
> <html>
> <head>
> <title>FileReader Example</title>
> <script type="text/javascript" charset="utf-8"
> src="cordova-2.0.0.js"></script>
> <script type="text/javascript" charset="utf-8">
> // Wait for Cordova to load
> //
> document.addEventListener("deviceready", onDeviceReady, false);
> // Cordova is ready
> //
> function onDeviceReady() {
> window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS_w,
> fail);
> }
> function gotFS(fileSystem) {
> fileSystem.root.getFile("readme.txt", null, gotFileEntry, fail);
> }
> function gotFileEntry(fileEntry) {
> fileEntry.file(gotFile, fail);
> }
> function gotFile(file){
> readDataUrl(file);
> readAsText(file);
> }
> function readDataUrl(file) {
> var reader = new FileReader();
> reader.onloadend = function(evt) {
> console.log("Read as data URL");
> console.log(evt.target.result);
> };
> reader.readAsDataURL(file);
> }
> function readAsText(file) {
> var reader = new FileReader();
> reader.onloadend = function(evt) {
> console.log("Read as text");
> console.log(evt.target.result);
> };
> reader.readAsText(file);
> }
> function fail(error) {
> console.log(error.code);
> }
> function gotFS_w(fileSystem) {
> fileSystem.root.getFile("readme.txt", {create: true, exclusive:
> false}, gotFileEntry_w, fail);
> }
> function gotFileEntry_w(fileEntry) {
> fileEntry.createWriter(gotFileWriter, fail);
> }
> function gotFileWriter(writer) {
> writer.onwriteend = function(evt) {
> console.log("contents of file now 'some sample text'");
> window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS,
> fail);
> };
> writer.write("some sample text");
> }
> function fail(error) {
> console.log(error.code);
> }
> </script>
> </head>
> <body>
> <h1>Example</h1>
> <p>Read File</p>
> </body>
> </html>
> ///////
> /// log output
> //////
> 2012-09-24 20:16:31.731 Diveboard[39848:c07] Multi-tasking -> Device: YES,
> App: YES
> 2012-09-24 20:16:31.745 Diveboard[39848:c07] Application windows are expected
> to have a root view controller at the end of application launch
> 2012-09-24 20:16:31.831 Diveboard[39848:c07] PluginResult:toJSONString -
> {"status":1,"message":"wifi","keepCallback":false}
> 2012-09-24 20:16:31.832 Diveboard[39848:c07] PluginResult
> toSuccessCallbackString:
> cordova.callbackSuccess('NetworkStatus0',{"status":1,"message":"wifi","keepCallback":false});
> 2012-09-24 20:16:31.833 Diveboard[39848:c07] PluginResult:toJSONString -
> {"status":1,"message":{"name":"iPhone
> Simulator","uuid":"E7446481-3D85-48D5-97F4-E80B6FE034EC","platform":"iPhone
> Simulator","version":"6.0","cordova":"2.0.0"},"keepCallback":false}
> 2012-09-24 20:16:31.833 Diveboard[39848:c07] PluginResult
> toSuccessCallbackString:
> cordova.callbackSuccess('Device1',{"status":1,"message":{"name":"iPhone
> Simulator","uuid":"E7446481-3D85-48D5-97F4-E80B6FE034EC","platform":"iPhone
> Simulator","version":"6.0","cordova":"2.0.0"},"keepCallback":false});
> 2012-09-24 20:16:31.840 Diveboard[39848:c07] PluginResult:toJSONString -
> {"status":1,"message":{"name":"persistent","root":{"name":"Documents","isFile":false,"isDirectory":true,"fullPath":"/Users/alex/Library/Application
> Support/iPhone
> Simulator/6.0/Applications/980AABAA-FBAD-449A-9D9D-B32EB668D59E/Documents"}},"keepCallback":false}
> 2012-09-24 20:16:31.841 Diveboard[39848:c07] PluginResult
> toSuccessCallbackString:
> cordova.callbackSuccess('File2',{"status":1,"message":{"name":"persistent","root":{"name":"Documents","isFile":false,"isDirectory":true,"fullPath":"/Users/alex/Library/Application
> Support/iPhone
> Simulator/6.0/Applications/980AABAA-FBAD-449A-9D9D-B32EB668D59E/Documents"}},"keepCallback":false});
> 2012-09-24 20:16:31.842 Diveboard[39848:c07] PluginResult:toJSONString -
> {"status":1,"message":{"name":"readme.txt","isFile":true,"isDirectory":false,"fullPath":"/Users/alex/Library/Application
> Support/iPhone
> Simulator/6.0/Applications/980AABAA-FBAD-449A-9D9D-B32EB668D59E/Documents/readme.txt"},"keepCallback":false}
> 2012-09-24 20:16:31.842 Diveboard[39848:c07] PluginResult
> toSuccessCallbackString:
> cordova.callbackSuccess('File3',{"status":1,"message":{"name":"readme.txt","isFile":true,"isDirectory":false,"fullPath":"/Users/alex/Library/Application
> Support/iPhone
> Simulator/6.0/Applications/980AABAA-FBAD-449A-9D9D-B32EB668D59E/Documents/readme.txt"},"keepCallback":false});
> 2012-09-24 20:16:31.843 Diveboard[39848:c07] PluginResult:toJSONString -
> {"status":1,"message":{"type":"","name":"readme.txt","size":16,"fullPath":"/Users/alex/Library/Application
> Support/iPhone
> Simulator/6.0/Applications/980AABAA-FBAD-449A-9D9D-B32EB668D59E/Documents/readme.txt","lastModifiedDate":1348510579000},"keepCallback":false}
> 2012-09-24 20:16:31.843 Diveboard[39848:c07] PluginResult
> toSuccessCallbackString:
> cordova.callbackSuccess('File4',{"status":1,"message":{"type":"","name":"readme.txt","size":16,"fullPath":"/Users/alex/Library/Application
> Support/iPhone
> Simulator/6.0/Applications/980AABAA-FBAD-449A-9D9D-B32EB668D59E/Documents/readme.txt","lastModifiedDate":1348510579000},"keepCallback":false});
> 2012-09-24 20:16:31.844 Diveboard[39848:c07] PluginResult:toJSONString -
> {"status":1,"message":16,"keepCallback":false}
> 2012-09-24 20:16:31.844 Diveboard[39848:c07] PluginResult
> toSuccessCallbackString:
> cordova.callbackSuccess('File5',{"status":1,"message":16,"keepCallback":false});
> 2012-09-24 20:16:31.845 Diveboard[39848:c07] [INFO] contents of file now
> 'some sample text'
> 2012-09-24 20:16:31.846 Diveboard[39848:c07] PluginResult:toJSONString -
> {"status":1,"message":{"name":"persistent","root":{"name":"Documents","isFile":false,"isDirectory":true,"fullPath":"/Users/alex/Library/Application
> Support/iPhone
> Simulator/6.0/Applications/980AABAA-FBAD-449A-9D9D-B32EB668D59E/Documents"}},"keepCallback":false}
> 2012-09-24 20:16:31.846 Diveboard[39848:c07] PluginResult
> toSuccessCallbackString:
> cordova.callbackSuccess('File6',{"status":1,"message":{"name":"persistent","root":{"name":"Documents","isFile":false,"isDirectory":true,"fullPath":"/Users/alex/Library/Application
> Support/iPhone
> Simulator/6.0/Applications/980AABAA-FBAD-449A-9D9D-B32EB668D59E/Documents"}},"keepCallback":false});
> 2012-09-24 20:16:31.847 Diveboard[39848:c07] PluginResult:toJSONString -
> {"status":1,"message":{"name":"readme.txt","isFile":true,"isDirectory":false,"fullPath":"/Users/alex/Library/Application
> Support/iPhone
> Simulator/6.0/Applications/980AABAA-FBAD-449A-9D9D-B32EB668D59E/Documents/readme.txt"},"keepCallback":false}
> 2012-09-24 20:16:31.847 Diveboard[39848:c07] PluginResult
> toSuccessCallbackString:
> cordova.callbackSuccess('File7',{"status":1,"message":{"name":"readme.txt","isFile":true,"isDirectory":false,"fullPath":"/Users/alex/Library/Application
> Support/iPhone
> Simulator/6.0/Applications/980AABAA-FBAD-449A-9D9D-B32EB668D59E/Documents/readme.txt"},"keepCallback":false});
> 2012-09-24 20:16:31.848 Diveboard[39848:c07] PluginResult:toJSONString -
> {"status":1,"message":{"type":"","name":"readme.txt","size":16,"fullPath":"/Users/alex/Library/Application
> Support/iPhone
> Simulator/6.0/Applications/980AABAA-FBAD-449A-9D9D-B32EB668D59E/Documents/readme.txt","lastModifiedDate":1348510591000},"keepCallback":false}
> 2012-09-24 20:16:31.848 Diveboard[39848:c07] PluginResult
> toSuccessCallbackString:
> cordova.callbackSuccess('File8',{"status":1,"message":{"type":"","name":"readme.txt","size":16,"fullPath":"/Users/alex/Library/Application
> Support/iPhone
> Simulator/6.0/Applications/980AABAA-FBAD-449A-9D9D-B32EB668D59E/Documents/readme.txt","lastModifiedDate":1348510591000},"keepCallback":false});
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira