안드로이드에서 문자(sms) 보내고 받기

안드로이드 개발 환경을 세팅하긴 했는데, 뭐부터 시작해야 할지 몰라 고민했다. 재밌게 프로그래밍하는 방법 중에는 간단한 예제들을 해보는 것인데, 구글링으로 SMS를 보내고 받는 프로그래밍 팁을 소개해주는 사이트를 발견했다. 상당히 자세히 설명해주고 있어 나같은 초보자에게 정말 유용한 것 같다.



http://www.androidside.com/bbs/board.php?bo_table=B46&wr_id=1278
주요 코드는 다음과 같다.
private void sendSMS(String phoneNumber, String message)
{       
    PendingIntent pi = PendingIntent.getActivity(this, 0,
        new Intent(this, AndroidSms.class), 0);               
    SmsManager sms = SmsManager.getDefault();
    sms.sendTextMessage(phoneNumber, null, message, pi, null);       
}   

public void onReceive(Context context, Intent intent) {
    Bundle bundle = intent.getExtras();        
    SmsMessage[] msgs = null;
    String str = "";            
    if (bundle != null)
    {
        Object[] pdus = (Object[]) bundle.get("pdus");
        msgs = new SmsMessage[pdus.length];            
        for (int i=0; i<msgs.length; i++){
            msgs[i] = SmsMessage.createFromPdu((byte[])pdus[i]);                
            str += "SMS from " + msgs[i].getOriginatingAddress();                     
            str += " :";
            str += msgs[i].getMessageBody().toString();
            str += "\n";        
        }
        Toast.makeText(context, str, Toast.LENGTH_SHORT).show();
    }
}
모든 코드를 이해하지는 못했지만, C#으로 WM프로그래밍하는 것만큼 간단한 것 같다. 그 다음 목표는 문자메시지함 보는 것...

댓글