陷阱:Cause: java.io.UTFDataFormatException (Address, Room, sqlite)

最近想学 android kotlin, 我学这个都是看官方文档,以为这玩意靠谱,开始还算顺利,但看到room这块,上机实验代码时遇到了这个错误,当我把文档中提到的Adress类 Ebedded到User的时候报了:Cause: java.io.UTFDataFormatException

开始感觉很奇怪,去网上搜索,全都是编码错误啥的, 而我这肯定不是这个问题,闹心

这么简单的代码怎么会出问题呢,难道官方doc有问题? 又去google啥的搜,还是没啥收获,最后无意中发现 引入包中有个

import android.location.Address

原来是当我写Address这个数据类的时候,AS自动把这个包给我加进来了(这个功能99.9999%相当优秀),但由于文档中给出的类名(我们实验的时候,往往不爱改doc的变量名,类名啥的,大家都一样吧)和公用包里的类名重复了,导致此问题吧。。。

更深的原因没去探究,感觉没啥用。 去掉此引入,或者把Address改成别的名字,就没这个问题了。

肇事官网doc:

https://developer.android.google.cn/training/data-storage/room/relationships?hl=zh-cn

不算什么技术文档, 避免同样的同学挠头而已

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值