1
这是我第一次使用装载机。我正在使用加载器来检索电话的联系人列表。装载机不执行任务异步
这里是我的代码:
@SuppressLint("InlinedApi")
@Override
public Loader<Cursor> onCreateLoader(int loaderId, Bundle args) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
String[] projection = { Contacts._ID, Contacts.LOOKUP_KEY, Contacts.DISPLAY_NAME_PRIMARY, Contacts.PHOTO_THUMBNAIL_URI };
return new CursorLoader(this, Contacts.CONTENT_URI, projection, null, null, null);
} else {
String[] projection = { Contacts._ID, Contacts.LOOKUP_KEY, Contacts.DISPLAY_NAME };
return new CursorLoader(this, Contacts.CONTENT_URI, projection, null, null, null);
}
}
@SuppressLint("InlinedApi")
@Override
public void onLoadFinished(Loader<Cursor> loader, Cursor cursor) {
if (cursor.getCount() > 0) {
//PARSE DATA
}
cursor.close();
}
,并在onCreate()
方法我称之为
getSupportLoaderManager().initLoader(0, null, this);
我得到的联系人列表,但装载机在另一个执行主线程的查询,而不是线程,阻止用户界面。
请帮忙吗?
结帐此问题已报告:https://code.google.com/p/android/issues/detail?id=68013 – dhams