如何使用 PhoneGap 拍摄应用内照片?

How to take in-app photo with PhoneGap?

我注意到某些应用程序(例如 Colorfy)允许您在应用程序内拍照,然后可以进一步编辑。有什么方法可以用 PhoneGap 应用程序做到这一点吗?

我见过的所有 PhoneGap 示例都让你访问 navigator.camera.getPicture,这很好,除了它需要你跳转到相机应用程序拍照,确认你刚拍的照片等。我真的很想能够跳过所有这些并直接在应用程序中拍照,但我不确定是否可能。

如果可以,请告诉我方法。谢谢

您必须创建一个自定义插件才能使其正常工作。

这将是流程:

• 从网页调用 PhoneGap 插件

• 插件将打开相机视图

• 点击图片后,它会以 base-64 编码

• 使用插件回调将此 base-64 编码图像发送到网页。

下面的代码可用于对图像进行编码:

UIImage* image= <Image received from the camera>;
NSString *base64EncodedImage = [Base64 encode:UIImageJPEGRepresentation(image, 0.5)];

编辑:

一些示例插件:

https://github.com/cordova-plugin-camera-preview/cordova-plugin-camera-preview

https://github.com/donaldp24/CanvasCameraPlugin