在我的代码中,我有如下内容:
public class MyFragment extends Fragment {
@Override
public void onAttach(Activity aActivity) {
//super.onAttach(aActivity);
}
... some more code ...
}
看起来,即使使用以下配置,棉绒也会错过此类不会从
super.onAttach()
内部调用onAttach()
方法的情况:<?xml version="1.0" encoding="UTF-8"?>
<lint>
<!-- Disable the given check in this project -->
<issue id="MissingSuperCall" severity="fatal" />
</lint>
我的问题是双重的:
为什么皮棉跳过了应该标记为致命的明显错误?
如果我怀疑这不是皮棉检查的方法(即
onAttach()
的Fragment
方法),那么有没有办法让皮棉也标记此方法(即更深层次的配置,或者,至少要有一个改善绒毛的问题报告机制)? 最佳答案
1)可能是因为您将其列出在lint.xml文件中。这使Android Lint忽略了该特定错误。它提到了here。
lint.xml文件
一个配置文件,可用于指定要排除的任何皮棉检查并自定义问题严重性级别。
2)就标记方法而言,您需要遵循this。它告诉您如何为Android代码创建皮棉检查。此后,您可以使用JavaScanner
界面。可以在here中找到源。您可以覆盖visitMethod
API并访问onAttach
函数中的说明。在那里您可以检查super.onAttach
呼叫。如果未找到,则可以标记错误。