我有下面的代码段,但显示了警告方法调用'getSearchableInfo'可能会产生'NullPointerException'
ComponentName s = getComponentName();
if (s ==null)
return;
@NonNull ComponentName componentName = getComponentName();
SearchableInfo searchableInfo = searchManager
.getSearchableInfo(componentName); //<-- Warning Line
我可以找到Kotlin的示例,但是我不知道如何摆脱Java中的此警告?
答案 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());