我想制作一款相机应用。一开始我创建了一个示例应用程序。我已经看了很多github而且我找不到一个好的解决方案,但我想要一个类似于Snapchat的相机预览相机。任何人都可以给我一个解决方案我该如何开始?
在我的示例应用程序中,我可以拍照,但图片中的预览效果不佳。图片应该在我的设备中全屏显示,如Snapchat。
修改 我只想学习如何正确地做到这一点。但是我查看了评论中描述的库。我的应用程序基于android-vision library中描述的内容。
答案 0 :(得分:1)
我必须为cordova制作一个自定义相机插头,这对我帮助很大: https://github.com/performanceactive/phonegap-custom-camera-plugin/tree/master/platforms/android/src/com/performanceactive/plugins/camera
检查CustomCameraActivity和CustomCameraPreview, 它们向您展示如何自定义相机,控制预览大小,宽高比和表面变化。
在CustomCameraPreview.java中检查此功能:
private Size optimimalPreviewSize(int targetWidth, int targetHeight) {
List<Size> sizes = camera.getParameters().getSupportedPreviewSizes();
float targetAspectRatio = (float) targetWidth / targetHeight;
List<Size> sizesWithMatchingAspectRatios = filterByAspectRatio(targetAspectRatio, sizes);
if (sizesWithMatchingAspectRatios.size() > 0) {
return optimalSizeForHeight(sizesWithMatchingAspectRatios, targetHeight);
}
return optimalSizeForHeight(sizes, targetHeight);
}
希望这有助于你