I am using a video recording intent structure during Android development. I transfer the video I recorded to a cloud application.I use the video recording interface provided by Android, not a special interface. On some devices, when I press the preview button of the video I recorded, the recording is closed and deleted. What should I do ?
Edit:
public void OpenVideoCamera(){
if (ContextCompat.checkSelfPermission(fragment_activity, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED ||
ContextCompat.checkSelfPermission(fragment_activity, Manifest.permission.READ_EXTERNAL_STORAGE) !=
PackageManager.PERMISSION_GRANTED ||
ContextCompat.checkSelfPermission(fragment_activity, Manifest.permission.WRITE_EXTERNAL_STORAGE) !=
PackageManager.PERMISSION_GRANTED ||
ContextCompat.checkSelfPermission(fragment_activity,Manifest.permission.RECORD_AUDIO)
!= PackageManager.PERMISSION_GRANTED) {
AlertDialog.Builder alertBuilder = new AlertDialog.Builder(fragment_activity);
alertBuilder.setCancelable(true);
alertBuilder.setTitle(getString(R.string.permission_required_text));
alertBuilder.setMessage(getString(R.string.camera_permission_text).replace("{0}",
getString(R.string.application_name)));
alertBuilder.setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
requestPermissions(new String[] { Manifest.permission.WRITE_EXTERNAL_STORAGE,
Manifest.permission.CAMERA,
Manifest.permission.RECORD_AUDIO,
Manifest.permission.READ_EXTERNAL_STORAGE },
PERMISSIONS_REQUEST_VID_UPLOAD);
}
});
AlertDialog alert = alertBuilder.create();
alert.show();
//sneaker.warning(getString(R.string.require_permission));
} else {
StrictMode.VmPolicy.Builder builder = new StrictMode.VmPolicy.Builder();
StrictMode.setVmPolicy(builder.build());
String temp_path = Environment.getExternalStorageDirectory().getPath() + "/" +
getString(R.string.application_name) + "/temp";
File temp_folder = CommonFeaturesController.getCommonFeaturesInstance().setFilePermissionFromFile(new
File(temp_path));
try {
if (!temp_folder.exists()) {
if (CommonFeaturesController.getCommonFeaturesInstance().isAuthorized())
temp_folder.mkdirs();
}
} catch (Exception e) {
}
mediaFile = CommonFeaturesController.getCommonFeaturesInstance().setFilePermissionFromFile(new
File(temp_path, "VIDEO_" + String.valueOf(System.currentTimeMillis())
+ ".mp4"));
Intent takeVideoIntent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
takeVideoIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(mediaFile));
if (takeVideoIntent.resolveActivity(getContext().getPackageManager()) !=
null) {
startActivityForResult(takeVideoIntent, CAMERA_VID_REQUEST);
CommonFeaturesController.getCommonFeaturesInstance().setIsExternalIntent(true);
}
}
}