안드로이드 개발 질문/답변
(글 수 45,052)
안드로이드 개발공부를 막 시작한 초보 입니다. SMS테스트를 해 보니 한글이 깨져서 나오네요. 혹시 이것에 대해 아시는 분 계신가요?
SDK 버전은 1.5입니다.
"Test안녕" 을 보내면 "Test??" 으로 나오네요.
에뮬레이터 상단에서도 그렇게 나오고 실습중인 코드는 아래와 같이 SMS 받아서 Toast로 띄워 주는 것입니다.
StringBuilder sb = new StringBuilder();
Bundle bundle = intent.getExtras();
if (bundle != null)
{
Object[] pdus = (Object[])bundle.get("pdus");
SmsMessage[] messages = new SmsMessage[pdus.length];
for (int i=0; i<pdus.length; i++)
{
messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
try
{
sb.append("From: " + messages[i].getOriginatingAddress() + "\n");
sb.append("Body: " + new String(messages[i].getDisplayMessageBody().getBytes("EUC-KR"), "UTF-8") + "\n");
}
catch (UnsupportedEncodingException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Log.e("SMS", sb.toString());
Toast.makeText(context, sb.toString(), Toast.LENGTH_LONG).show();
}
SDK 버전은 1.5입니다.
"Test안녕" 을 보내면 "Test??" 으로 나오네요.
에뮬레이터 상단에서도 그렇게 나오고 실습중인 코드는 아래와 같이 SMS 받아서 Toast로 띄워 주는 것입니다.
StringBuilder sb = new StringBuilder();
Bundle bundle = intent.getExtras();
if (bundle != null)
{
Object[] pdus = (Object[])bundle.get("pdus");
SmsMessage[] messages = new SmsMessage[pdus.length];
for (int i=0; i<pdus.length; i++)
{
messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
try
{
sb.append("From: " + messages[i].getOriginatingAddress() + "\n");
sb.append("Body: " + new String(messages[i].getDisplayMessageBody().getBytes("EUC-KR"), "UTF-8") + "\n");
}
catch (UnsupportedEncodingException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Log.e("SMS", sb.toString());
Toast.makeText(context, sb.toString(), Toast.LENGTH_LONG).show();
}