這並不總是發生,所以我無法正確理解發生了什麼事情:我的應用程序需要修改一張圖片,然後將其保存在外部存儲中。如果我嘗試在應用程序中打開一個新的保存的圖片從一個文件管理器,而不是從畫廊,它執行cursor.getCount()時崩潰,在DDMS我讀錯誤:「光標沒有關閉最後」這是一塊代碼問題的地方,我可以發佈更多,如果有必要,謝謝! ps此代碼是從其他答案取自這裏在stackoverflow,因爲你可以指望我不是專家,所以請耐心等待我,謝謝 pps我看不到在圖庫中的立即圖像保存後,當他們出現在畫廊這個錯誤消失。執行cursor.getCount()(Android)時發生崩潰
public static int getOrientation(Context context, Uri photoUri) {
/* it's on the external media. */
Cursor cursor = context.getContentResolver().query(photoUri,
new String[] { MediaStore.Images.ImageColumns.ORIENTATION }, null, null, null);
if (cursor.getCount() != 1) { //HERE IS THE PROBLEM
return -1;
}
cursor.moveToFirst();
return cursor.getInt(0);
}
首先,在使用遊標的任何方法之前,檢查遊標是否不爲空。 –