Cordova ionic InApp浏览器sdktargetversion 23至26通过Intent.getData()在应用程序之外公开
我使用的是IONIC Cordova,当我将targetSdkVersion 23传递到26时出现问题 我的问题是: 我使用:Cordova ionic InApp浏览器sdktargetversion 23至26通过Intent.getData()在应用程序之外公开,cordova,ionic-framework,inappbrowser,android-fileprovider,Cordova,Ionic Framework,Inappbrowser,Android Fileprovider,我使用的是IONIC Cordova,当我将targetSdkVersion 23传递到26时出现问题 我的问题是: 我使用: import {InAppBrowser} from '@ionic-native/in-app-browser'; import {File} from '@ionic-native/file'; 在我的构造函数中,我有: fileService: File, private iab: InAppBrowser 在我下载一个文件并将其写入 this.fileSer
import {InAppBrowser} from '@ionic-native/in-app-browser';
import {File} from '@ionic-native/file';
在我的构造函数中,我有:
fileService: File, private iab: InAppBrowser
在我下载一个文件并将其写入
this.fileService.externalDataDirectory
在我这样做之后:
this.iab.create(this.fileService.externalDataDirectory + fileName, '_system', 'location=yes');
inappbrowser应用程序正在打开并显示文件
但当我转到targetSdkVersion 26时,我犯了以下错误:
D/InAppBrowser: target = _system
D/InAppBrowser: in system
D/InAppBrowser: InAppBrowser: Error loading url file:///storage/emulated/0/Android/data/my.app/files/file.pdf:android.os.FileUriExposedException:
file:///storage/emulated/0/Android/data/my.app/files/file.pdf exposed beyond app through Intent.getData()
有人能帮我解决这个问题吗?我看到我需要更改清单文件以添加一个提供者,但我不确定如何做,以及我需要在我的项目中添加哪个插件来转换它