마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

getContentResolver 오류 해결 방법

0 추천
private static class BrowserObserver extends ContentObserver {
     private static String lastVisitedURL = "";
     private static String lastVisitedWebsite = "";

     //Query values:
     final String[] projection = new String[] { Browser.BookmarkColumns.URL };  // URLs
     final String selection = Browser.BookmarkColumns.BOOKMARK + " = 0";  // history item
     final String sortOrder = Browser.BookmarkColumns.DATE;  // the date the item was last visited


     public BrowserObserver(Handler handler) {
         super(handler);
     }


     @Override
     public void onChange(boolean selfChange) {
         onChange(selfChange, null);
     }


     @Override
  public void onChange(boolean selfChange, Uri uri) {
         super.onChange(selfChange);

         //Context m_context = Settinglock.class;
   //Retrieve all the visited URLs:
         //ContentResolver cor = mContext.getContentResolver();
         Cursor cursor = mContext.getContentResolver().query(Browser.BOOKMARKS_URI, projection, selection, null, sortOrder);
   

         //Retrieve the last URL:
         cursor.moveToLast();
         final String url = cursor.getString(cursor.getColumnIndex(projection[0]));

         //Close the cursor:
         cursor.close();

         if ( !url.equals(lastVisitedURL) ) {  // to avoid information retrieval and/or refreshing...
             lastVisitedURL = url;

             //Debug:
             Log.d(url, "URL Visited: " + url + "\n");
         }
     }
 }

인터넷에서 url이 변경되면 그것을 캐치하는 동작을 만들고 있는데요

위의 소스에서 getContentResolver부분에서 자꾸 에러가 납니다

왜 에러가 나는지 알 수 있을까요?

hahihohy (300 포인트) 님이 2013년 11월 22일 질문

1개의 답변

0 추천
context.getApplicationContext() 으로 한번 바꿔서 해보세요
Ryann10 (530 포인트) 님이 2013년 11월 25일 답변
...