我正在使用针对Windows 8.1平台的基于cordova的混合应用程序。我正在使用Visual Studio 2013 Update 4 IDE进行调试和测试。我试图打开本地保存在设备上的图像说"C:image.jpg"
我尝试了多个选项,如:
窗口的使用。打开文件协议为window.open("file:///C:/image.jpg");
也尝试过fileopener2插件
cordova.plugins.fileOpener2.open ("C://image.jpg","应用程序/jpg",{错误:function(e) {console.log('错误状态:' + e.status + ' -错误消息:' + e.message ');},成功:function () {Console.log('文件成功打开');
}}
但是它们都不工作。
任何帮助都将非常感激。
谢谢,是一家。
虽然没有很好的文档说明,但cordova childBrowser不支持打开非html文件。这是由于Microsoft提供的底层子浏览器实现。
让用户选择一个外部应用程序来打开这个问题
var applicationData = Windows.Storage.ApplicationData.current;
var localFolder = applicationData.localFolder;
console.log(localFolder);
var imageFile = "image.png";
// Get the image file from the package's image directory
localFolder.getFileAsync(imageFile).then(
function (file) {
console.log("1");
// Set the show picker option
var options = new Windows.System.LauncherOptions();
options.displayApplicationPicker = true;
// Launch the retrieved file using the selected app
Windows.System.Launcher.launchFileAsync(file, options).then(
function (success) {
if (success) {
// File launched
console.log("2");
} else {
// File launch failed
console.log("3");
}
});
});