我想從我的application.It正在開放的Android系統自身的攝像頭應用程序!但是我有一個問題,當我想要得到這樣的信息,Android的保存捕捉的圖像以Android相機拍攝的
- 圖像ID
- 圖像顯示名稱
- 影像標題
- 圖像數據
- 影像尺寸
- 圖像拍攝日期
應存儲在MediaStore.I成功地讓圖像的path.After,我必須讓信息像上面,但是當我嘗試獲取信息,應用程序將引發異常。
部分我的代碼是這樣的:
while(cursor.moveToNext())
{
Date date = new Date(Long.valueOf(cursor.getString(5)));
SimpleDateFormat dateF = new SimpleDateFormat("yyyy/MM/dd");
SimpleDateFormat timeF = new SimpleDateFormat("HH:mm");
imageListInfo.add(
cursor.getString(0) + ";"
+ cursor.getString(1) + ";"
+ cursor.getString(2) + ";"
+ cursor.getString(3) + ";"
+ cursor.getString(4) + ";"
+ dateF.format(date) + ";"
+ timeF.format(date)
);
}
之前,我捕獲並保存從默認攝像機應用程序從我的應用程序調用的照片尚未收到任何問題。
我覺得有一個問題應該解決。我怎樣才能保存圖像與其信息捕獲的照片,而無需從我的應用程序調用?
編輯:提前
越來越ID,當它發生的情況 「cursor.getString(0)」 代碼
android.database.StaleDataException: Attempting to access a closed CursorWindow.Most probable cause:
cursor is deactivated prior to calling this method.
at android.database.AbstractWindowedCursor.checkPosition(AbstractWindowedCursor.java:139)
at android.database.AbstractWindowedCursor.getString(AbstractWindowedCursor.java:50)
at android.database.CursorWrapper.getString(CursorWrapper.java:114)
at com.canberk.data.warehouse.BaseActivity.indexingForImageMediaStore(BaseActivity.java:313)
at com.canberk.data.warehouse.BaseActivity$BackGroundWorker.doInBackground(BaseActivity.java:109)
at com.canberk.data.warehouse.BaseActivity$BackGroundWorker.doInBackground(BaseActivity.java:1)
at android.os.AsyncTask$2.call(AsyncTask.java:264)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
at java.util.concurrent.FutureTask.run(FutureTask.java:137)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:208)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
at java.lang.Thread.run(Thread.java:856)
感謝
使用LogCat檢查與您的異常相關的Java堆棧跟蹤。如果您不瞭解堆棧跟蹤,請通過「編輯」鏈接將其添加到您的問題中。另請注意,在任何給定設備上不需要默認相機應用程序將生成的圖像放入「MediaStore」中。 – CommonsWare