public static void DownloadVideo(Context context, String URL) {
DownloadManager.Request request = new DownloadManager.Request(Uri.parse(URL));
Date date = new Date();
SimpleDateFormat videoName = new SimpleDateFormat("yyyymmdd_HHmmss");
String strDate = videoName.format(date);
request.setDescription("Setting up the AR");
request.setTitle("AR setup ...");
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
request.allowScanningByMediaScanner();
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
}
request.setDestinationInExternalFilesDir(context, "/NewVisionARVideos/", "" + strDate + System.currentTimeMillis() + ".mp4");
System.out.println("count files --- " + context.getExternalFilesDir(null).listFiles());
for(int i = 0; i < context.getExternalFilesDir(null).listFiles().length; i++){
System.out.println("** each file -- " + context.getExternalFilesDir(null).listFiles()[i]);
}
DownloadManager manager = (DownloadManager) context.getSystemService(Context.DOWNLOAD_SERVICE);
manager.enqueue(request);
}
< /code>
Это то, что я добавил в файл манифеста: < /p>
< /code>
Это путь, который я указывает на загрузку видео: < /p>
String path = "/storage/emulated/0/Android/data/com.shliama.augmentedvideotutorial/files/NewVisionARVideos/test.mp4";
< /code>
Ниже приведена ошибка, которую я получаю, когда я пытаюсь воспроизвести видео в медиаплеере. Путь правильный, и я включил разрешения в манифесте и телефона.D/ArVideoFragment: playbackVideo = /storage/emulated/0/Android/data/com.shliama.augmentedvideotutorial/files/NewVisionARVideos/test.mp4
E/ArVideoFragment: Could not play video [/storage/emulated/0/Android/data/com.shliama.augmentedvideotutorial/files/NewVisionARVideos/test.mp4]
java.io.FileNotFoundException: /storage/emulated/0/Android/data/com.shliama.augmentedvideotutorial/files/NewVisionARVideos/test.mp4
Есть ли другой способ сыграть видео в Android MediaPlayer ?
Редактировать:
P> На самом деле, обнаружил, что я указывал на папку Assets с тех пор, как я следил за этим сообщением в блоге. gist.github.com/huxaiphaer/268b94a0e7959822fa679a7523701187
Я сохранил свое видео внутренне на телефоне со следующим кодом: < /p> [code]public static void DownloadVideo(Context context, String URL) {
DownloadManager.Request request = new DownloadManager.Request(Uri.parse(URL)); Date date = new Date(); SimpleDateFormat videoName = new SimpleDateFormat("yyyymmdd_HHmmss"); String strDate = videoName.format(date); request.setDescription("Setting up the AR"); request.setTitle("AR setup ...");
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { request.allowScanningByMediaScanner(); request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED); }
} < /code> Это то, что я добавил в файл манифеста: < /p>
< /code> Это путь, который я указывает на загрузку видео: < /p> String path = "/storage/emulated/0/Android/data/com.shliama.augmentedvideotutorial/files/NewVisionARVideos/test.mp4"; < /code> Ниже приведена ошибка, которую я получаю, когда я пытаюсь воспроизвести видео в медиаплеере. Путь правильный, и я включил разрешения в манифесте и телефона.D/ArVideoFragment: playbackVideo = /storage/emulated/0/Android/data/com.shliama.augmentedvideotutorial/files/NewVisionARVideos/test.mp4 E/ArVideoFragment: Could not play video [/storage/emulated/0/Android/data/com.shliama.augmentedvideotutorial/files/NewVisionARVideos/test.mp4] java.io.FileNotFoundException: /storage/emulated/0/Android/data/com.shliama.augmentedvideotutorial/files/NewVisionARVideos/test.mp4 [/code] Есть ли другой способ сыграть видео в Android MediaPlayer ? Редактировать: P> На самом деле, обнаружил, что я указывал на папку Assets с тех пор, как я следил за этим сообщением в блоге. gist.github.com/huxaiphaer/268b94a0e7959822fa679a7523701187
На моих устройствах Samsung я помещаю файл в папку /download . Когда я выбираю файл в моем приложении (через браузер файлов), файл называется/storage/emultion/0/download/myfile.db . Это имя хранится в настройках моего приложения.
В нашей команде мы все используем pycharm в качестве IDE, а по умолчанию - запуск сценариев в консоли запуска. P> Я распространяю какой -то код через GitHub другим людям, и мне бы хотелось, чтобы, когда они запускали его, опция «Эмуляция терминала в...