Я использую PhoneGap 1.1.0 и iOS 5.0 и боролся с проблемой FileWriter.
Вот полный пример http://docs.phonegap.com/en/1.1.0/phonegap_file_file.md.html#FileWriter работает нормально.Создание FileWriter из onDeviceReady работает.
Однако, поскольку я хочу создать FileWriter в зависимости от имени файла по запросу, я сделал следующее:
(function ($){
document.addEventListener("deviceready", function ()
{
var FSroot;
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onInitFs, errorHandler);
function onInitFs(fs)
{
FSroot = fs.root;
//.......
}
//.......
function writeFile(myText1)
{
var filename = "namedProgramatically";
alert("CHECK1");
FSroot.getFile(filename, {create: true}, gotFileEntry, fail);
function gotFileEntry(fileEntry)
{
alert("CHECK2");
fileEntry.createWriter(gotFileWriter, fail);
}
function gotFileWriter(writer)
{
writer.onwrite = function(evt)
{alert("WRITE Done!!");};
writer.write(myText1);
}
function fail(error)
{
alert(error.code);
}
}
//...........
}); //========================
})(jQuery)
Этот кодне работает.Я вижу предупреждение "CHECK1", но не "CHECK2".Понятия не имею, что не так?Пожалуйста, дайте мне совет.Спасибо.
Кен
(правка) Возможно, проблема в области видимости JavaScript-JQuery, хотя я не уверен.Я заново разработал код модульного тестирования FileWrite на iOS5.0 + PhoneGap1.1.0 + JQuery1.7, и, наконец, он работает, как я и предполагал.Вот полный рабочий код (моя ссылка на Документы Google)
https://docs.google.com/document/pub?id=1B58qVbIldDQ6s_WbPiCwB9MDnXxqlidUBbwQxNP2geg