记解决一次drawable资源找不到的问题
1 通读aapt源码和AssetManager源码
2 gdb调试
3 找不到的资源为drawable/sns_default.xml 匹配到的config为drawable,但是drawable里面并没有该资源,索引到的字符串常亮池的index为1,对应字符串为"" 空串
#aapt dump strings com.tencent.qt.qtl.apk | grep “#1:”
String #1:
4 反编译查看sns_default.png所在目录
drawable-nohdpi-v4
drawable-xhdpi-v4
这里在drawable文件夹下并没有该资源
5 再次使用aapt查看是否为资源查找过程中系统存在bug
#aapt dump resources com.tencent.qt.qtl.apk | grep sns_default
spec resource 0x7f02089d com.tencent.qt.qtl:drawable/sns_default: flags=0x00000500
resource 0x7f02089d com.tencent.qt.qtl:drawable/sns_default: t=0x03 d=0x000010ea (s=0x0008 r=0x00)
resource 0x7f02089d com.tencent.qt.qtl:drawable/sns_default: t=0x03 d=0x00000001 (s=0x0008 r=0x00)
resource 0x7f02089d com.tencent.qt.qtl:drawable/sns_default: t=0x03 d=0x00000b7c (s=0x0008 r=0x00)
确实存在在default配置下的资源 resource 0x7f02089d com.tencent.qt.qtl:drawable/sns_default: t=0x03 d=0x00000001 (s=0x0008 r=0x00) 什么鬼子
6 再次搜索
#find . -type f | xargs grep sns_default
./res/values/drawables.xml: <item type="drawable" name="sns_default" />
这次发现在values下有配置一个type为drawable类型的sns_default,就是它搞的鬼
7 回答疑问
为什么在其他手机上没有问题,在模拟器上有问题?
因为真机分辨率比较高,匹配到了drawable-xhdpi-v4下的资源
记解决一次drawable资源找不到的问题相关推荐
- mysql 运行sql 编码_关于解决运行 sql 文件时, 找不到 MySQL 默认编码 utf8mb4 的问题...
关于解决运行 sql 文件时, 找不到 MySQL 默认编码 utf8mb4 的问题 本人小白一名, 最近碰到了一个问题, 在 navicat 导入 MySQL 文件时, 报出 MySQL 找不到 u ...
- 解决SSH远程执行命令找不到环境变量的问题
解决SSH远程执行命令找不到环境变量的问题 参考文章: (1)解决SSH远程执行命令找不到环境变量的问题 (2)http://www.cnblogs.com/zhenyuyaodidiao/p/928 ...
- 成功解决FileNotFoundError: [WinError 2] 系统找不到指定的文件。
成功解决FileNotFoundError: [WinError 2] 系统找不到指定的文件. 目录 解决问题 解决思路 解决方法 解决问题 FileNotFoundError: [WinError ...
- webpack引入iview.css,解决webpack+Vue引入iView找不到字体文件的问题
原因: css-loader后面带了参数modules(打包报错) url-loader后面带了参数name(引入报错) { test: /\.css$/, use: ExtractTextPlugi ...
- linux安装python库报错pywin32_完美解决pyinstaller打包报错找不到依赖pypiwin32或pywin32-ctypes的错误...
报错信息 最近闲来无事,用python的tkinter库开发了一款带日程提醒的万年历桌面程序.在程序开发结束开始打包时,却发现一直报错 PyInstaller cannot check for ass ...
- android中的shape资源,Android Drawable资源讲解之shape篇
运用好Android的drawable资源,在开发中就可以减少图片的使用量,这样既缩小了app的体积,也省去了设计图片的时间,而且也容易适配不同的屏幕尺寸. 今天首先来讲讲shape资源的使用. 1. ...
- 【IntelliJ IDEA】使用idea解决新建jsp文件而找不到jsp文件模版的新建选项
使用idea解决新建jsp文件而找不到jsp文件模版的新建选项,这样每次创建一个新的jsp文件岂不是很耗时间? 解决办法: 就是要让idea知道你需要在这个目录下创建jsp文件 左上角,file中点击 ...
- php mysql cpu100_解决mysql占用cpu资源100%的问题_MySQL
bitsCN.com 解决mysql占用cpu资源100%的问题 一个Win2003服务器,以前就跑了一个tomcat实例也没用nginx做前端代理,这个tomcat里面带了不少网站,但是访问量并不是 ...
- 解决 Oracle TNSListener 服务启动找不到路径问题
解决 Oracle TNSListener 服务启动找不到路径问题 参考文章: (1)解决 Oracle TNSListener 服务启动找不到路径问题 (2)https://www.cnblogs. ...
- 【android studio】解决android studio drawable新建项目时只有一个drawable目录的问题
[android studio]解决android studio drawable新建项目时只有一个drawable目录的问题 参考文章: (1)[android studio]解决android s ...
最新文章
- 【图论专题】图的存储与遍历(最小环、所有环的大小)
- ubuntu下,py2,py3共存,/usr/bin/python: No module named virtualenvwrapper错误解决方法
- 中国闪存联盟三百大行动成果发布 IBM存储助力企业突破数据临界点
- pybind11传输文件
- 夏天雷雨天机房断电了,该怎么办?,叫你几招紧急应对方法
- 程序员如何日常解决错误问题
- SAP 电商云 Spartacus Schematics 开发环境搭建
- vue项目职责_进大厂兼职的机会来了!腾讯微校项目招人了!
- dotNET Core 中怎样操作AD(续1)
- python包实际怎么使用_Python--模块与包
- SAP License:ERP学习的一些个人建议
- 数据库建模——用PowerDesigner对现有的数据库进行逆向工程
- Confluence 6 为站点启用匿名用户访问
- 基于fpga的dds函数信号发生器的设计_低频信号发生器
- qt Graphic View 学习
- oracle c# 插入中文乱码,C#写入Oracle 中文乱码问题
- 微信小程序支付和退款(微信公众号和微信小程序支付和退款属于一个爹妈)
- Unable to find instance for system
- 创建表的几种方式(语法总结)
- 八、python编写IP地址计算第一个可用IP地址、最后一个可用IP地址、网络号、广播地址、主机数
热门文章
- php 百家姓,最新“百家姓”排名
- QT绘制实时动态曲线——qcustomplot使用(一)
- 搜狗语音云开发入门(二)——使用离线语音识别服务
- C语言求若干个数的均值和方差
- 网易云升级服务(云函数)
- 怎么修改打印机服务器权限,Win7如何设置网络打印机管理权限
- RabbitMQ整合SpringCloud
- php 图片裁剪后保存,php – 如何保存裁剪的图像
- 为什么我的电脑显示rpc服务器不可用,电脑提示RPC服务器不可用解决办法
- java B2B2C springmvc mybatis仿淘宝电子商城系统-服务消费者(rest+ribbon)