【发布时间】:2015-05-26 07:58:02
【问题描述】:
我正在尝试捕获图像,然后与应用共享。
private static final int CAMERA_REQUEST = 1888;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_result);
Intent cameraIntent = new Intent(
android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, CAMERA_REQUEST);
//start the camera and capture an image
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == CAMERA_REQUEST && resultCode == RESULT_OK) {
Uri imageUri = data.getData();
//convert captured Image from Intent form to URI
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, imageUri);
shareIntent.setType("image/jpeg");
startActivity(shareIntent);
//share the image
}
}
但是当我运行此代码时,图像不会被共享。我的代码有错误吗?
有没有其他方法可以共享图像而不将其保存在内存中?
【问题讨论】:
-
很可能,在 onActivityResult data.getData() 中返回 null。你能检查一下吗?
-
它返回空值。我该如何解决?
-
拜托,试试这个代码:stackoverflow.com/a/22218309/1796309,如果你没有帮助,我会为你写正确的代码
-
成功了!非常感谢!
标签: java android image android-intent android-camera