Android Studio提示Kotlin自定义Application类未使用的问题求助
解决Android Studio无法识别Kotlin Application类已被使用的问题
这个情况我之前在老版本Android Studio里也遇到过,IDE对Kotlin的Manifest引用识别偶尔会抽风,试试下面这几个办法:
确认Manifest配置的准确性
先仔细核对<application>标签的android:name属性:- 如果你的
XZY类的包名和Manifest根标签的package属性一致,可以简写为.XZY;如果不一致,必须写完整的包名+类名(比如com.yourpackage.XZY)。 - 确保这个属性是直接写在
<application>标签里,不是嵌套在其他标签下。
- 如果你的
刷新IDE缓存(最有效)
Android Studio的缓存经常会导致这类识别错误,操作步骤:- 点击顶部菜单栏的
File→Invalidate Caches / Restart - 在弹出的窗口选择
Invalidate and Restart,等待IDE重启完成
- 点击顶部菜单栏的
更新Kotlin插件或Android Studio版本
你用的Android Studio 3.1.2版本比较老旧,对Kotlin的支持不够完善:- 先在
Settings→Plugins里找到Kotlin插件,检查并更新到对应AS版本支持的最新版 - 如果条件允许,建议升级Android Studio到更稳定的新版本(比如Chipmunk或更高),新版本对Kotlin的兼容性和识别能力会好很多
- 先在
临时“欺骗”IDE的小技巧
如果上面的方法都没生效,可以临时给XZY类加个伴生对象,让IDE认为它被引用了:class XZY : Application() { companion object {} }或者在任意Activity里加一行
XZY::class.java,这样IDE就不会再标灰提示未使用了,这是个治标但快速的办法检查混淆配置(可选)
如果你开启了ProGuard/R8,确认混淆规则里没有误把XZY类标记为未使用而移除,不过这个一般不会导致IDE的静态识别问题,更多是运行时的问题,可以作为最后排查点
内容的提问来源于stack exchange,提问作者Hoornet
相关产品推荐
相关产品推荐

