android - 'void com.algolia.instantsearch.core.helpers.Searcher.destroy()' 在空对象引用上
问题描述
当我单击后退箭头离开活动时,我的应用程序崩溃并出现以下错误:
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.algolia.instantsearch.core.helpers.Searcher.destroy()' on a null object reference
public class DiscoverActivity extends AppCompatActivity {
private DatabaseReference mFriendDatabase, mFriendDatabase2;
private FirebaseAuth mAuth;
private String mCurrent_user_id;
private GridView contacts_list;
private EditText searchBox;
private ImageButton searchButon;
private static final String ALGOLIA_APP_ID = "I_dunno";
private static final String ALGOLIA_SEARCH_API_KEY = "I_dunno";
private static final String ALGOLIA_INDEX_NAME = "user_index";
private Searcher searcher;
private InstantSearch helper;
final DatabaseReference rootref = FirebaseDatabase.getInstance().getReference();
DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("users");
private ArrayList<CustomContact> contactList = new ArrayList<>();
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_findfriend);
Searcher searcher = Searcher.create(ALGOLIA_APP_ID, ALGOLIA_SEARCH_API_KEY, ALGOLIA_INDEX_NAME);
helper = new InstantSearch(this, searcher);
helper.search();
mAuth = FirebaseAuth.getInstance();
mCurrent_user_id = mAuth.getCurrentUser().getUid();
}
@Override
protected void onDestroy() {
searcher.destroy();
super.onDestroy();
}
}
我能够解决它。愚蠢的错误。我希望这可以帮助遇到类似问题的其他人。注意细节。
解决方案
我变了:
Searcher searcher = Searcher.create(ALGOLIA_APP_ID, ALGOLIA_SEARCH_API_KEY, ALGOLIA_INDEX_NAME);
到
searcher = Searcher.create(ALGOLIA_APP_ID, ALGOLIA_SEARCH_API_KEY, ALGOLIA_INDEX_NAME);
推荐阅读
- r - 如何在 Pycharm 中绘制 R 数据?
- vue.js - 修改vue js中的复选框行为
- javascript - Highcharts 时间线,gridLine 问题背后的标记
- javascript - 寻找没有增强现实的自然特征检测库
- java - 关于如何比较均匀地划分列表
- python - 为什么转换进入数据集而不是 Pytorch 中的 NN 本身?
- python - 在 ForeignKey 中创建或获取默认对象
- javascript - 想要在第一个语句完成执行后重定向反应
- vagrant - 初始化 Fabric CA 服务器时出错,go-sqlite3 需要 cgo 才能工作
- c# - 传递给 ViewDataDictionary 的模型项的类型是......但是这个 ViewDataDictionary 实例需要一个类型的模型项...... NET Core MVC