当我将所有图像和mp3文件从myapplication内部迁移到Firebase时,性能发生了很大变化。加载mp3文件需要很多时间,这不是因为我的互联网(我有200 / 200mb的下行/上行速度)。
我也使用Glide库来调整我的巨大图像。
这是我使用Glide将我的图像放置到布局的方式:
Glide.with(getActivity()).load(song.getArtistImg()).into(artistImg);
Glide.with(getActivity()).load(song.getArtistImg()).into(artistImgBG);
这是我从firebase检索我的mp3文件的方式:
mediaPlayer = MediaPlayer.create(getActivity(), Uri.parse(getSong));
我使用我的viewmodel来set
和get
我的对象
我已经在我的代码的每一步设置logs
,以确切地看到它需要这么长时间,并且我发现在创建我的MediaPlayer
对象时它需要一段时间。我搜索过它,但没有找到解决我问题的任何东西。
如何增加创建MediaPlayer
对象所需的时间?
我的Firebase存储遇到了类似的问题,我升级到了火焰计划并发现了一点点增加。使用3mb / 6mb文件,您可能会有一些下载等待,因为它是手机上wifi的大文件。我做了一段时间阅读以找到问题对我来说是什么,我相信这是因为我在一个地区并不是(新西兰)尚未优化,尽管我可能是错的。
尽管如此,我还是建议您将文件存储在Firebase存储中,而不是将文件存储在带有网址的网站上。 Firebase Hosting也有很棒的缓存。看看这里托管。 https://firebase.google.com/docs/hosting/我建议你将图像上传到一个静态的网站,我过去已经为图像做了这个,它运作良好!