在我的应用程序中,我想使用相机捕获图像并将其发送到服务器。
当用户打开我的应用程序的相机部分时,我想向他展示他正在使用的设备的默认相机。目前以下是我用来捕获图像的两行代码
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, TAKE_RECEIPT);
当我在 HTC 设备中运行此代码时,捕获图像后,它会显示带有完成并重新拍摄按钮的图像预览。当我点击完成时,它会移至上一个 Activity 。
当我在 moto 设备中使用代码时,捕获图像后,它会显示带有插入、重拍和取消的图像预览。当我点击完成时,它会移至上一个 Activity 。
就像这样,所有设备的情况都会有所不同。因此,当我单击任何设备的完成或插入或任何其他按钮肯定按钮时,我想开始上传过程。
如何进行此操作,请帮助我......
最佳答案
您可以使用下面的代码来解决您的问题...
protected void startCameraActivity()
{
// TODO Auto-generated method stub
Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE );
intent.putExtra( MediaStore.EXTRA_OUTPUT, outputFileUri );
startActivityForResult( intent, 0 );
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
switch( resultCode )
{
case 0:
break;
case -1:
onPhotoTaken();
break;
}
}
protected void onPhotoTaken()
{
///write code here what you want to done after capture the image using device camera
}
@Override
protected void onRestoreInstanceState( Bundle savedInstanceState)
{
if( savedInstanceState.getBoolean( add_project1.PHOTO_TAKEN ) )
{
onPhotoTaken();
}
}
@Override
protected void onSaveInstanceState( Bundle outState )
{
outState.putBoolean( add_project1.PHOTO_TAKEN, _taken );
}
关于java - 如何创建所有 Android 设备通用的相机 Action ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6125983/