android - 如何在 Android 中拍照、保存和获取照片

标签 android android-intent bitmap uri android-camera

我一直在寻找拍摄照片的简单示例,并使用 URI 保存它并检索照片进行图像处理, 我尝试了很多示例代码,但没有一个能顺利进行。

有没有人有示例代码?

最佳答案

像这样定义一个变量

protected static final int CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE = 0;

使用从android调用相机的代码。

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
imageUri = Uri.fromFile(new File(Environment.getExternalStorageDirectory(),"fname_" +        
                        String.valueOf(System.currentTimeMillis()) + ".jpg"));
intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, imageUri);
startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);

并在调用它的类中覆盖 onActivityResult 函数并输入下面的代码。

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

    if (resultCode == RESULT_OK) {
        if (requestCode == CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE) {

            //use imageUri here to access the image

            Bundle extras = data.getExtras();

            Log.e("URI",imageUri.toString());

            Bitmap bmp = (Bitmap) extras.get("data");

            // here you will get the image as bitmap


        } 
          else if (resultCode == RESULT_CANCELED) {
            Toast.makeText(this, "Picture was not taken", Toast.LENGTH_SHORT);
           } 
         }


    }

关于android - 如何在 Android 中拍照、保存和获取照片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14154104/

相关文章:

android通过网络加密json数据

java - Activity 重新开放只工作一次

android - 如何过滤 (LogCat) 用于 Intent 解析的调试日志记录

android - ImageView 中的位图在旋转后被裁剪

c# - 如何在 C# 中访问 GDI+ 效果类

java - 可重用的 Android 库如何运行(开发、部署等)

android - 获取键盘上的 MotionEvent

android - 使用 java.net.URL 缓慢下载 JPG

android - 在 OncheckedChanged 中使用 Intent

c++ - 显示 32 位位图 - 调色板