Android Nullbale和NonNull:方法调用“ getSearchableInfo”可能会产生“ NullPointerException”

时间:2019-07-28 16:16:50

标签: java android warnings nullable non-nullable

我有下面的代码段,但显示了警告方法调用'getSearchableInfo'可能会产生'NullPointerException'

ComponentName s = getComponentName();
if (s ==null)
    return;
@NonNull ComponentName componentName = getComponentName();
SearchableInfo searchableInfo = searchManager
   .getSearchableInfo(componentName); //<--  Warning Line

我可以找到Kotlin的示例,但是我不知道如何摆脱Java中的此警告?

1 个答案:

答案 0 :(得分:0)

当您有NullPointerException用以下消息调用方法时:

java.lang.NullPointerException: Attempt to invoke virtual method getSearchableInfo

通常,在未正确初始化调用方法(.getSearchableInfo())的类时,会出现此错误。

确保初始化SearchManager

  //Initialize SearchManager
  SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
  ...
  ...
  SearchableInfo searchableInfo = searchManager.getSearchableInfo(getComponentName());
相关问题