2012-09-26 22 views
5

के साथ फोनगैप फ़ाइल एपीआई का परीक्षण करने में सक्षम है, मैं फोनगैप (अब 2.0 के संस्करण के साथ अपाचे कॉर्डोवा) के साथ एक एप्लिकेशन पर काम कर रहा हूं, और फ़ाइल लिखने के लिए फोनगैप फ़ाइल एपीआई का उपयोग कर रहा हूं।क्या यह रिपल एमुलेटर

फ़ाइल एपीआई का उपयोग मैं पर संदर्भित किया जा सकता है: http://docs.phonegap.com/en/2.0.0/cordova_file_file.md.html#File

मैं यहाँ से लहर एम्यूलेटर (0.9.9beta) का उपयोग करें: https://developer.blackberry.com/html5/download क्रोम में अपने आवेदन का परीक्षण करने के।

लेकिन मुझे लगता है कि रिपल फोनगैप फ़ाइल एपीआई को सही तरीके से संभाल नहीं सकता है।

उदाहरण के लिए:

मैं लगातार निर्देशिका में एक फाइल (रूट/foo.json) बनाना चाहते हैं

function onSuccess(fileSystem) { 
    fileSystem.root.getDirectory("dir", {create: true}, function(dirEntry){ 
     dirEntry.getFile("foo.json", {create: true}, function(fileEntry){  
      fileEntry.createWriter(function(writer){ 
       writer.write(JSON.stringify(fooData)); 
      }, onfail); 
     }, onfail); 
    }, onfail); 
} 
function onfail(error) 
{ 
    console.log(error.code); 
} 

// request the persistent file system 
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onSuccess, onfail); 

यह आईओएस सिम्युलेटर है, जो जैसा फ़ाइल बनाने के लिए किया था पर ठीक काम करता है सही जगह, लेकिन क्रोम में चल रहे रिपल एमुलेटर में, मुझे अभी एक ऑनफेल कॉलबैक मिला, और त्रुटि कोड 10 (FileError.QUOTA_EXCEEDED_ERR) मिला। Is it able to test phonegap application outside emulator?

लेकिन फिर भी कोई जवाब नहीं:

मैं भी इसी तरह प्रश्न यहाँ के साथ किसी पाया।

क्या रिपल एमुलेटर वर्तमान में फोनगैप एपीआई के लिए सही तरीके से काम नहीं करता है? या क्या मैंने कुछ सेटिंग याद की?

+0

मुझे लगता है कि मुझे जवाब मिल सकता है, रिपल वर्तमान में फोनगैप एपीआई के उप-सेट का समर्थन करता है और इसे पूरा करने के लिए काम चल रहा है: (http://rippledocs.tinyhippos.com/index.html#platforms/phoneGap – windam

उत्तर

3

समस्या मिली। मुझे PERSISTENT फाइल सिस्टम ऑब्जेक्ट का उपयोग करने से पहले कोटा देने की आवश्यकता है। https://developers.google.com/chrome/whitepapers/storage#persistent

// Request Quota (only for File System API) 

window.webkitStorageInfo.requestQuota(PERSISTENT, 1024*1024, function(grantedBytes) { 
window.webkitRequestFileSystem(PERSISTENT, grantedBytes, onInitFs, errorHandler); 
}, function(e) { 
console.log('Error', e); 
}); 

ऐसा लगता लहर-यूआई मेरे लिए यह करना नहीं था (मैं lib/लहर/fs.js पर स्रोत कोड की जाँच की)। यही कारण है कि मुझे हमेशा एक FileError.QUOTA_EXCEEDED_ERR मिलता है।

+0

दिलचस्प क्या क्रोम स्वचालित रूप से आपके लिए ऐसा करता है? यदि हां, तो मुझे उत्सुकता है कि रिपल उस ब्राउज़र से व्यवहार का वारिस नहीं करेगा जो वह अंदर चल रहा है। –

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^