【发布时间】:2017-11-24 19:57:14
【问题描述】:
我找到了 RoomSQLiteQuery 类的一个很好的用法,但是它被 @RestrictTo 注释了。甚至认为 IDE 显示警告,它编译正常,而且看起来也正常工作。
@RestrictTo 仅在我们不应该使用某些东西时发出警告,它实际上并不能禁止您使用它,对吗?它总是能在生产中工作吗?
所以我只是想检查一下,以确保它会起作用。
没有必要给出建议“不要使用它,那很糟糕......”,我只是问它是否安全使用。 (甚至认为你可能会问我,如果你真的感兴趣,我为什么需要 :))
编辑:
我已经从 room 生成的文件中复制了使用 RoomSQLiteQuery(使用 @RestrictTo 注释的类)的代码。因此,如果我无法使用,那么房间在生成代码时如何使用 IT 呢?因为房间生成的类在同一个包中。
也不是只有使用访问修饰符才能限制某些类/函数/whaterever的使用吗?
【问题讨论】:
-
实际上,您应该无法使用该 API。我猜是因为 room 是一个外部库,这就是你能够使用该类的原因。否则,如果它来自 SDK,您将无法使用它。
-
我已经从 room 生成的文件中复制了使用 RoomSQLiteQuery(使用 @RestrictTo 注释的类)的代码。因此,如果我无法使用,那么在生成代码时如何使用房间。也不是只有使用访问修饰符才能限制某些类/函数/whaterever的使用吗?
标签: java android android-room