Это фрагмент кода из кода моего приложения: < /p>
String? result = await fetchVideoUrl(url, _format.name);
if (result != null) {
String filePath;
if (Platform.isAndroid || Platform.isIOS) {
if (Platform.isAndroid) {
var status = await Permission.storage.request();
if (!status.isGranted) {
messenger.showSnackBar(SnackBar(content: Text("Storage permission denied.")));
return;
}
}
final tempDir = await getTemporaryDirectory();
final filePath = '${tempDir.path}/fetchvid_${DateTime.now().millisecondsSinceEpoch}.${_format.name}';
final dio = Dio();
await dio.download(result, filePath);
if (_format.name == 'mp3') {
final musicDir = Directory('/storage/emulated/0/Music');
if (!await musicDir.exists()) {
await musicDir.create(recursive: true);
}
final filename = 'fetchvid_${DateTime.now().millisecondsSinceEpoch}.mp3';
final newPath = '${musicDir.path}/$filename';
final savedFile = await File(filePath).copy(newPath);
try {
await Process.run('am', ['broadcast', '-a', 'android.intent.action.MEDIA_SCANNER_SCAN_FILE', '-d', 'file://${savedFile.path}']);
} catch (e) {
setState(() {
_waiting = false;
});
messenger.showSnackBar(SnackBar(content: Text("Failed to trigger media scan.")));
}
messenger.showSnackBar(SnackBar(content: Text("MP3 saved to Music folder!")));
< /code>
Когда я собрал свое приложение и проверил его на реальном устройстве, часть разрешения работала отлично. Но после этого это ничего не сделало. Он не сохранил файл и не показал какого -либо всплывающего окна отказов или успеха. < /P>
Я хочу сохранить файл MP3 в музыкальном каталоге по умолчанию устройства Android. У меня есть URL -адрес загрузки аудиофайла (это то, что возвращает функция FetchVideourl). Как я могу это сделать? Если этот метод может быть исправлен, скажите, как. Или, если другая библиотека может сделать это для меня, расскажите об этом. Я пробовал Image_gallery_saver_plus, но это не работало для mp3. Это работало только на MP4.
Подробнее здесь: https://stackoverflow.com/questions/796 ... -for-music
Как сохранить файл mp3 для Android в Flutter в местоположение по умолчанию для музыкальных файлов? ⇐ Android
Форум для тех, кто программирует под Android
1749783629
Anonymous
Это фрагмент кода из кода моего приложения: < /p>
String? result = await fetchVideoUrl(url, _format.name);
if (result != null) {
String filePath;
if (Platform.isAndroid || Platform.isIOS) {
if (Platform.isAndroid) {
var status = await Permission.storage.request();
if (!status.isGranted) {
messenger.showSnackBar(SnackBar(content: Text("Storage permission denied.")));
return;
}
}
final tempDir = await getTemporaryDirectory();
final filePath = '${tempDir.path}/fetchvid_${DateTime.now().millisecondsSinceEpoch}.${_format.name}';
final dio = Dio();
await dio.download(result, filePath);
if (_format.name == 'mp3') {
final musicDir = Directory('/storage/emulated/0/Music');
if (!await musicDir.exists()) {
await musicDir.create(recursive: true);
}
final filename = 'fetchvid_${DateTime.now().millisecondsSinceEpoch}.mp3';
final newPath = '${musicDir.path}/$filename';
final savedFile = await File(filePath).copy(newPath);
try {
await Process.run('am', ['broadcast', '-a', 'android.intent.action.MEDIA_SCANNER_SCAN_FILE', '-d', 'file://${savedFile.path}']);
} catch (e) {
setState(() {
_waiting = false;
});
messenger.showSnackBar(SnackBar(content: Text("Failed to trigger media scan.")));
}
messenger.showSnackBar(SnackBar(content: Text("MP3 saved to Music folder!")));
< /code>
Когда я собрал свое приложение и проверил его на реальном устройстве, часть разрешения работала отлично. Но после этого это ничего не сделало. Он не сохранил файл и не показал какого -либо всплывающего окна отказов или успеха. < /P>
Я хочу сохранить файл MP3 в музыкальном каталоге по умолчанию устройства Android. У меня есть URL -адрес загрузки аудиофайла (это то, что возвращает функция FetchVideourl). Как я могу это сделать? Если этот метод может быть исправлен, скажите, как. Или, если другая библиотека может сделать это для меня, расскажите об этом. Я пробовал Image_gallery_saver_plus, но это не работало для mp3. Это работало только на MP4.
Подробнее здесь: [url]https://stackoverflow.com/questions/79663941/how-to-save-an-mp3-file-for-android-in-flutter-to-the-default-location-for-music[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия