Java 如何通过URL从firebase数据库下载音频文件mp3或mp4或mpeg
在我的类适配器中,我有ImageView,它必须根据mp3、mp4和mpeg扩展下载歌曲。我的firebase数据库如下所示: 我不明白为什么下载没有启动此方法:Java 如何通过URL从firebase数据库下载音频文件mp3或mp4或mpeg,java,android,firebase,firebase-realtime-database,android-recyclerview,Java,Android,Firebase,Firebase Realtime Database,Android Recyclerview,在我的类适配器中,我有ImageView,它必须根据mp3、mp4和mpeg扩展下载歌曲。我的firebase数据库如下所示: 我不明白为什么下载没有启动此方法: private void musicdownload(String uri, String title){ try { File musicStorageDir = new File(Environment.getExternalStoragePublicDirectory(DIRECTORY_MUSIC)
private void musicdownload(String uri, String title){
try {
File musicStorageDir = new File(Environment.getExternalStoragePublicDirectory(DIRECTORY_MUSIC), "Gladia");
if (!musicStorageDir.exists()){
musicStorageDir.mkdir();
}
//Default Extension mp3
String musicExtension = ".mp3";
if (uri.contains(".mp4")){
musicExtension = ".mp4";
}else if (uri.contains(".aac")){
musicExtension = ".aac";
}else if (uri.contains(".mpeg")){
musicExtension = ".mpeg";
}
String singName = title + musicExtension;
DownloadManager downloadManager = (DownloadManager)mContext.getSystemService(Context.DOWNLOAD_SERVICE);
Uri downloadUri = Uri.parse(uri);
Log.d(TAG, "musicdownload: downloadUri: " + downloadUri);
DownloadManager.Request request = new DownloadManager.Request(downloadUri);
request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI | DownloadManager.Request.NETWORK_MOBILE)
.setDestinationInExternalPublicDir(DIRECTORY_MUSIC + File.separator, singName)
.setTitle(singName).setDescription(title)
.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
downloadManager.enqueue(request);
}catch (Exception e){
e.printStackTrace();
}
}
方法调用
谢谢,我知道问题出在哪里了。我没有激活授权。谢谢,我看到问题了。我没有激活授权。new DownloadFileFromURL().execute(file\u url);它在哪里失败/停止?@MadaManu下载没有启动应用程序没有crashAny调试信息?代码的执行是否在特定行停止?你能插入一些断点,看看它不在哪里吗?谢谢,我知道问题出在哪里了。我没有激活authorization.new DownloadFileFromURL().execute(文件\ url);它在哪里失败/停止?@MadaManu下载没有启动应用程序没有crashAny调试信息?代码的执行是否在特定行停止?你能插入一些断点,看看它不在哪里吗?谢谢,我知道问题出在哪里了。我没有激活授权。请详细说明授权以及您如何“激活”授权,以便其他人可以检查他们是否缺少相同的内容?访问存储许可您应该使用更详细的解释更新此答案,然后关闭问题。:)您是否可以详细介绍授权以及您如何“激活”授权,以便其他人能够检查他们是否缺少相同的内容?访问存储许可您应该使用更详细的解释更新此答案,然后关闭此问题。:)
viewHolder.download.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
musicdownload(music.getMusicUrl(), music.getMusicTitle());
}
});