Intent intent = new Intent("android.media.action.IMAGE_CAPTURE"); File tempFile = new File(Environment.getExternalStorageDirectory() + "/pic", "temp.png"); if (!tempFile.getParentFile().exists()) { tempFile.getParentFile().mkdir(); } Uri uri = FileProvider.getUriForFile(MainActivity.this, "com.cmiot.demo.fileprovider", tempFile); intent.putExtra(MediaStore.EXTRA_OUTPUT, uri); startActivityForResult(intent, 100);//携带请求码完整代码
时间: 2024-02-13 15:04:20 浏览: 220
好的,这是一个使用相机拍摄照片并保存的代码示例,完整代码如下:
```java
Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
File tempFile = new File(Environment.getExternalStorageDirectory() + "/pic", "temp.png");
if (!tempFile.getParentFile().exists()) {
tempFile.getParentFile().mkdir();
}
Uri uri = FileProvider.getUriForFile(MainActivity.this, "com.cmiot.demo.fileprovider", tempFile);
intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);
startActivityForResult(intent, 100);
```
其中,通过创建一个 Intent 对象,并指定 action 为 `android.media.action.IMAGE_CAPTURE`,启动系统相机应用。通过创建一个临时文件,将照片保存到文件中。使用 `FileProvider` 获取文件的 Uri,并将 Uri 作为 Extra 值传递给相机应用,以便相机应用将照片保存到指定的文件中。最后,在 `startActivityForResult` 中传入请求码 100,以便在照片拍摄完成后,能够在 `onActivityResult` 方法中接收到结果。
阅读全文