android - 如何使用phonegap-2.9.0相机并存储在Android设备中?

标签 android cordova camera storage

注意:我很愚蠢,对于很多事情,我尝试将图片保存到我的本地存储中,但我继续检查我的画廊(总是认为画廊会扫描所有图像)但不知何故它不在我的图库所以我一直认为图像没有保存

我正在使用phonegap 2.9.0 并使用相机API。 phonegap 文档甚至提供了一个完整的 html 示例,您只需将代码复制并粘贴到 www 文件夹中,然后部署,相机就可以完美工作,只是它不会将拍摄的图像保存到本地/sd 存储中。我试图弄清楚如何并且已经尝试了一段时间有人可以帮助我吗?

在发布这个问题之前我做了一些研究。 我确实找到了一个帖子:

Save image in local storage phonegap

但我尝试了那里的代码,但不知何故它对我不起作用。 我还搜索了一些网站和帖子,其中很多只是提到添加 saveToPhotoAlbum: true ,这是在phonegap文档中提到的,我尝试过,但根本不起作用..

我查看了phonegap 2.9.0文档,并看到了权限,所以我相信我也需要添加这些代码,所以我这样做了......

在 config.xml 中我添加了

<plugin name="Camera" value="org.apache.cordova.CameraLauncher" />

在 AndroidManifest 中我添加了

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

在index.html 中我刚刚使用了phonegap 的完整示例。 2.9.0 提供。 我认为必须将其粘贴到此处,但我相信这是我需要在代码中添加一些内容的地方..

// A button will call this function
//
function capturePhoto() {
  // Take picture using device camera and retrieve image as base64-encoded string
  navigator.camera.getPicture(onPhotoDataSuccess, onFail,{ quality: 50,
    destinationType: destinationType.DATA_URL, saveToPhotoAlbum: true });
}

我想通过添加 saveToPhotoAlbum: true会起作用,但似乎不起作用。

有人可以帮我吗?文档看起来很简单,但当无法找出问题所在时会感到沮丧(:

最佳答案

改变这个

destinationType: Camera.DestinationType.DATA_URL

destinationType: Camera.DestinationType.FILE_URI

它会返回你的imageuri,要获取确切的位置,你可以使用phonegap中的文件系统API

window.resolveLocalFileSystemURI(imageURI, resolveOnSuccess, fsFail);
function resolveOnSuccess(entry) {
var fileuri = entry.toURL();
//console.log(fileuri);
}

关于android - 如何使用phonegap-2.9.0相机并存储在Android设备中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20066036/

相关文章:

java - 在 Ubuntu Linux 中查找 C/C++ 源代码的最佳工具是什么?

ios - SSL 握手仅在 IOS 上失败

android - 如何使用 camera2 API 同时为照片和视频设置相机预览?

javascript - 离线时提示客户请求的策略

Android camara 参数 getZoomRatio() 值不符合预期

Cordova相机插件多种源类型

android - 如何以及在何处在我的 Android 应用程序中添加自定义 xml?

fragment 中的 Android ListView

android - 在没有用户交互的情况下从系统应用程序实用地卸载应用程序android 8.1

Cordova 4.0 config.xml 中的 Android 权限