Я хочу использовать тот же onActivityResult для изображений, видео и аудио.Android, используйте тот же onActivityResult для изображений, видео и аудио
Проблема.
Когда я выбираю аудио, он сохраняет путь для аудио как в видео, так и в изображениях. У меня проблемы с разделением изображений, видео и аудио.
Мой код.
private static final int SELECT_PICTURE = 1;
private static final int SELECT_AUDIO = 1;
private static final int REQUEST_TAKE_GALLERY_VIDEO = 1;
Аудио, изображения, видео
addVideo.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent();
intent.setType("video/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent,"Select Video"),REQUEST_TAKE_GALLERY_VIDEO);
}
});
addAudio.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent();
intent.setType("audio/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent,"Select Audio"),SELECT_AUDIO);
}
});
addImage.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent, "Select Picture"), SELECT_PICTURE);
}
});
onActivityResult
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
if (requestCode == REQUEST_TAKE_GALLERY_VIDEO) {
Uri selectedVideoUri = data.getData();
selectedVideoPath = getPath(selectedVideoUri);
}
if (requestCode == SELECT_AUDIO) {
Uri selectedAudioUri = data.getData();
selectedAudioPath = getPath(selectedAudioUri);
}
if (requestCode == SELECT_PICTURE) {
Uri selectedImageUri = data.getData();
selectedImagePath = getPath(selectedImageUri);
File f = new File(selectedImagePath);
if(f.exists()){
//w, h
Bitmap myBitmap = resizeImage.getCompressedBitmap(200, 200, f);
img.setImageBitmap(myBitmap);
}
}
}
}
Спасибо, что сработало –