Как я могу захватывать видео или аудио и отображать их только на android ?
Я успешно создал для простого захвата изображения и отображения изображения на экране, но, пожалуйста, мне тоже нравится прикреплять аудио и видео, и как я могу получить возможность прикрепить медиафайл из галереи onClick кнопок.
Что я уже пробовал:
package inducesmile.com.androidcameraapplication; import android.content.Intent; import android.graphics.Bitmap; import android.os.Bundle; import android.provider.MediaStore; import android.support.v7.app.ActionBarActivity; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.Button; import android.widget.ImageView; import android.widget.VideoView; public class MainActivity extends ActionBarActivity { private ImageView imageHolder; private VideoView videoHolder; private final int requestCode = 20; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); imageHolder = (ImageView)findViewById(R.id.captured_photo); Button capturedImageButton = (Button)findViewById(R.id.photo_button); Button capturedVideoButton = (Button)findViewById(R.id.Video_button); Button capturedAudioButton = (Button)findViewById(R.id.Audio_button); capturedImageButton.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { Intent photoCaptureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(photoCaptureIntent, requestCode); } }); capturedVideoButton.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { Intent videoCaptureIntent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE); startActivityForResult(videoCaptureIntent, requestCode); } }); capturedAudioButton.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { Intent audioCaptureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE_SECURE); startActivityForResult(audioCaptureIntent, requestCode); } }); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if(this.requestCode == requestCode && resultCode == RESULT_OK){ Bitmap bitmap = (Bitmap)data.getExtras().get("data"); imageHolder.setImageBitmap(bitmap); } } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); //noinspection SimplifiableIfStatement if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } }