안드로이드 개발 질문/답변
(글 수 45,052)
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
factory.setNamespaceAware(true);
XmlPullParser parser = factory.newPullParser();
try{
// text는 URL 변수입니다.
parser.setInput(text.openStream(), null);
}catch(IOException e){ e.printStackTrace(); };
int parseEvent = parser.getEventType();
while(parseEvent != XmlPullParser.END_DOCUMENT) {
switch (parseEvent){
case XmlPullParser.START_TAG :
tag = parser.getName();
if (tag.equals("title")){
.
xmlData = new XmlData();
xmlData.d_title = parser.nextText();
}
if (tag.equals("total")){
xmlData.d_total = parser.nextText();
}
if (tag.equals("description")){
xmlData.d_description = parser.nextText();
}
if (tag.equals("link")){
xmlData.d_link = parser.nextText();
}
break;
case XmlPullParser.END_TAG :
tag = parser.getName();
if( tag.equals("item")){
m_xmlData.add(xmlData);
xmlData = null;
}
}
parseEvent = parser.next();
}다음과 같이 평범하게 XML PullParser로 Open API 코딩을 하였습니다,
에뮬레이터에서는 실행이 아주 잘 되는데
기기에서 돌리면 (갤럭시 시리즈) 잘 되다가도
어느시점에서 작동이 멈춥니다. 느리게라도 되면 좋은데, 앱 자체가 먹통이 되어버립니다.
이렇게 PullParser 사용하는데서 액티비티 넘어가면 PullParser를 (인터넷 연결을) 끊어 줘야 될거같은데,
어떤 방법이 있나요.,.. !?
LogCat 확인해보니
09-29 18:16:36.003: ERROR/NetworkManager(1197): 0 Other NetWork isConnected()
09-29 18:16:36.003: ERROR/NetworkManager(1197): NetworkInfo:NetworkInfo: type: MOBILE[UMTS], state: CONNECTED/CONNECTED, reason: apnSwitched, extra: web.sktelecom.com, roaming: false, failover: false, isAvailable: true
09-29 18:16:35.933: ERROR/wpa_supplicant(22368): TI: Driver not initialized yet
이런 메시지도 계속 뜨네요, ( 위 메시지가 떠도 프로그램이 잘 될때는 잘 돌아갑니다,,,)



