SMS 받는 것은 평범한 방법으로 구현했습니다.
onReceive 를 써서 받은 SMS 의 getMessageBody 를 sql record 에 저장하는 방법으로...
이클리스에서 에뮬레이터로 테스타할 때는 제대로 받고 작동합니다.
문제는 스마트폰으로 옮겨서 진짜 문자를 받으면 잘받지도 못하고
(이상하게 제 앱만 우선권이 부족한 지, 10만 정도로는..
그래서 Manifest 에서 priority 를 2147483647 로 설정했습니다.
그러니 이제는 들어오는 문자중 일부분만 받고 나머지는 잃어버리네요 -_-;;;
debug 로 확인해보니까 딱 40자만 받네요...
onReceive 모듈이 부족하게 만들어서 그런가.. 아니면 hTC 라서 그런가...
혹시 같은 문제가 있으신 분이 계시면, 어떻게 해결하셨는 지 조언 좀 부탁드립니다.
감사합니다.
mms 가 아니라 sms 문자를 읽으려는데... 그래도 40자 이상을 가져오려면 mms 가져오는 방식을 써야 하나요?
어떤 경우는 앞 만 읽어오고, 어떤 경우는 뒤만 읽어오던데... 휴.. 쉽지가 않네요...
아... 지금 구현하려는 것은 카드사 사용 내역의 SMS 를 읽는 것인데...
그렇다면, 가계부 등에서 구현된 것이 MMS 를 읽어오도록 되어 있는 건가 싶네요
디버거로 봐도 40자 이상인지 이하인지를 알 수 있는 방법은 없던데,
천상 무조건 MMS 읽기로 받아와야 겠네요...
리카엘님.
도움을 주셨는데.. mms 읽어오는 참고 자료 좀 부탁드려도 될까요?
디버그로 이리저리 까봐서 오류 원인을 겨우 찾아냈습니다.
같은 오류를 범하실 분이 계실까 알려드립니다~
같은 내용이라도 네이트온 같은 곳에서 sms 를 보내면 정상적으로 80자로 인식할 수 있습니다만,
스마트폰에서 받은 문자를 전달로 보내는 경우, 모든 문자가 2바이트로 인식이 되어 40자만 받네요.
즉, 스마트폰에서 전달로 sms 를 보내면 숫자, 영문, 특수기호 까지도 모두 2바이트로 인식이 됩니다.
참조하세요...
이글을 보다가 궁금한 부분이 있어서...SMS 단문은 예제도 잘 되어 있고 찾기 쉬워서 해결이 잘됩니다만...
MMS나 LMS(사실은 그게 그거 같기는 하지만...)의 경우는 통신사 마다 쫌씩 다르다는 것 말고는 알지 못하겠더군요...
제가 쓰는 SKT의 경우는 mms.nate.com ??? 뭐 이런 내용들이 붙어 오더라구요... 제목만 오고 내용은 url 을 열어 봐야 할 것 같은 생각이 들던데요... 범용으로 해결할 방법은 없는 건가요??? KT, LGT, SKT 다들 다른 방법으로 처리를 할까요???



