我正在为 Windows Phone 7 开发一个应用程序,并且我正在为它使用一个 Phonegap 模板。一切看起来都很完美,但现在我无法在浏览器中打开 PDF 文件。我尝试了以下方法,但这不起作用,因为 PDF 的 url 超过了 2048 个字符的限制(它是一个数据 url)。此代码在触发 deviceReady 事件后运行。
var ref = window.open('http://www.google.com', '_blank', 'location=no');
ref.addEventListener('loadstart', function () { alert(event.url); });
现在,我正在尝试将 PDF 文件保存到存储中,然后尝试让浏览器打开它,但浏览器没有显示任何内容。我正在从 cordovalib 编辑 InAppBrowser.cs 代码,并在调用 browser.Navigate(loc); 之前添加了以下行
private void ShowInAppBrowser(string url)
{
IsolatedStorageFile store = IsolatedStorageFile.GetUserStoreForApplication();
FileStream stream = store.OpenFile("test.pdf", FileMode.Create);
BinaryWriter writer = new BinaryWriter(stream);
var myvar = Base64Decode("the big data url");
writer.Write(myvar);
writer.Close();
if (store.FileExists("test.pdf")) // Check if file exists
{
Uri loc = new Uri("test.pdf", UriKind.Relative);
...
}
}
此代码返回以下错误:日志:“错误回调中的错误:InAppBrowser1921408518 = TypeError:无法获取属性'url'的值:对象为空或未定义”
我不想使用 ComponentOne。
任何帮助将不胜感激!