public Loader<Cursor> onCreateLoader(int id, Bundle args) { // Now create and return a CursorLoader that will take care of // creating a Cursor for the data being displayed. if(id == LOADER_ID_HISTORY) { return new CursorLoader(this, ActivityDiaryContract.Diary.CONTENT_URI, PROJECTION, SELECTION, null, null); }else{ return new CursorLoader(HistoryActivity.this, ActivityDiaryContract.DiaryImage.CONTENT_URI, new String[] {ActivityDiaryContract.DiaryImage._ID, ActivityDiaryContract.DiaryImage.URI}, ActivityDiaryContract.DiaryImage.DIARY_ID + "=? AND " + ActivityDiaryContract.DiaryImage._DELETED + "=0", new String[] {Long.toString(args.getLong("DiaryID"))}, null); } }
@Override public Loader<Cursor> onCreateLoader(int i, Bundle bundle) { return new CursorLoader(this, // Retrieve data rows for the device user's 'profile' contact. Uri.withAppendedPath(ContactsContract.Profile.CONTENT_URI, ContactsContract.Contacts.Data.CONTENT_DIRECTORY), ProfileQuery.PROJECTION, // Select only email addresses. ContactsContract.Contacts.Data.MIMETYPE + " = ?", new String[]{ContactsContract.CommonDataKinds.Email .CONTENT_ITEM_TYPE}, // Show primary email addresses first. Note that there won't be // a primary email address if the user hasn't specified one. ContactsContract.Contacts.Data.IS_PRIMARY + " DESC"); }
@SuppressLint("NewApi") public static String getRealPathFromURI_API11to18(Context context, Uri contentUri) { String[] proj = { MediaStore.Images.Media.DATA }; String result = null; CursorLoader cursorLoader = new CursorLoader( context, contentUri, proj, null, null, null); Cursor cursor = cursorLoader.loadInBackground(); if(cursor != null){ int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); cursor.moveToFirst(); result = cursor.getString(column_index); } return result; }
@Override public Loader<Cursor> onCreateLoader(int id, Bundle args) { String[] projection = { PetEntry._ID, PetEntry.COLUMN_NAME, PetEntry.COLUMN_BREED }; return new CursorLoader( this, PetEntry.CONTENT_URI, projection, null, null, null); }
/** * * @param id * @param args * @return */ @Override public Loader<Cursor> onCreateLoader(int id, Bundle args) { String[] projection = { PetEntry._ID, PetEntry.COLUMN_NAME, PetEntry.COLUMN_BREED, PetEntry.COLUMN_GENDER, PetEntry.COLUMN_WEIGHT }; return new CursorLoader( this, uriCurrentPet, projection, null, null, null); }
@Override public Loader<Cursor> onCreateLoader(int id, Bundle args) { //指定获取_id和display_name两列数据,display_name即为姓名 String[] projection = new String[]{ ContactsContract.Contacts._ID, ContactsContract.Contacts.DISPLAY_NAME }; CursorLoader loader = new CursorLoader( context, ContactsContract.Contacts.CONTENT_URI, projection, null, null, null ); return loader; }
@Test public void createCursorLoader_SessionQuery_Success() { // Given a mock cursor loader set up for a session query int sessionsLoaderId = SessionFeedbackModel.SessionFeedbackQueryEnum.SESSION.getId(); CursorLoader mockCursorLoaderSession = mock(CursorLoader.class); SessionFeedbackModel spyModel = spy( new SessionFeedbackModel(mMockUri, mMockContext, mMockFeedbackHelper)); doReturn(mockCursorLoaderSession).when(spyModel).getCursorLoaderInstance( any(Context.class), any(Uri.class), any(String[].class), any(String.class), any(String[].class), any(String.class)); // When ran with the session query CursorLoader createdCursorLoader1 = (CursorLoader) spyModel.createCursorLoader(sessionsLoaderId, mMockUri, null); // Then the returned cursor loader is the same as the mock one assertThat(createdCursorLoader1, sameInstance(mockCursorLoaderSession)); }
@Test public void createCursorLoader_SpeakersQuery_ReturnsCursor() { // Given a mock uri and mock cursor loader SessionDetailModel spyModel = spy( new SessionDetailModel(mMockUri, mMockContext, mMockSessionsHelper)); doReturn(mMockUri).when(spyModel).getSpeakersDirUri(any(String.class)); doReturn(mMockCursorLoader).when(spyModel).getCursorLoaderInstance( any(Context.class), any(Uri.class), any(String[].class), any(String.class), any(String[].class), any(String.class)); // When ran with mock uri and speakers query loader id CursorLoader createdCursorLoader = (CursorLoader) spyModel.createCursorLoader( SessionDetailModel.SessionDetailQueryEnum.SPEAKERS.getId(), mMockUri, null); // Then the returned cursor loader is the mock cursor loader assertThat(createdCursorLoader, sameInstance(mMockCursorLoader)); }
@Test public void createCursorLoader_FeedbackQuery_ReturnsCursor() { // Given a mock uri and mock cursor loader SessionDetailModel spyModel = spy( new SessionDetailModel(mMockUri, mMockContext, mMockSessionsHelper)); doReturn(mMockUri).when(spyModel).getFeedbackUri(any(String.class)); doReturn(mMockCursorLoader).when(spyModel).getCursorLoaderInstance( any(Context.class), any(Uri.class), any(String[].class), any(String.class), any(String[].class), any(String.class)); // When ran with mock uri and feedback query loader id CursorLoader createdCursorLoader = (CursorLoader) spyModel.createCursorLoader( SessionDetailModel.SessionDetailQueryEnum.FEEDBACK.getId(), mMockUri, null); // Then the returned cursor loader is the mock cursor loader assertThat(createdCursorLoader, sameInstance(mMockCursorLoader)); }
@Test public void createCursorLoader_FilteredVideosQuery_Success() { // Given a mock cursor loader set up for a video query int videosLoaderId = VideoLibraryModel.VideoLibraryQueryEnum.VIDEOS.getId(); when(mMockBundle.containsKey(VideoLibraryModel.KEY_TOPIC)).thenReturn(true); when(mMockBundle.containsKey(VideoLibraryModel.KEY_YEAR)).thenReturn(true); when(mMockBundle.getString(VideoLibraryModel.KEY_TOPIC)).thenReturn("Android"); when(mMockBundle.getInt(VideoLibraryModel.KEY_YEAR)).thenReturn(2012); // When ran with the video query CursorLoader createdCursorLoader = (CursorLoader) mSpyModel.createCursorLoader(videosLoaderId, Uri.EMPTY, mMockBundle); // Then the returned cursor loader is the same as the mock one assertThat(createdCursorLoader, sameInstance(mMockCursorLoader)); }
@SuppressLint("NewApi") public static String getRealPathFromURI_API11to18(Context context, Uri contentUri) { String[] proj = { MediaStore.Images.Media.DATA }; String result = null; try { CursorLoader cursorLoader = new CursorLoader(context, contentUri, proj, null, null, null); Cursor cursor = cursorLoader.loadInBackground(); if (cursor != null) { int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); cursor.moveToFirst(); result = cursor.getString(column_index); } } catch (Exception e) { result = null; } return result; }
@Override public Loader<Cursor> onCreateLoader(int i, Bundle bundle) { return new CursorLoader(this, // Retrieve data rows for the device user's 'profile' contact. Uri.withAppendedPath(ContactsContract.Profile.CONTENT_URI, ContactsContract.Contacts.Data.CONTENT_DIRECTORY), RegisterActivity.ProfileQuery.PROJECTION, // Select only email addresses. ContactsContract.Contacts.Data.MIMETYPE + " = ?", new String[]{ContactsContract.CommonDataKinds.Email .CONTENT_ITEM_TYPE}, // Show primary email addresses first. Note that there won't be // a primary email address if the user hasn't specified one. ContactsContract.Contacts.Data.IS_PRIMARY + " DESC"); }
public Loader<Cursor> onCreateLoader(int loaderID, Bundle bundle) { if (loaderID == mLoaderManagerId && (mUri != null || mVideoId != -1)) { String selection = (mVideoId != -1 ? BaseColumns._ID : MediaColumns.DATA) + "=?"; if(LoaderUtils.mustHideUserHiddenObjects()) selection += " AND "+LoaderUtils.HIDE_USER_HIDDEN_FILTER; CursorLoader cursorLoader = new CursorLoader( mContext, VideoStore.Video.Media.EXTERNAL_CONTENT_URI, VideoDbInfo.COLUMNS,selection , new String [] {(mVideoId != -1 ? String.valueOf(mVideoId) : mUri.toString())}, null); if(mLoaderManager==null) cursorLoader.registerListener(loaderID, this); return cursorLoader; } return null; }
@Override public android.support.v4.content.Loader<Cursor> onCreateLoader(int id, Bundle args) { return new android.support.v4.content.CursorLoader( mContext, MediaStore.Images.Media.EXTERNAL_CONTENT_URI, IMAGE_PROJECTION, "", null, IMAGE_PROJECTION[2] + " DESC"); }
/** * 根据uri获取图片路径 * * @param mContext * @param contentUri * @return */ @TargetApi(Build.VERSION_CODES.HONEYCOMB) public static String getPathFromUri(Context mContext, Uri contentUri) { String[] proj = {MediaStore.Images.Media.DATA}; CursorLoader loader = new CursorLoader(mContext, contentUri, proj, null, null, null); Cursor cursor = loader.loadInBackground(); int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); cursor.moveToFirst(); return cursor.getString(column_index); }
@Override public Loader<Cursor> onCreateLoader(int id, Bundle args) { final Activity activity = ImageClientFragment.this.getActivity(); return new CursorLoader(activity) { @Override public Cursor loadInBackground() { Bundle bundle = new Bundle(); bundle.putInt(ContentResolver.QUERY_ARG_OFFSET, mOffset.intValue()); bundle.putInt(ContentResolver.QUERY_ARG_LIMIT, LIMIT); return activity.getContentResolver() .query(ImageContract.CONTENT_URI, null, bundle, null); } }; }
/** * Extract the path from an uri * This code was published on StackOverflow by dextor * * @param contentUri uri that contains the file path * @return absolute file path as string */ private String getRealPathFromURI(Uri contentUri) { String[] proj = { MediaStore.Images.Media.DATA }; CursorLoader loader = new CursorLoader(this.getActivity(), contentUri, proj, null, null, null); Cursor cursor = loader.loadInBackground(); int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); cursor.moveToFirst(); return cursor.getString(column_index); }
@Override public Loader<Cursor> onCreateLoader(int id, Bundle args) { return new CursorLoader(this, LeaderContract.LeaderEntry.buildProfileUri(userId), null, null, null, null); }
@Override public Loader<Cursor> onCreateLoader(int id, Bundle args) { return new CursorLoader(this, LeaderContract.LeaderEntry.buildProfileUri(getWakatimeUid()), null, null, null, null); }