package com.example.test2;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.widget.Toast;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserFactory;
import java.io.BufferedInputStream;
import java.net.URL;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
public final static String PHARM_URL = "
http://www.kopis.or.kr/openApi/restful/pblprfr?service=d970767d8f5b4158a04ff59117e92c48&stdate=20140101&eddate=20140130&cpage=1&rows=10&prfnm =&prfstatus=02&signgucode=&shcate=";
public final static String KEY = "d970767d8f5b4158a04ff59117e92c48";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new PharmParser().start();
}
class PharmParser extends Thread{
@Override
public void run() {
try {
apiParserSearch();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
super.run();
}
public PharmParser() {
}
/**
* @throws Exception
*/
public void apiParserSearch() throws Exception {
URL url = new URL("
http://www.kopis.or.kr//openApi//restful//pblprfr?service=d970767d8f5b4158a04ff59117e92c48&stdate=20140101&eddate=20140130&cpage=1&rows=10&prfnm =&prfstatus=02&signgucode=&shcate=");
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
factory.setNamespaceAware(true);
XmlPullParser xpp = factory.newPullParser();
BufferedInputStream bis = new BufferedInputStream(url.openStream());
xpp.setInput(bis, null);
String tag = null;
int event_type = xpp.getEventType();
ArrayList<String> list = new ArrayList<String>();
String addr = null;
while (event_type != XmlPullParser.END_DOCUMENT) {
if (event_type == XmlPullParser.START_TAG) {
tag = xpp.getName();
} else if (event_type == XmlPullParser.TEXT) {
if (tag.equals("fcltynm")) {
addr = xpp.getText();
}
} else if (event_type == XmlPullParser.END_TAG) {
tag = xpp.getName();
if (tag.equals("prfnm")) {
list.add(addr);
}
}
event_type = xpp.next();
}
printList(list);
}
/**
* 결과 값을 출력해본다.
*
* @param list
*/
private void printList(ArrayList<String> list) {
for (String entity : list) {
System.out.println(entity);
}
}
private String getURLParam(String search) {
String url = PHARM_URL;// + "d970767d8f5b4158a04ff59117e92c48=" + KEY;
if (search != null) {
}
return url;
}
}
}
안녕하세요 이제 막 안드로이드를 시작했습니다 ㅜㅜ
계속 찾아봐도 원하는 정보를 얻기에는 어려움이 있어 답답한 마음에 올려봅니다
문법상 틀린 부분을 잘모르겠습니다.. 없는거 같아요...
왜 api를 불러오지 못하는지 모르겠습니다 ㅜㅜ
저 url에 있는 xml에서 공연장소명과 공연명 api를 불러오려고 합니다
HttpURLConnection때문인가요?? 어디서 어떤 코딩을 넣어야 하는지에 대한 자세한 설명이면 정말 감사하겠습니다 ㅠㅠ