我一直尝试使用IONIC中的“ cordova-plugin-file”插件在Android设备上写入(可移动)SD卡,但未成功。
该文档指定了
externalRootDirectory
Run Code Online (Sandbox Code Playgroud)
作为“ Android:外部存储(SD卡)的根目录”。
但是,当我写入该目录时:
this.file.resolveDirectoryUrl( this.file.externalRootDirectory)
.then( (data)=>{
result += "\n" + "resolveDirectoryUrl";
newBasePath = data.nativeURL;
this.file.createDir(newBasePath, newDirName, true)
.then( ()=>{
result += "\n" + "createDir";
this.file.createFile(newBasePath, newFilePath, true)
.then( ()=>{
result += "\n" + "createFile";
this.file.writeFile(newBasePath, newFilePath, this.thisRouteFile, {append:true})
.then( () => {
result += "\n" + "writeFile OK";
});
});
});
});
Run Code Online (Sandbox Code Playgroud)
文件始终会写入内部存储器或仿真文件,而不是可移动SD卡。
关于这个问题的讨论很多,有的引用
<preference name="AndroidPersistentFileLocation" value="Compatibility" />
Run Code Online (Sandbox Code Playgroud)
但我没有找到解决方法。
是否可以写入可移动SD卡?