我已经用Java编写了一个程序,它接收一个图像文件并操纵图像。现在我试图访问摄像头,以便拍摄照片并将其提供给图像处理程序,但是我失去了如何做到这一点。我已经阅读了关于相机课程的信息以及如何请求权限,但我不知道如何实际拍摄照片。如果有人对我应该从哪里开始有任何提示,或者如果他们知道一个很好的教程,我会非常感激。谢谢!如何在Android手机上使用相机?
10
A
回答
7
谷歌是你最好的朋友,这里有一些教程:
How-To Program The Google Android Camera To Take Pictures
Take Picture from Camera Emulator
首先编辑你的AndroidManifest.xml中,添加摄像头权限:
<uses-permission android:name=”android.permission.CAMERA”/>
相机服务已被打开和关闭:
Camera camera = Camera.open();
//Do things with the camera
camera.release();
您可以设置相机设置,如:
Camera.Parameters parameters = camera.getParameters();
parameters.setPictureFormat(PixelFormat.JPEG);
camera.setParameters(parameters);
要拍照:
private void takePicture() {
camera.takePicture(shutterCallback, rawCallback, jpegCallback);
}
ShutterCallback shutterCallback = new ShutterCallback() {
public void onShutter() {
// TODO Do something when the shutter closes.
}
};
PictureCallback rawCallback = new PictureCallback() {
public void onPictureTaken(byte[] _data, Camera _camera) {
// TODO Do something with the image RAW data.
}
};
PictureCallback jpegCallback = new PictureCallback() {
public void onPictureTaken(byte[] _data, Camera _camera) {
// TODO Do something with the image JPEG data.
}
};
待办事项不要忘记将相机布局添加到您的主布局xml中。
0
最重要的方法是:在拍摄照片时
Camera.PictureCallback mPictureCallback = new Camera.PictureCallback() {
public void onPictureTaken(byte[] imageData, Camera c) {
}
};
该方法被调用。 下面是有关这个主题的一个很好的教程:http://www.brighthub.com/mobile/google-android/articles/43414.aspx
嗯......也许你需要它:
Camera mCamera;
...
public void onClick(View arg0) {
mCamera.takePicture(null, mPictureCallback, mPictureCallback);
}
6
有很多种方法,使你可以做到这一点.... 其中一个更好的方式,我认为是简单和简单的是在按钮点击你可以打电话意图打开你的内置相机视图...这里是示例代码...
public class CameraDemo extends Activity {
Button ButtonClick;
int CAMERA_PIC_REQUEST = 2;
int TAKE_PICTURE=0;
Camera camera;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ButtonClick =(Button) findViewById(R.id.Camera);
ButtonClick.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View view)
{
Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, CAMERA_PIC_REQUEST);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == CAMERA_PIC_REQUEST)
{
Bitmap thumbnail = (Bitmap) data.getExtras().get("data");
ImageView image =(ImageView) findViewById(R.id.PhotoCaptured);
image.setImageBitmap(thumbnail);
}
else
{
Toast.makeText(demo.this, "Picture NOt taken", Toast.LENGTH_LONG);
}
}
}
.............................................. ................
经过它,如果你有任何问题随时问....
拉克什
2
有两种方法来取照片的Android应用程序
1)使用意向
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE); // create a file to save the image
intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); // set the image file name
// start the image capture Intent
startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);
2)创建自定义的相机活动。为此你需要以下步骤
* Detect and Access Camera
* Create a Preview Class
* Build a Preview Layout
* Capture and Save Files
* Release the Camera
您可以参考以下链接:
http://developer.android.com/guide/topics/media/camera.html http://developer.android.com/reference/android/hardware/Camera.html
相关问题
- 1. 如何使用手机在Android手机上显示相机
- 2. 相机无法在手机上使用
- 3. 使用手机的相机
- 4. 如何使用android手机相机放大/缩小
- 5. 在Android中使用相机手电筒
- 6. Android,如何使用相机
- 7. 允许手机,而在Android上使用
- 8. 在Android手机上使用AT命令
- 9. 相机在Android应用上死机
- 10. 广告如何在手机上使用?
- 11. Unity3d ARTookit5在Android手机上模糊相机
- 12. Android手机上的Html5视频标签使用手机差距
- 13. datetimepicker在手机上使用本机datetimepicker
- 14. HTML5打开iPhone或Android手机相机
- 15. 使用手机相机与wap
- 16. 如何在android上手动设置相机焦距?
- 17. 使用Android相机
- 18. 使用Android相机
- 19. 使用HTML5访问iOS和Android手机中的相机
- 20. 重置手机上的相机旋转
- 21. 如何在Ubuntu Linux上使用Android手机进行调试?
- 22. 如何让我的手机号码在Android上使用CallLog
- 23. 如何使用手机相机作为背景?
- 24. Android:如何调用相机
- 25. 如何使用Android相机API
- 26. 如何将Android手机
- 27. 如何在Android上使用蒙版照相机opencv
- 28. 如何安装Android手机的SD卡在PC和手机上均可见?
- 29. 安卓相机功能在几部手机上不起作用
- 30. 如何在手机浏览器上使用javascript查找手机制造商