Android 兼容性问题:java.lang.UnsupportedOperationException解决办法


Posted in Python onMarch 19, 2017

在前几天的开发中,遇到这么个非常奇葩的异常,有些手机可以运行,有些手机却直接就崩了,今天就把这异常整理下。

首先还是贴上其异常信息

E/AndroidRuntime: FATAL EXCEPTION: main
android.view.InflateException: Binary XML file line #13: Error inflating class <unknown>
at android.view.LayoutInflater.createView(LayoutInflater.java:613)
at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
at android.view.LayoutInflater.onCreateView(LayoutInflater.java:660)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:685)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
at android.view.LayoutInflater.parseInclude(LayoutInflater.java:830)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:736)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:749)
at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
at com.hy.taotao.utils.GlobalUtils.inflate(GlobalUtils.java:91)
at com.hy.taotao.base.BaseFragment.onCreateView(BaseFragment.java:59)
...

Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.constructNative(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:417)
at android.view.LayoutInflater.createView(LayoutInflater.java:587)
at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)?
...

Caused by: java.lang.UnsupportedOperationException: Can't convert to dimension: type=0x1
at android.content.res.TypedArray.getDimensionPixelSize(TypedArray.java:468)
at android.widget.TextView.<init>(TextView.java:944)
at android.widget.TextView.<init>(TextView.java:605)
at java.lang.reflect.Constructor.constructNative(Native Method)?
at java.lang.reflect.Constructor.newInstance(Constructor.java:417)?
at android.view.LayoutInflater.createView(LayoutInflater.java:587)?
...

上面我将主要的异常信息整理了出来,首先可以看看这一句,我们可以从上面得到的信息是 “xml文件13行导致的错误,原因是dimension文件找不到 type=0x1的元素”,后来同事在网上查了N多资料说的是values里面少了默认值,后面终于找到了缺少的默认值…

1.首先看看报错之前的文件夹截图,可以看到在一部分values-v19的文件,在values上都看不到,而values-v19文件夹是Api19的设备使用该目录下的文件夹,当设备找不到对应的名为values-*的文件夹,就会去找默认的values文件夹下的文件,那么找不到的话,就发生了上面的异常了。

Android 兼容性问题:java.lang.UnsupportedOperationException解决办法

2.那么知道了问题所在,就得解决了

1)将values-***全部备份后删掉。

2)将备份后的values-***里的文件添加到默认的values文件夹。

3.其实在上述2中这种方式一般是不推荐的,如果手机屏幕适配的话,当然不能只保留values这个默认的文件夹,但是切记在其他values-*文件夹的元素,在默认的values文件夹都必须得有。

4.下面是简单处理之后的截图

Android 兼容性问题:java.lang.UnsupportedOperationException解决办法

总结:

1.在做第三方集成等等情况的时候,切记:在其他values-*文件夹的元素,在默认的values文件夹都必须得有。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Python 相关文章推荐
python获取外网ip地址的方法总结
Jul 02 Python
Python编程实现线性回归和批量梯度下降法代码实例
Jan 04 Python
Python网络爬虫中的同步与异步示例详解
Feb 03 Python
pandas 获取季度,月度,年度首尾日期的方法
Apr 11 Python
用Django写天气预报查询网站
Oct 21 Python
Python实现带参数的用户验证功能装饰器示例
Dec 14 Python
解决python3 HTMLTestRunner测试报告中文乱码的问题
Dec 17 Python
django表单的Widgets使用详解
Jul 22 Python
Python检查 云备份进程是否正常运行代码实例
Aug 22 Python
python线程池如何使用
May 28 Python
在终端启动Python时报错的解决方案
Nov 20 Python
Python手拉手教你爬取贝壳房源数据的实战教程
May 21 Python
Python 专题三 字符串的基础知识
Mar 19 #Python
关于python的bottle框架跨域请求报错问题的处理方法
Mar 19 #Python
Python 专题二 条件语句和循环语句的基础知识
Mar 19 #Python
解决Python requests 报错方法集锦
Mar 19 #Python
python字符串str和字节数组相互转化方法
Mar 18 #Python
Python执行时间的计算方法小结
Mar 17 #Python
python django事务transaction源码分析详解
Mar 17 #Python
You might like
如何使用微信公众平台开发模式实现多客服
2016/01/06 PHP
jquery tools之tabs 选项卡/页签
2009/07/25 Javascript
JS解析XML的实现代码
2009/11/12 Javascript
JavaScript事件处理器中的event参数使用介绍
2013/05/24 Javascript
js如何取消事件冒泡
2013/09/23 Javascript
JS获取IP、MAC和主机名的五种方法
2013/11/14 Javascript
js模拟点击以提交表单为例兼容主流浏览器
2013/11/29 Javascript
JavaScript限定图片显示大小的方法
2015/03/11 Javascript
jQuery+css实现炫目的动态块漂移效果
2016/01/28 Javascript
简单的jQuery banner图片轮播实例代码
2016/03/04 Javascript
JavaScript程序中实现继承特性的方式总结
2016/06/24 Javascript
jquery.validate表单验证插件使用方法解析
2016/11/07 Javascript
Vue.js计算属性computed与watch(5)
2016/12/09 Javascript
Angular4项目中添加i18n国际化插件ngx-translate的步骤详解
2017/07/02 Javascript
jQuery绑定事件方法及区别(bind,click,on,live,one)
2017/08/14 jQuery
JS实现定时任务每隔N秒请求后台setInterval定时和ajax请求问题
2017/10/15 Javascript
简述vue路由打开一个新的窗口的方法
2018/11/29 Javascript
微信小程序云开发如何使用npm安装依赖
2019/05/18 Javascript
node.js express框架简介与实现
2019/07/23 Javascript
[56:14]Fnatic vs OG 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
[47:03]完美世界DOTA2联赛PWL S3 Galaxy Racer vs Phoenix 第二场 12.10
2020/12/13 DOTA
[37:45]完美世界DOTA2联赛PWL S3 LBZS vs Phoenix 第二场 12.09
2020/12/11 DOTA
python实现手机销售管理系统
2019/03/19 Python
Python Web版语音合成实例详解
2019/07/16 Python
Python 实现向word(docx)中输出
2020/02/13 Python
YesStyle美国/全球:购买亚洲时装、美容化妆品和生活百货
2017/01/16 全球购物
幼儿园老师辞职信
2014/01/20 职场文书
企业法人授权委托书范本
2014/09/23 职场文书
个人合伙协议书范本
2014/10/14 职场文书
2014年辅导员工作总结
2014/11/18 职场文书
离职感谢信
2015/01/21 职场文书
2015年业务员工作总结范文
2015/04/07 职场文书
班主任工作总结范文
2015/08/13 职场文书
家长必看:义务教育,不得以面试 评测等名义选拔学生
2019/07/09 职场文书
李清照的诗词赏析(20首)
2019/08/22 职场文书
MySQL CHAR和VARCHAR该如何选择
2021/05/31 MySQL