Я новичок в разработке, я успешно сохраняю изображения в базе данных, преобразовывая изображения в массив байтов и сохраняю его в базе данных SQLite в BLOB (см. Код ниже). Но я не понимаю, как хранить аудио / видео в БД, кто-нибудь поможет мне, PLZ ...
public void getImage(View view){
Intent intent = new Intent();
intent.setAction(Intent.ACTION_GET_CONTENT);
intent.setType("image/* video/*");
startActivityForResult(Intent.createChooser(intent, "select picture"), 1);
}
public void onActivityResult(int requestCode, int resultCode, Intent data){
if(resultCode == RESULT_OK){
Uri imageUri = data.getData();
String imagePath = getPath(imageUri);
image1.setVisibility(View.VISIBLE);
image1.setImageURI(imageUri);
Bitmap bitmap = BitmapFactory.decodeFile(imagePath);
Toast.makeText(getApplicationContext(), ""+bitmap, Toast.LENGTH_SHORT).show();
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 100, byteArrayOutputStream);
img = byteArrayOutputStream.toByteArray();
}
}
public String getPath(Uri uri) {
String[] projection = { MediaStore.Images.Media.DATA };
Cursor cursor = managedQuery(uri, projection, null, null, null);
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
}
public void saveImage(View v){
imageDatabase = new ImageDatabase(this);
imageDatabase.insert("first",img);
Toast.makeText(getApplicationContext(), ""+imageDatabase.numberOfRows(),Toast.LENGTH_LONG).show();
}
В приведенном выше коде я беру изображение с SD-карты и отображаю в ImageView и сохраняю в БД.