标签:android androidx android-gradle android-databinding android-studio-3-2
自从Android Studio 3.2.0更新以来,我面临以下问题:
Execution failed for task ‘:mobile:dataBindingGenBaseClassesDebug’.
> couldn’t make a guess for com.ACME.database.model.Order
还看到了answer,这提示“软件包名称必须以小写字母开头”.
…看起来很像,似乎是因为该变量赋值是原因:
<data class=".databinding.OrderFragmentBinding">
<variable name="order" type="com.ACME.database.model.Order"/>
...
</data>
发现:New data binding compiler for binding classes,它不能解释行为的变化.
问:此类分配也受该命名约定影响吗?我的意思是,有什么机会(除了更改大写的包名之外)使数据绑定v2“猜测”生效?
解决方法:
gradle.properties中的以下设置确实启用了androidx数据绑定编译器:
android.databinding.enableV2 = false
android.enableExperimentalFeatureDatabinding = true
通过所获取的包可以看到:
Download https://dl.google.com/dl/android/maven2/androidx/databinding/databinding-compiler/3.2.0/databinding-compiler-3.2.0.pom
Download https://dl.google.com/dl/android/maven2/androidx/databinding/databinding-compiler/3.2.0/databinding-compiler-3.2.0.jar
它抱怨:
WARNING: The option setting 'android.databinding.enableV2=false' is experimental and unsupported.
The current default is 'true'
WARNING: The option setting 'android.enableExperimentalFeatureDatabinding=true' is experimental and unsupported.
The current default is 'false'
为了将Fragment与默认的v2数据绑定编译器进行数据绑定,最有可能需要androidx.fragment.app.Fragment而不是android.support.v4.app.Fragment.这只是一个临时解决方案-但仍比还原到v1数据绑定编译器更好.
我最近注意到,在不向< data />标签.生成的名称始终首字母大写,其余全为小写.
标签:android,androidx,android-gradle,android-databinding,android-studio-3-2 来源: https://codeday.me/bug/20191009/1877607.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。