1.首先需要配置存储的权限
a. 安装权限插件cordova plugin add cordova.plugins.permissions
b. 在config.xml里面,<platform name="android"></platform>
插入下面这段代码,配置权限
<config-file parent="/*" target="AndroidManifest.xml" xmlns:android="http://schemas.android.com/apk/res/android">
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
</config-file>
2.判断是否打开权限,没有则打开
var permissions = cordova.plugins.permissions;
permissions.checkPermission(permissions.WRITE_EXTERNAL_STORAGE, function(s) {
if (!s.hasPermission) {
permissions.requestPermission(permissions.WRITE_EXTERNAL_STORAGE, function(s) {
if (s.hasPermission) {
//调用保存图片的方法
}else {
console.log('申请失败');
}
}, function(error) {
console.log(error);
});
} else {
//调用保存图片的方法
}
}, function(error) {
console.log(error);
});
3.保存图片的方法
<canvas id="myCnavas"></canvas>
var canvas,content;
var img = new Image();
img.src = "图片的src";
canvas = document.getElementById('myCanvas');
img.onload = function () {
canvas.width = img.width;
canvas.height = img.height;
context = canvas.getContext('2d');
context.drawImage(img, 0, 0);
try {
window.canvas2ImagePlugin.saveImageDataToLibrary(
function(msg){
console.log('保存成功');
},
function(err){
console.log('保存失败');
},
document.getElementById('myCanvas')
);
}
catch (e) {
console.log(e.message);
}
}
这样就可以啦