【发布时间】:2016-01-09 11:35:25
【问题描述】:
我正在使用 productFlavors 和 buildConfigField 在我的 Android 应用中启用/禁用功能:
productFlavors {
vanilla {
buildConfigField "boolean", "FEATURE_SAR", "false"
}
edge {
applicationIdSuffix ".edge"
buildConfigField "boolean", "FEATURE_SAR", "true"
}
}
尚未找到禁用 Android Studio 代码样式警告“'!BuildConfig.FEATURE_SAR' 可以简化为 'false'”的方法。
正如您在我的代码中看到的那样,我尝试了很多方法,但都没有奏效。而且我在 Android Studio 中找不到可以禁用此功能的设置。
@Override
@SuppressWarnings("SimplifiableIfStatement") // no effect
@SuppressLint("SimplifiableIfStatement") // no effect
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Set<Integer> suppressPositions = new HashSet<>();
//noinspection SimplifiableIfStatement <-- no effect
if (!BuildConfig.FEATURE_SAR) {
suppressPositions.add(IDX_SAR);
}
SimpleAdapter adapter = ViewUtils.createSimpleAdapter(
getContext(), MENU_RESOURCES, suppressPositions);
setListAdapter(adapter);
}
当然有办法通过使用资源来解决这个问题,但由于某些原因,我不能在所有情况下都使用资源。所以问题只是如何禁用这些警告,而不是如何更好地处理 Android/Gradle 中的配置管理。
【问题讨论】:
-
一般来说,一旦将光标置于警告中,请按 ALT + ENTER。然后放大警告的上下文菜单。应该有一个带有红色 X 的条目“禁用检查”
-
谢谢,它有效。复制并粘贴您的评论作为答案,我会接受它:-)