在我的应用程序中,我有这样的代码:
class MyFragment extends Fragment {
ContentProviderClient client;
@Override
public void onCreate(Bundle savedInstanceState) {
...
client = getActivity().getContentResolver().acquireContentProviderClient("SOME_AUTHORITY");
}
@Override
public void onDestroy() {
client.release();
...
}
}
它似乎工作正常,但我有点担心是否可以在片段生命周期中留下client
未释放?我真的无法找到任何表明这是好事还是坏事的事情。
答案 0 :(得分:0)
您需要清理所有资源。应该调用release()让android知道不需要内容提供者,并且可以清理资源。另请注意,除非您使用已返回的数据,否则不要调用release()。
查看ContentProviderClient javadocs以获取更多信息。