魅族note(电信版)缩略图显示不正确问题

【问题现象】

     问题现象:

          图片缩略图显示存在多处重复,展示缩略图与原本应该展示的图片不相同。

                  

     期待结果:

          展示缩略图与原本应该展示的图片相同,不会出现重复的现象。

【涉及机型】

          厂商:Meizu

          机型:M463C

         SDKAndroid4.4.4

         ROMFlyme OS 4.2Q

         基带:.1.0.2.c1-00096-M8936FAAAANVZM-1

【问题分析】:ROM问题

         问题API:

                   

         首先,我们反编译问题机型framework层代码,发现getThumbnail()函数已经被更改。由于反编译源码,代码结构被混淆,暂时无法正确解析源码。

         但是,我们通过对android原生SDK的分析,我们了解到getThumbnail()获取缩略图主要是两种方式,MICRO_KIND方式是缩略图管理器中获取缩略图;MINI_KIND方式是从数据库中读取文件路径然后压缩原图片得到缩略图。具体原生android framework层源码如下:

 

                   

                   

                   

                  

                 

         而我们的问题API恰好是要求采用MICRO_KIND方式来获取缩略图。适配问题的原因也比较明了:厂家修改framework层源码使得thumFile缩略图管理器数据维护不当,从而导致缩略图获取不正确。

【解决方案/规避方案】

         1.首先分析两种获取缩略图的方式:

                  MICRO_KIND方式:先尝试从缩略图数据库中搜索图片,如果不存在对应的缩略图,则直接找到原图片路径,读取原图片,转换为缩略图大小。

                  MINI_KIND方式:直接找到原图片路径,读取原图片,转换为缩略图大小。

         2.这样一来,我们知道MINI_KIND方式是不会导致缩略图对应错误的问题。所以我们适配解决方案也十分明显:在问题机型上,我们建议使用MINI_KIND方式读取缩略图。

         解决方案:

                   

         3.测试该解决方案:

         Demo测试解决方案:(适配前,大部分的照片对应的缩略图都是同一个缩略图,缩略图与原图片不匹配)

                   

         Demo测试解决方案:(适配后,缩略图显示正常,缩略图与原图片匹配)

                   

// 如果觉得不错,记得顶我哦! 顶我!顶我!顶我!



更多相关文章

  1. Android开发笔记(一百七十一)使用Glide加载网络图片
  2. Android(安卓)Fresco图片处理库用法API英文原文文档1(Facebook开
  3. android style的继承方式 点(.)和parent
  4. Android设置Alpha值实现图片渐变效果
  5. android之Fresco框架--Fresco基本使用
  6. 深入浅出谈Android(安卓)几种布局方式
  7. Android之Http通信——3.Android(安卓)HTTP请求方式:HttpURLConn
  8. 我的开源项目:Android图片剪裁库
  9. Android开发 - ListView添加点击事件的三种方式

随机推荐

  1. Android(安卓)获取并显示远程图片 Picass
  2. 关于 Android(安卓)进程保活,你所需要知道
  3. chromium源码下载与编译一
  4. Android大概介绍
  5. Android:使用MediaPlayer播放本地音乐
  6. Android(安卓)studio 统一版本依赖, 避免
  7. android 开发中共享全局数据Application
  8. AndroidNDK工程FFmpeg(一)-- Android使用FF
  9. 10.1 Android(安卓)NDK开发 一
  10. 1.0 Android平台概述