2012-01-24 4 views
3

에뮬레이터에서 보내는 SMS를 읽을 수있는 방법이 있습니까?에뮬레이터에서 SMS 보내기 앱을 확인하십시오.

D/SmsStorageMonitor( 738): SMS send size=0 time=1327423357467 

수신기와 컨텐츠를 얻을 수있는 방법이 있나요 다음 로그 캣에서

나는이 메시지가 표시?

보내는 메일이 에뮬레이터에 저장되지 않은 것처럼 보입니다. 즉, 메신저 앱에서 나에게 SMS가 표시되지 않는다는 의미입니다.

+1

SDK의 일부를 다시 작성하는 방법이 아닌 경우 궁금해 할 수 있습니다. 적어도 가상 라우터 뒤에서 SMS 메시지를 내보내는 방법은없는 것 같습니다. – ClassicThunder

답변

6

예는 앱에서 하나 개의 서비스를 만들어 나가는 모든 SMS를 그냥 코드를 아래 참조 관찰합니다.

public class SMSObserver extends BroadcastReceiver 
{ 
    static final String ACTION ="android.provider.Telephony.SMS_SENT"; 

    @Override 
    public void onReceive(Context context, Intent intent) 
    { 
     if (intent.getAction().equals(ACTION)) 
     { 
       //your action code here 
     }    
    } 
+0

당신은 내가 원하는 행동을 원한다면 나는이 행동이 어디 있는지를 어떻게 알 수 있습니까? 나는 보통 'platform/android **/data'에서 그것을 찾지 만, 나는이 행동을 찾지 못한다. – dreamtale

+0

이 링크를 방문하십시오 http://www.netmite.com/android/mydroid/frameworks/base/core/java/android/provider/Telephony.java –

+0

'Telephony' 클래스에 정의 된 의도를 찾지 못했습니다. – dreamtale

1

응용 프로그램에서 보내는 동안 보내는 데이터베이스를 사용하여 로컬 데이터베이스를 사용하는 경우 가능합니다.

+1

죄송합니다. 해당 항목을 삭제할 수 없습니다. 데이터베이스는 항상 비어 있습니다. – rekire

1

시도는 다음 코드와 같이 컨텐츠 해결을 준수합니다 :

ContentResolver contentResolver = getContentResolver(); 
contentResolver.registerContentObserver("content://sms", true, yourObserver);