带有InAppBrowser插件和文件打开器插件的Cordova文件插件

时间:2016-07-08 21:26:56

标签: javascript android cordova ionic-framework

我有一个使用File Plugin存储的PDF文件,但我似乎无法使用InAppBrowser或File Opener Plugin打开它。我使用Visual Studio Emulator KitKat for Android。

这里是InAppBrowser插件的代码。 fileEntry.toURL()方法返回" file:///data/data/com.ionicframework.ionicblankapp/cache/Sample.pdf"。

但是,InAppBrowser始终显示空白页。

window.resolveLocalFileSystemURL(cordova.file.externalDataDirectory, function (dirEntry) {
      dirEntry.getFile(fileName, { create: true, exclusive: false },
           function (fileEntry) {
                fileEntry.createWriter(
                     function (fileWriter) {
                         fileWriter.onwriteend = function (e) {
                             var ref = cordova.InAppBrowser.open(fileEntry.toURL(), '_blank');
                          };
                          fileWriter.write(fileBlob);
                });
       });
 });

对于File Opener插件,我得到" 9"的错误状态。和这条消息

  

未找到活动:找不到处理Intent的活动{act = android.intent.action.VIEW dat = file:///data/data/com.ionicframework.ionicblankapp/cache/Sample.pdf typ = application / pdf flg = 0x4000000}"

以下是File Opener插件的代码。

    window.resolveLocalFileSystemURL(cordova.file.externalDataDirectory, function (dirEntry) {
                            dirEntry.getFile(fileName, { create: true, exclusive: false },
                                function (fileEntry) {
                                    fileEntry.createWriter(
                                        function (fileWriter) {
                                            fileWriter.onwriteend = function (e) {    
cordova.plugins.fileOpener2.open(fileEntry.toURL(), 'application/pdf', {
                                                success: function () {
                                                    //success
                                                },
                                                error: function (e) {
                                                    alert(e);
                                            });
                                            };
                                            fileWriter.write(fileBlob);
                                        });
                                });
                        });

目前,我不确定我错过了什么。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

尝试更改此行

 var ref = cordova.InAppBrowser.open(fileEntry.toURL(), '_blank');

 var ref = cordova.InAppBrowser.open(fileEntry.toURL(), '_system');