public class MainActivity extends Activity {
private EditText userid;
private EditText passwd;
private Button login;
private TextView text;
Handler handler = new Handler();
String result;
ArrayList<String> items = new ArrayList<String>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
userid = (EditText) findViewById(R.id.userid);
passwd = (EditText) findViewById(R.id.passwd);
login = (Button) findViewById(R.id.login);
text = (TextView) findViewById(R.id.text);
// 버튼 이벤트 처리
login.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
showDialog(1);
String userid1 = userid.getText().toString();
String passwd1 = passwd.getText().toString();
// 서버에 넘겨줄 파라미터 저장
ArrayList<NameValuePair> list = new ArrayList<NameValuePair>();
list.add(new BasicNameValuePair("userid1", userid1));
list.add(new BasicNameValuePair("passwd1", passwd1));
final String urlPath = "http://url주소/xml/Xml.php?userid="
+ userid1 + "&passwd=" + passwd1;
// 네트워크 연동을 위한 작업 스레드 생성
Thread t = new Thread(new Runnable() {
@Override
public void run() {
InputStream is = requestGet(urlPath);
final String result = streamToString(is);
//final String resultXml = streamToString(is);
//final int a = Integer.parseInt(result);
handler.post(new Runnable() {
@Override
public void run() {
if (result !=null) {
text.setText(result);
} else {
text.setText("로그인 실패");
}
removeDialog(1);
}
});
}
});
t.start();
}
});
/*try {
XmlPullParser parser = getResources().getXml(R.id.text);
while(parser.getEventType() != XmlPullParser.END_DOCUMENT){
if(parser.getEventType() == XmlPullParser.START_TAG){
if(parser.getName().equals(parser)){
items.add(parser.getAttributeValue(0));
}
}
parser.next();
}
} catch (Throwable t) {
// TODO: handle exception
}
*/
} // end onCreate
// Get 요청처리 메소드
public InputStream requestGet(String requestUrl) {
try {
// 요청하기
HttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet(requestUrl);
HttpResponse response = client.execute(request);
// 응답하기
HttpEntity entity = response.getEntity();
InputStream is = entity.getContent();
return is;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}// end requestGet
//
public String streamToString(InputStream is) {
StringBuffer buffer = new StringBuffer();
try {
BufferedReader reader = new BufferedReader(
new InputStreamReader(is));
String str = reader.readLine();
while (str != null) {
buffer.append(str);
str = reader.readLine();
}
reader.close();
} catch (Exception e) {
e.printStackTrace();
}
return buffer.toString();
}// end streamToString
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
앱에서 웹에 호출하여 로그인 성공시 php파일에 있는 텍스트를 불러오는 작업을 하고있습니다.
그런데 다음과 같이 id에서 kim name에서 kdl만 불러오는것이 아닌 소스 전체를 다불러오는데요
이것을 필요한 부분만 불러올 수 있도록 하는법이 알고싶습니다.
<data> |
|
<id>kim</id> |
|
<name>kdl</name> |
</data> |
|