2012-04-05 3 views
0

우리의 앱에서 SMS를 보내고 받고 싶습니다. 성공적으로 보내지 만 수신은 웹상의 내 웹 사이트에서 보여지는 코드의 SmsMessage 클래스에 표시됩니다. 그래서 나는 SMS 수신을위한 수신 방법론을 원한다. 올바른 솔루션을 제안 해주십시오.Google의 Android 앱에서 SMS를받는 방법은 무엇입니까?

받기 코드 :

import android.content.BroadcastReceiver; 
import android.content.Context; 
import android.content.Intent; 
import android.os.Bundle; 
import android.telephony.gsm.SmsMessage; 
import android.widget.Toast; 

public class SmsReceiver extends BroadcastReceiver 
{ 

    @Override 
    public void onReceive(Context context, Intent intent) 
    { 
     //---get the SMS message passed in--- 
     Bundle bundle = intent.getExtras();   
     SmsMessage[] msgs = null; 
     String str = "";    
     if (bundle != null) 
     { 
      //---retrieve the SMS message received--- 
      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";   
      } 
      //---display the new SMS message--- 
      Toast.makeText(context, str, Toast.LENGTH_SHORT).show(); 
     }       
    } 
} 
+0

내가 여기에 비슷한 일을하고있는 중이 야! http://stackoverflow.com/questions/14452808/sending-and-receiving-mms-in-android – toobsco42

답변

3

import android.telephony.gsm.SmsMessage;

로 변경해야합니다

import android.telephony.SmsMessage;

+0

그리고 FYI의'telephony.gsm.SmsMessage'는 CDMA 폰과 GSM 폰 사이를 지정해야했을 때를위한 것입니다. 이제 안드로이드가 더 똑똑해 졌기 때문에'.gsm' 또는'.cdma'를 지정할 필요가 없습니다. – Jakar

관련 문제