【发布时间】:2012-05-29 22:14:46
【问题描述】:
是否可以启动原生 android 相机应用来启动默认相机而不是显示意图选择器,然后启动 Activity 以获得结果?
【问题讨论】:
标签: android
是否可以启动原生 android 相机应用来启动默认相机而不是显示意图选择器,然后启动 Activity 以获得结果?
【问题讨论】:
标签: android
您可以使用 Intent 启动相机应用,例如: Android camera intent
你可以像这样在你的意图中设置一个特定的类:Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");intent.setClassName("com.android.camera", "com.android.camera.Camera");
这不会显示意图选择器并启动默认的相机应用程序。
【讨论】:
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, TAKE_PICTURE);
【讨论】:
imageView = (ImageView)findViewById(R.id.imageView1);
Button photoButton = (Button)findViewById(R.id.button1);
photoButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, CAMERA_REQUEST);
}
});
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == CAMERA_REQUEST) {
Bitmap photo = (Bitmap) data.getExtras().get("data");
imageView.setImageBitmap(photo);
}
}
在清单中
<uses-feature android:name="android.hardware.camera"/>
【讨论】: