1

Я записываю видео, используя мое приложение для Android. Когда я пытаюсь прочитать видео с пути после записи, я не получил полный записанный файл. , но через некоторое время я могу прочитать полный файл. Я не знаю, в чем проблема? прошу помочь. Это мой кодЗаписанное видео Не удается прочитать из файла Расположение Мгновенно?

try { videoFile = getOutputMediaFile (MEDIA_TYPE_VIDEO); videothumb = новый файл (getOutputMediaThumbFile (MEDIA_TYPE_VIDEO), videoFile.getName()); db.insertFileInfo (videoFile.getName(), 0, videoFile.length(), 0, "video/mp4"); if (videoFile == null) { Log.d ("", "Ошибка при создании медиафайла, проверка разрешений на доступ к хранилищу:"); safeToTakePicture = true; return null; }

  videothumb.createNewFile(); 
      videoFile.createNewFile(); 
      Thread.sleep(10000); 
      upVFile = new File(videoFile.getAbsolutePath()); 
      FileOutputStream fos = new FileOutputStream(videoFile); 
      FileOutputStream ftos = new FileOutputStream(videothumb); 
      thumb = Bitmap.createScaledBitmap(bmv, 200, 200, false); 
      thumb.compress(Bitmap.CompressFormat.JPEG, 90, ftos); 
      ftos.flush(); 
      ftos.close(); 
      bmv.compress(Bitmap.CompressFormat.JPEG, 100, fos); 
      fos.flush(); 
      fos.close(); 
      ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
      bmv.compress(Bitmap.CompressFormat.JPEG, 100, baos); 
      byte[] b = baos.toByteArray(); 
      baos.close(); 
      String encodedImage = new String(Base64.encodeBase64(b)); 
      editor.putString("image_data", encodedImage); 
      editor.commit(); 
      editor.putString(IMAGE_NAME, videoFile.getName()); 
      editor.commit(); 
     } catch (FileNotFoundException e) { 
      e.printStackTrace(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } finally { 
     } 

ответ

1

написать метод для обновления галереи

private void refreshGallery(File file){ 

Intent mediaScanIntent=new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE); 

mediaScanIntent.setData(Uri.fromFile(file)); 

sendBroadcast(mediaScanIntent); 

}