我正在我的应用程序中启动相机应用程序并录制视频。录制后我也将它保存在SD卡上。问题是可以播放图库中的视频,并且无法播放SD卡上的视频。
private void recordVideo() {
Intent intent = new Intent("android.media.action.VIDEO_CAPTURE");
startActivityForResult(intent, CAMERA_VID_REQUEST);
}
protected void onActivityResult(int requestCode, int resultCode, Intent data){
super.onActivityResult(requestCode, resultCode, data);
if ( requestCode == CAMERA_VID_REQUEST && resultCode == Activity.RESULT_OK) {
try {
AssetFileDescriptor videoAsset = getContentResolver().openAssetFileDescriptor(data.getData(), "r");
FileInputStream fis = videoAsset.createInputStream();
File videoFile = new File(Environment.getExternalStorageDirectory().getPath()+"/test.mp4");
FileOutputStream fos = new FileOutputStream(videoFile);
byte[] buffer = new byte[1024];
int length;
while ((length = fis.read(buffer)) > 0) {
fos.write(buffer, 0, length);
}
fis.close();
fos.close();
} catch (IOException e) {
// TODO: handle error
}
}
尝试使用两种不同的设备。 任何有助于解决此问题的解决方案?