离子3 |打开文件时出错,尝试调用虚拟方法档案开启器

时间:2019-11-12 21:45:39

标签: angular ionic-framework ionic3 ionic-native

离子版本:3.9.5

Angular 5

我正在尝试在Ionic应用程序中打开PDF文件并出现以下错误:

  

打开文件尝试调用虚拟方法时出错   'android.content.res.XmlResourceParser   android.content.pm.ProviderInfo.loadXmlMetaData(android.content.pm.PackageManager,   java.lang.String)”上的空对象引用

所以我遵循了另一篇文章的答案...

我将此代码添加到了config.xml:

<edit-config file="AndroidManifest.xml" mode="merge" target="/manifest/application" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools">
    <application android:networkSecurityConfig="@xml/network_security_config">
         <provider android:authorities="${applicationId}.opener.provider" android:exported="false" android:grantUriPermissions="true" android:name="io.github.pwlin.cordova.plugins.fileopener2.FileProvider">
             <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/opener_paths" tools:replace="android:authorities" />
          </provider>
    </application>
</edit-config>

我设法构建它,但没有用,尝试打开文件时仍然出现相同的错误。

这是我的代码:

writeFile(base64:any, contentType: any, fileName: any) { 

    var DataBlob = this.base64toBlob(base64, contentType);  

    var filePath = this.file.externalRootDirectory + "download";

    this.file.writeFile(filePath, fileName, DataBlob, contentType).then((success) => {  

        this.fileOpener.open(success.toURL(), this.contentType)
            .then(() => console.log('File is opened'))
            .catch(e => console.log('Error opening file', e));

    }).catch((err) => {  
        console.log("Error Occured While Writing File", err);
    });  
  }

0 个答案:

没有答案