안녕하세요.

안드로이드펍에서 많은 자료 보면서 배우고 있습니다.

요즘 한가지 고민거리가 좀 있어서.. 게시물로서 질문을 드립니다. 도움을 부탁드립니다..^^

 

저는 갤럭시노트2의 미국 Verizon 향(SCH-I605)을 쓰고 있습니다. 이유는 CDMA망에서 쓰고 싶어서 인데요.

실제로 017-7XX-XXXX로 개인인증 및 개통해서 사용하고 있습니다.

OS는 안드로이드 4.1.1 젤리빈 입니다.

 

2G CDMA에서 데이터 네트워크도 되고 문자메세지도 되고 다 좋은데.. 한가지 문제가 좀 있습니다.

"내 전화번호"가 문제인데요.

 

이 기계는 CDMA도 되지만, UMTS/HSDPA와 LTE도 됩니다. (물론, LTE는 국내에서 사용 불가지만) LTE가 들어가 있다보니 미국에서도 SIM을 꽂아야 하나 봅니다.

CDMA로 개통하고 전원을 켜면, SIM을 넣으라고 경고가 계속 나타나서 가지고 있는 아무 SIM이나 꽂으면 일단 경고는 없어집니다.

데이터 네트워크를 CDMA로 세팅해놓으면 CDMA망으로 전화/문자/데이터 다 됩니다.

 

그런데, 환경설정 - 휴대폰 정보 - 상태  - 내 전화번호를 보면 SIM에 있는 번호가 나타납니다.

전화통화하면 상대방에는 제 017 번호가 찍히고, 문자가 와도 017로 오는 문자는 잘 수신이 됩니다. 그러나 내 전화번호가 SIM에 있는

엉뚱한 번호가 들어가 있어서 문자를 보낼때면 엉뚱한 번호가 발신자로 찍히게 됩니다.

물론, SIM을 빼면 내 전화번호에는 017번호가 들어가 있고, 문자 발신시에도 017번호로 상대방한테 찍히고 정상동작을 하는데

SIM이 없다는 경고가 계속 떠 있고, 3G 데이터 상태가 나타나지 않습니다. (실제로 모바일 데이터는 동작하지만..)

 

즉, 문제는 SIM을 꽂은 상태에서 CDMA 네트워크에 붙어도 안드로이드가 "내 전화번호"는 SIM에 있는 MSISDN인 010XXXXXXXX로

인식하는것이 문제입니다.

 

현재는 아마도 부팅할 때, 무조건 SIM의 번호를 먼저 인식하고 SIM이 없을때에는 CDMA의 MIN을 인식하게끔 동작하는 것 같습니다.

이런 동작과정을 폰이 부팅할때 "내 전화번호"를 CDMA 네트워크 일때는 CDMA의 MIN으로 인식해야 하고, GSM/UMTS 네트워크 일때에는 SIM의 MSISDN으로 인식하도록 수정하고 싶은데 어느부분을 수정해야 할지 모르겠습니다.  

느낌상으로는 아마도 framework.jar/framework.odex를 건드려야 할듯 한데 어느부분을 손대야 할지 잘 모르겠네요.

 

이 부분에 대해 아시는 분의 조언을 부탁드립니다.

 

또는, 위의 내용처렁 수정이 어렵다면 "내 전화번호"를 제가 원하는 하나의 값으로 fix시키는 방법이 있을까요? 

 

감사합니다.