我正在尝试检索保存到Ionic Native
中的iPhone本地存储的图片的数据网址,该图片在真实设备上运行,而不是在模拟器上运行。
我正在使用File.readAsDataURL
我用X-code查看手机的本地存储空间,我可以在这个位置看到图像。
/ var / mobile / Containers / Data / Application / *我的APP ID * / Documents / www / assets / images / image.png
这是我的代码:
import { Component } from '@angular/core';
import { Platform } from 'ionic-angular';
import { File } from 'ionic-native';
declare var cordova: any;
@Component({
selector: 'get-picture',
templateUrl: 'get-picutre.html'
})
export class GetPictureComponent {
fs:string = cordova.file.documentsDirectory;
constructor(
public platform: Platform
) {}
ionViewDidEnter() {
this.platform.ready().then(() => {
console.log("FileSystem", this.fs); //logs FileSystem file:///var/mobile/Containers/Data/Application/* My APP ID */Documents/
File.readAsDataURL(this.fs, 'www/assets/images/image.png')
.then((imgData) => console.log('Image Data', imgData))
.catch((error) => console.log('error', error)); //Logs error {"code":1,"message":"NOT_FOUND_ERR"}
});
}
}
我用
尝试了基本相同的东西window.resolveLocalFileSystemURL(file:///var/mobile/Containers/Data/Application/* My APP ID */Documents/www/assets/images/image.png
我再次收到错误代码1。
我使用以下首选项更新了我的config.xml文件:
<preference name="iosExtraFilesystems" value="library,library-nosync,documents,documents-nosync,cache,bundle,root" />
<preference name="AndroidExtraFilesystems" value="files,files-external,documents,sdcard,cache,cache-external,root" />
有谁知道为什么这不起作用?
离子版 - 2.1.14
提前致谢!
答案 0 :(得分:2)
我对此问题进行了一些深入研究。
首先,我在根文档目录(cordova.file.documentsDirectory)
处执行了"NoCloud"
。我发现文件系统中唯一可以看到的文件目录中的文件夹是"/www/assets/images/"
。
即使Wikitude成功地将图像放在名为File.readAsDataUrl()
的此目录中的文件夹中,文件系统也无法查看,写入或读取它。
我设置wikitude将图像保存到“NoCloud”文件夹中,现在我可以成功使用<configuration>
<appSettings>
<add key="log4net.Internal.Debug" value="true"/>
</appSettings>
...
<system.diagnostics>
<trace autoflush="true">
<listeners>
<add
name="textWriterTraceListener"
type="System.Diagnostics.TextWriterTraceListener"
initializeData="C:\tmp\log4net.txt" />
</listeners>
</trace>
</system.diagnostics>
...
</configuration>
从“NoCloud”文件夹中获取base64图像数据。
希望这有助于某人。