메뉴 건너뛰기

조회 수 7221 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

옮겨 놓다가 보니자꾸 안되서 애먹었는데,, 이상하게 네트워크관련해서 

Manifest 요부분에서 

<uses-sdk

  android:target~~/>어쩌구 부분을 지웠더니 된다. 

xml 파싱할때도 네트워킹이니까 주의 하도록해야겠다.

 

xml파서를 하다보니 참이상하게도,, xml데이터가안열리네,,,,이건뭔지

나의 데이터형식은

<item>

<title>~~~~`</title>

<link>~~</link>

</item>

 

<item>

<title>~~~~`</title>

<link>~~</link>

</item>

 

<item>

<title>~~~~`</title>

<link>~~</link>

</item>

.....

이런형식이었는데 자꾸 열면 인터넷상에서 에러가났다.흠 가장상위 태그는 하나만해야되서그런건가??,,, 그래서 고쳐보니

 

<item>

<title>~~~</title>

<link>~~~</link>

 

 

<title>~~~</title>

<link>~~~</link>

 

 

<title>~~~</title>

<link>~~~</link>

</item>

이런식으로 고치니까 웹상에서 문제없이 잘됫다. 이것 또한 참고해야겠다. 일단 오늘은 xml파싱으로 데이터를 가져오는 연습을했는데 이것도 안되다가 되서 너무좋다 ㅜㅜ 근데 옛날꺼라 참고한 곳의 링크가 다사라져버렸네 ㅜㅜ(능력자님들죄송합니다 ㅜㅜ)

 

import java.io.InputStream;

import java.net.URL;

import java.util.ArrayList;

 

import org.xmlpull.v1.XmlPullParser;

import org.xmlpull.v1.XmlPullParserFactory;

 

import android.os.Bundle;

import android.app.Activity;

import android.util.Log;

import android.view.Menu;

import android.widget.TextView;

 

public class XMLText extends Activity{

//여기다가 내가 파싱한것중 title만 뽑아서 가져올것이다. 후에 어레이로변환해서 데이터로 쓰기에는 너무좋은 방법인것같다.

ArrayList<String> titleList;

 

@Override

protected void onCreate(Bundle savedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_xmltest);

 

String Buffer sb=new StringBuffer();

TextView text=(TextView) findViewById(R.id.text);

//xml파싱시작해야디!!일단 getXmlData()란메소드를 호출하여 데이터가져올것이다.

titleList=getXmlData();

 

for(int i=0;i<titleList.size();i++)}

sb.append(titleList.get(i)).append("\n\n");

}

text.setText(sb.toString());

}

//파싱할것들을 정의해보자 

private ArrayList<String> getXmlData(){

String res="이부분은 내가가져올 서버의 xml이담긴곳의주소를입력한다.";

titleList=new ArrayList<String>();

 

try{//일단 PullParser 인스턴스하나먼저 가져오자

XmlPullParserFactory factory=XmlPullParserFactory.newInstance();

//이것은 네임스페이스를 인지할건지 말건지를 고른다 일단 나는인지하는것으로 했고 디폴트값은 false 이다.

참고하자.이부분에서 네임스페이스에대한내용이상세하다 

blog.naver.com/hkpking?Redirec=Log&logNo=30134247888 (감사합니다.능력자님)

factory.setnamespaceAware(true);

//그뒤에 factory로하여금 pullparser를 가져온다.

XmlPullParser xpp=factory.newPullParser();

//내가지정한 유알엘로 들어가고 

URL url=new URL(res);

//이부분에서 고생을 많이했는데, 역시나 문제는

Manifest에서 INTERNET허용 그리고 책에서 보면 null이 아닌 인코딩값이있는데 내컴퓨터가이상한건지 utf-8이런거하면안된다,,,그래서나는 null

xpp.setInput(url.openStream(),null);

//이것 xml로하여금 데이터를 찾기위해쓰는것이다.

int eventType=xpp.getEventType();

//만약에 데이터가 끝까지가지않았으면 그냥돌아라 라는얘기

while(eventType!=XmlPullParser.END_DOCUMENT){

//만약에 태그가 처음시작되는지점이라면 

if(eventType==XmlPullParser.START_TAG){

//그리고 그태그가 title이면 

if(xpp.getName().equalsIgnoreCase("title"){

//가져오자 그리고넘어가자 정말 좋은것 같다. 

nextText()요녀석이 2개의 역활이나하니까 ㅋ

String title=xpp.nextText();

titleList.add(title);

}

}

//첫번째 메인 태그가 돌았으면 이제그다음태그로간다.

eventType=xpp.next();

}

}catch(Exception e){

e.printStackTrace();

Log.d("asd",e.getMessage());

}

return titleList;

}

}

오늘 xml파싱도 성공!! 아무튼 로직보면 titleList궂이 전역선언안해도 되는데,,그냥이것저것 수정하다보니,,좀무의만 코드가 되었다... 하지만 ㅋ뭐실행잘되니,,, 나중에 한꺼번에 고칠때는 더효율적인 코드로 가야지 ,,!!!

이상열정남이었습니다. 사랑합니다!!


List of Articles
번호 제목 날짜 조회 수
97 하이브리드 앱에서의 세션관리(로그인 상태 유지) 2018.12.27 5001
96 WebView를 사용할때 HttpClient를 이용한 Session 유지 2018.12.27 4381
95 안드로이드 - 에디트텍스트(EditText) 사용법 정리 file 2021.03.29 2755
94 WebView에서 카메라 및 이미지 업로드 (선택적용가능) file 2020.12.14 2692
93 구글맵으로 GPS 현재위치 실시간 연동하기 file 2020.12.14 2446
92 위젯 업데이트 주기 빠르게 하기 2018.10.02 2142
91 안드로이드 - 네비게이션 드로어(Navigation Drawer)를 활용하여 슬라이드 메뉴 구현하기 file 2021.04.01 1858
90 MediaPlayer 클래스 사용법 file 2018.10.02 1803
89 Android Studio에서 SQLCipher 라이브러리 추가 방법 file 2018.10.02 1776
88 안드로이드 - 날짜 및 시간 정보 입력받기 (DatePickerDialog / TimePickerDialog) file 2021.04.01 1764
87 안드로이드 WebView 에서 tel: 이 되지않는 경우. 2018.10.02 1633
86 Apk manager 이용해 Decompile (디컴파일) 하기 file 2021.03.16 1620
85 안드로이드 - BottomNavigationView 사용하여 하단 메뉴 만들기 file 2021.04.02 1439
84 Volley 로 웹요청하고 응답받기2 - Post방식 , 로그인-회원가입 (php,mysql 연동) file 2020.12.14 1431
83 안드로이드 - 타이머(Timer) 구현하기 2021.04.01 1368
82 [하이브리드앱] userAgent를 이용해서 웹 / 앱 접속 구분하기 2021.09.30 1282
81 안드로이드 - switch를 사용법 및 구현 file 2021.04.02 1280
80 안드로이드 - 텍스트뷰(TextView) 사용법 정리 file 2021.03.31 1248
79 안드로이드 - KeyEvent(키 이벤트) 처리 file 2021.04.02 1211
78 WebView 작업할때 Net::ERR_UNKNOWN_URL_SCHEME 에러 발생할때 (전화걸기,문자보내기 안된다) 2020.12.14 1067
Board Pagination Prev 1 ... 4 5 6 7 8 9 10 11 12 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved