2012-05-30 6 views
0

SMS 루프백을 달성하고자합니다. 즉, 동일한 애플리케이션에서 SMS를 송수신하고 싶습니다. 이를 위해 BroadcastReciever을 확장하고 onReceive() 메서드를 구현 한 클래스를 만들고 관련 권한을 선언했습니다.안드로이드 - SMS 루프백

텔넷을 사용하여 SMS를 보내 구현을 확인했습니다. 텔넷 프로세스를 자동화하고 싶습니다. 즉, SMS를 보내어 응용 프로그램 자체를 테스트하는 것입니다. 이를 위해, 나는 주요 활동에 다음 메소드를 호출하지만, BroadcastReceiver는 호출되지 않습니다 :

private final void sendSMS() { 
    final TelephonyManager telMgr = (TelephonyManager) 
      getSystemService(Context.TELEPHONY_SERVICE); 
    final int len = telMgr.getLine1Number().length(); 
    final String phoneNum = telMgr.getLine1Number().substring(len - 4, len); 
    final String msg = "msg"; 
    SmsManager.getDefault().sendTextMessage(phoneNum, null, msg, null, null); 
} 

모든 단서가 무슨입니다 ...?

업데이트 : 위의 코드는 에뮬레이터 용입니다.

답변

0

잘 모르겠는지 잘 모르겠지만 에뮬레이터에서 SMS를 보내고 있습니까? 내가 아는 한, 그건 불가능합니다. 다른 에뮬레이터를로드하고 그 사이에 메시지를 보냅니다.

텔넷 명령이 작동하기 때문에

, 당신의 브로드 캐스트 리시버는 아마 제대로 구현됩니다 만, 당신은 아마 ... 하드 당신이 :)

+0

이 답장을 보내 주셔서 감사 볼 수있는 코드를 해결하기 위해 어쨌든 그것을 위해 코드를 첨부해야한다. 에뮬레이터에서 SMS를 다시 보낼 수 없다고 주장하는 이유는 무엇입니까? – MrRoth

+0

나는 그것이 나의 에뮬레이터에서 일한 적이 없기 때문에 그것을 주장한다. 내장 된 SMS 응용 프로그램이나 SmsManager를 통해서가 아닙니다. 내장 된 SMS 응용 프로그램을 사용할 때 SMS는 보낸 것으로 표시되지만 절대로받지 못합니다. ( – Ole

+0

그게 정확히 문제입니다. – MrRoth

관련 문제