2012-12-14 3 views
1

특정 번호를 기준으로받은 편지함의 메시지에 대한 정보를 얻고 싶습니다. 목표를 달성하기 위해 다음 코드를 사용하고 있지만 예상대로 작동하지 않습니다.받은 편지함에서 메시지를 검색하지 못했습니다.

public void SendTheSmsToTheFolder(String NameOfContact,String Number,String FolderAddress,long TimeLimit) 
    { 
     m_NameOfContact = NameOfContact; 
     String SMS_URI_INBOX = "content://sms/inbox"; 
     Uri l_uri = Uri.parse(SMS_URI_INBOX); 

     Cursor l_SendTheSmsToTheFolderCursor = getContentResolver().query(l_uri, null, "address=?",new   String[]{Number.trim()},null); 
     if (l_SendTheSmsToTheFolderCursor.moveToFirst()) 
     { 
      int l_index_Address = l_SendTheSmsToTheFolderCursor.getColumnIndex("address"); 
      int l_index_Person = l_SendTheSmsToTheFolderCursor.getColumnIndex("person"); 
      int l_index_Body = l_SendTheSmsToTheFolderCursor.getColumnIndex("body"); 
      int l_index_Date = l_SendTheSmsToTheFolderCursor.getColumnIndex("date"); 
      do 
      { 
       String l_strAddress = l_SendTheSmsToTheFolderCursor.getString(l_index_Address); 
       String l_strbody = l_SendTheSmsToTheFolderCursor.getString(l_index_Body); 
       long l_longDate = l_SendTheSmsToTheFolderCursor.getLong(l_index_Date); 

       Log.v("Message: ","Body of the message is "+l_strbody); 
      } while (l_SendTheSmsToTheFolderCursor.moveToNext()); 
     } 
}  

난 카운트가 항상 무엇을 모르는 0.I을 보여주는 커서, 그 특정 전화 번호의 메시지가 상자에 있는지 확신합니다 그리고 난 크로스이 여기를 fact.But 확인해야 문제는. 나는 많이 수색했지만 알아낼 수 없다. 제발 도와주세요. 미리 감사드립니다.

답변

0

특정 번호의 메시지를 검색하려면이 코드를 시도해보십시오.

Uri uri = Uri.parse("content://sms/inbox"); 
    ContentResolver contentResolver = context.getContentResolver(); 
    String where = "address="+ phNum; //here you can use that particular number 
    Cursor cursor = contentResolver.query(uri, new String[] { "_id", "thread_id"}, where, null,null); 

저에게 효과적입니다. 문제가 해결되었는지 알려주세요.

관련 문제