2014년 6월 15일 일요일

[Android] 메시지 보내기(Send Msg)



메시지 보내기(Send Msg)


문자를 보내는 기능은 상대로 하여금 다시 한 번 확인을 할 수 있도록 사용됩니다.

보통 결제시스템에서 자주 사용하는 기능이며, 카카오톡이나 SNS 가 없던 향수시절에 문자를 많이사용했던 것 같습니다.
아무튼 안드로이드로 전화할수 있는기능은 저번에 알아보았다. 오늘은 문자를 보내는 기능에 대해서 간단하게 알아보겠습니다.

PendingIntent sentIntent = PendingIntent.getBroadcast(this, 0, new Intent(SENT), 0);
// 문자를 보낸 후에 상태를 확인하는 PendingIntent

PendingIntent deliveredIntent = PendingIntent.getBroadcast(this, 0,
 new Intent(DELIVERED), 0);
// 문자를 받은 후에 상태를 확인하는 PendingIntent

// PendingIntent 객체는 메시지를 전송 한 후 다른 액티비티를 보여주기 위해서 사용됩니다.

// PendingIntent  = Intent +  Delegation of authority + Later processing

SmsManager sms = SmsManager.getDefault(); 

sms.sendTextMessage(phoneNumber, null, message
sentIntent, deliveredIntent); 






메시지 보내기(SendMsg) 을 사용하기 위해서는


manifest에 permission을 지정해야만 합니다.


<manifest>
    
                  <uses-permission android:name="android.permission.READ_PHONE_STATE" />
                  <uses-permission android:name="android.permission.SEND_SMS" />
                  <uses-permission android:name="android.permission.RECEIVE_SMS" />

</manifest>



활용예제



Messenger.class

public class Messenger {

        private Context mContext;


        public Messenger(Context mContext) {

                      this.mContext = mContext;
        }

        public void sendMessageTo(String phoneNum, String message) {


                    SmsManager smsManager = SmsManager.getDefault();

                    smsManager.sendTextMessage(phoneNum, null, messagenull, null);

                    Toast.makeText(mContext, 
"Message transmission is completed.", 
                                                                                      Toast.LENGTH_SHORT).show();
       }

}


---------------------------------------------------------------------------------------------



Messenger messenger = new Messenger(getApplicationContext());
messenger.sendMessageTo("01012345678", "This is a test message.");














댓글 1개:

  1. 깔끔하게 정리되어 있어서 보기 좋네요. 잘 보고 갑니다.

    답글삭제