이때 content:// 를 파싱(??) 하면 정보를 얻을 수 있다.
public String getFileName(Uri uri) { String result = null; if (uri.getScheme().equals("content")) { Cursor cursor = getContentResolver().query(uri, null, null, null, null); try { if (cursor != null && cursor.moveToFirst()) { result = cursor.getString(cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME)); } } finally { cursor.close(); } } if (result == null) { result = uri.getPath(); } return result; }
요점은 cursor 를 이용해 query 를 날려 의미하는 바를 알아내는 것이다.
제대로 안하면 커서 row에서 에러 나오고 쌩 고생을 할 수도있는데 요거면 잘된다.
혹시 전체 덤프가 필요하다면 datautils 의 dump를 이용하면 모두 로그로 찍어볼 수도 있다.