2017년 2월 16일 목요일

안드로이드 sms 읽기 (read sms) method


안드로이드 sms 읽기 (read sms) method 

androidManifest.xml에서의 퍼미션 설정 
<uses-permission android:name="android.permission.READ_SMS" />

/*
 * 문자 read 
 */
public synchronized int readSMSMessage() {
  Uri allMessage = Uri.parse("content://sms");
  ContentResolver cr = actMain.getContentResolver();
  Cursor c = cr.query(allMessage, 
 new String[] { "_id", "thread_id", "address", "person", "date", "body", "read" },
 null, null, 
 "date DESC");
   
  String string ="";
  int count=0;
  while  (c.moveToNext()) { 
  long messageId = c.getLong(0); 
  long threadId = c.getLong(1); 
  String address = c.getString(2); 
  long contactId = c.getLong(3); 
  String contactId_string = String.valueOf(contactId); 
  long timestamp = c.getLong(4); 
  String body = c.getString(5);
  long read     = c.getLong(6);
  
  if(read==0 && body.indexOf("인증번호")>-1){
 string = String.format("msgid:%d, threadid:%d, address:%s, " +
 "contactid:%d, contackstring:%s, timestamp:%d, body:%s", 
 messageId, threadId, address,
 contactId, contactId_string, timestamp, body);
 Log.d("maluchi", ++count +"st, Message: "+string);
 
 actMain.alertCommonMsg("읽지 않은 문서 : "+string);
  }
  }
  
  return 0;
 }

읽지 않은 문서중에 인증번호라는 텍스트가 있는것을 불러들여서 alert창으로 출력해줘요 




댓글 없음:

댓글 쓰기