求助:自己写的安卓音乐播放器在模拟器里能显示mp3内嵌封面,在手机里却什么都不显示。

Thare_Lam 2013-05-24 02:34:13
设置封面代码:
try{
MainActivity.img_songcover.setImageDrawable(getpic(s));
PlayerMag.f_drawable=getpic(s);
}catch(Exception e){
MainActivity.img_songcover.setImageResource(R.raw.songcover);
PlayerMag.f_drawable=null;
}
if(getpic(s)==null){
MainActivity.img_songcover.setImageResource(R.raw.songcover);
PlayerMag.f_drawable=null;
}
模拟器运行情况:(不知道什么愿意,传不了图片,不过我描述的应该挺清楚的)
如果读取专辑图片异常或者为空就显示raw里面的图片。扫描的是相同的歌曲,在模拟器能正常显示出来,而且没有专辑的歌曲显示的是raw里的图片。在手机里却显示不出来,显示的是空白,没有专辑封面的能正常显示raw里的突然。我感觉可能是图片读取方式之类的手机和模拟器不一样,或者格式啥的不对,具体原因我也不太清楚。希望高手能帮我解答下。
...全文
996 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Thare_Lam 2013-05-28
  • 打赏
  • 举报
回复
引用 4 楼 f839903061 的回复:
你调试一下,在手机里运行应用程序,获取的图片什么的是空吗,因为有些手机存储位置和模拟器不一样!并不是同一的 /mnt/sdcard/ /mnt/extsd/ 这两种情况都有可能
我是通过cursor访问内存卡数据库(媒体信息都保存在这里)然后设置的,现在还是这样,也就算了,东西也做完了,就结了吧
Thare_Lam 2013-05-24
  • 打赏
  • 举报
回复
木有人吗~ 来帮帮忙~
雨焰 2013-05-24
  • 打赏
  • 举报
回复
你调试一下,在手机里运行应用程序,获取的图片什么的是空吗,因为有些手机存储位置和模拟器不一样!并不是同一的 /mnt/sdcard/ /mnt/extsd/ 这两种情况都有可能
Thare_Lam 2013-05-24
  • 打赏
  • 举报
回复
我分别从能显示封面和不能显示封面的两首歌里提取出了他们的专辑图片,发现都是jpg格式的,也就是说应该和图片格式无关。唉,现在这个问题好困惑啊,求大神帮忙解决下
Thare_Lam 2013-05-24
  • 打赏
  • 举报
回复
修改了下代码,有点好了。现在的问题是有些歌曲的专辑封面能显示,有些不能显示。下面贴出获取专辑封面的方法 如果获取异常或者为空就设置为默认图片,大家帮忙看看哪里有问题。

//获取album_art
         private  String getAlbumArt(int album_id) {  
             String mUriAlbums = "content://media/external/audio/albums";  
             String[] projection = new String[] { "album_art" };  
             Cursor cur = getContentResolver().query(  
                     Uri.parse(mUriAlbums + "/" + Integer.toString(album_id)),  
                     projection, null, null, null);  
             String album_art = null;  
             if (cur.getCount() > 0 && cur.getColumnCount() > 0) {  
                 cur.moveToNext();  
                 album_art = cur.getString(0);  
             }  
             cur.close();  
             cur = null;  
             return album_art;  
         } 
        //获取专辑封面
         public Bitmap getpic(String file){
                 Cursor c =getCursorfromPath(file);  
                 int album_id = c.getInt(c.getColumnIndexOrThrow(MediaStore.Audio.Media.ALBUM_ID)) ; 
                Bitmap bm = null;  
                 String albumArt = getAlbumArt(album_id);    
            if (albumArt == null) {  
                     bm=null; 
            }else {  
                 bm = BitmapFactory.decodeFile(albumArt);    
                    }  
             return bm;  
         }
 
设置专辑封面
 try{
                         MainActivity.img_songcover.setImageBitmap(getpic(s));
                         PlayerMag.f_drawable=getpic(s);
                 }catch(Exception e){
                         MainActivity.img_songcover.setImageResource(R.raw.songcover);
                         PlayerMag.f_drawable=null;
                 }
                 if(getpic(s)==null){
                         MainActivity.img_songcover.setImageResource(R.raw.songcover);
                         PlayerMag.f_drawable=null;
                 }
WPS Office 2019 是一款功能丰富的办公软件套装,它整合了文字、表格、演示、PDF 等组件,具备体积小巧、功能丰富、兼容性强等特点,能满足日常办公的多种需求。 功能组件丰富:包含 WPS 文字、WPS 演示、WPS 表格、WPS PDF 等组件,可用于文档编辑、表格计算、幻灯片制作、PDF 处理等,支持 DOC、DOCX、XLS、XLSX、PPT 等多种格式,能与 Microsoft Office 较好地兼容。 支持云存储与协作:用户登录 WPS 账号后,可实现多终端、跨平台的数据同步,还能与他人协同办公,文档可通过微信、QQ 等社交平台一键分享。 PDF 功能强大:提供沉浸式 PDF 阅读体验和稳定的编辑服务,支持一键编辑 PDF 文档内容。借助 OCR 技术,可精准转换文档、表格、PPT、图片等格式的文件。 界面设计优化:具有全新视觉设计,默认皮肤舒适清爽,还支持桌面背景、界面字体、皮肤、格式图标等个性化设置。同时,文档标签可拖拽成独立窗口或合并,用户可自主选择文档显示方式,还能将文件放置在不同工作区,便于分类浏览与管理。 内置实用工具:内置了简单的网页浏览器,点击文档中的链接会默认用其打开,可进行网页添加到首页、另存为 PDF 等操作。此外,“应用中心” 集成了输出转换、文档助手、安全备份等多种实用功能。 模板资源丰富:稻壳商城提供了大量模板、范文、图片等素材资源,涵盖求职简历、总结计划、合同协议等常见文档类型,方便用户快速创建专业文档。 表格功能特色突出:支持通过关键词快速切换工作表,设有阅读模式和护眼模式。还可分类合并单元格,以及拆分合并单元格并填充内容。公式编辑器中可轻松完成公式嵌套,筛选时可通过 “仅筛选此项” 一步完成特定值筛选,还能根据筛选条件生成动态分析图表。另外,“特色功能” 和 “智能工具箱” 菜单中包含 PDF

80,471

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧