android p内侧版安卓9.0,最新安卓9.0(Android P) 引起的Bug解决:Error:In <declare-styleable> FontFamilyFont, unable to...

Bug出现

今天在项目开发中,编译工程时,突然出现了一个莫名的错误提示,即标题的“Error:In FontFamilyFont, unable to find attribute android:fontVariationSettings”:导致编译无法通过。

ca860da1f879

1.jpg

(有些的人的编译错误提示是: Error:In FontFamilyFont, unable to find attribute android:font ,等等)

出现原因

1.可能是compileSdkVersion与targetSdkVersion的版本不一致(如“Android中出现Error:In FontFamilyFont, unable to find attribute android:font 解决办法”);

2.可能是工程中依赖的com.android.support:support-v4 (或support-v7) 版本不一致。

解决方法

原因1的解决方法很简单,把自己工程的build.gradle文件中的compileSdkVersion及targetSdkVersion的版本设成一致就OK了,如27。

原因2 的解决方法则是检查自己工程是否有重复导入support-v4包 或 依赖的类库中是否有重复导入support-v4包,若有则剔除即可。

自己的工程问题

然而我查看自己的工程,这两个版本一直是一致的都是27,这个工程已维护好几个月了,不可能出现此问题。排除问题1;

再看dependencies中的一行依赖有个提示:All com.android.support libraries must use the exact same version specification (mixing versions can lead to runtime crashes).Found versions 28.0.0-alpha1,27.0.0.Examples include com.android.support:asynclayoutinflater:28.0.0-alpha1 and com.android.support:animated-vector-drawable:27.0.0.

ca860da1f879

2.jpg

很显然是提示support-v4不一致的,自己的工程仅仅引入了一次,那只能是依赖的类库中的问题了。经过一番查询,发现是#

ca860da1f879

3.jpg

原来是这个类库的support-v4使用的是最新版本,正好3月8日凌晨google发布了安卓9.0(即Android P)首个开发者预览版,导致了重新编译工程时,此类库的support-v4使用的是最新的com.android.support:support-v4:28.0.0 rc1,与我工程中的27.0.0不一致了,从而导致了“Error:In FontFamilyFont, unable to find attribute android:fontVariationSettings”的错误(难怪我工程的compileSdkVersion 和targetSdkVersion使用'android-P' 可以编译通过,无错误提示)。

自己工程解决

终于发现自己工程依赖的类库#compile('cn.qqtheme.framework:WheelPicker:latest.release') { exclude group: 'com.android.support' }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值