마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

서버에서 이미지 여러장 가져오는 법이 궁금합니다.

0 추천

음악 재킷 썸네일 이미지를 가져오려고 하는데요 현재 서버에 요청해서 디비에서 아티스트명 가져와서 로그로 잘 찍히는 것 까지 확인을 하였습니다. 이 아티스트명을 베이스 URL과 조합하여 가져오려고 하는데 개념이 잘 안잡힙니다..

해시맵을 사용해야 할 것 같은데 json parser 부분을 잘 이해하지 못했는지 몇주 째 해매고 있습니다..ㅠ

Gson 을 사용해서 아티스트명을 뽑아오긴 했는데 조합한 URL을 어떻게 리턴해줘야 될지도 모르겠고.. 답답하네요

도와주세요!.ㅠ

Json 결과는 글자수 제한 때문에 올리지 못했습니다. 

MainActivity.java

private String getMusicInfo(String url) {

    InputStream inputStream = null;
    String inputStr = "";

    HashMap<String, Object> map = new HashMap<String, Object>();

    try {
        URL getMusicUrl = new URL(url);
        conn = (HttpURLConnection) getMusicUrl.openConnection();
        conn.setDoInput(true);
        conn.connect();
        Log.d(TAGCP, "MADE POST REQUEST TO THE GIVEN URL");

        inputStream = conn.getInputStream();

        if (inputStream != null) {
            inputStr = Util.convertInputStreamToString(inputStream);
            Log.i(TAGCS, inputStr);

            Music list = new Gson().fromJson(inputStr, Music.class);
            for (Music.MusicInfo info : list.musicInfo) {
                System.out.println(baseURLforgetNewMusic + info.artists
                        + "/" + info.file_name);
            }

        } else {
            inputStr = "Did not work!";
            Log.d(TAGRR, inputStr);
        }
    } catch (Exception e) {
        Log.i("InputStream", e.getLocalizedMessage());
    }

    return inputStr;

}

 

미어 (180 포인트) 님이 2014년 8월 21일 질문
질문은 좀 더 구체적으로 해주세요. 호출할 url을 못 만든건지, 호출해서 json은 받아온건지, json 파싱이 안되는건지 구분이 안됩니다.
호출 할 url을  Music list = new Gson().fromJson(inputStr, Music.class);
            for (Music.MusicInfo info : list.musicInfo) {
                System.out.println(baseURLforgetNewMusic + info.artists
                        + "/" + info.file_name);
이 부분을 보시면 만들었긴했는데 그 URLs 들을 어떻게 다른 스레드에서 사용해야 될지 모르겠습니다. 왠지 저렇게 만들면안되고 맵 형태를 겟 해서 조합하여 써야 될 것 같은데 그렇게 하진 못했구요.. gson을 사용해서 for each 문 돌려서 사용했습니다.. 감이 오질 않내요..ㅠㅠ
url 만드는 함수를 return 값을 string으로 만드는 식으로하면 되지않나요?
해시맵으로 떨어지게끔 리턴해줄수있는 json parser는 없나요? 그게 훨씬 여러 곳에서 쓰일 때 편할 것 같아서요..
직접 만드시면 됩니다. json은 쓰기 쉽게 되어있어서 100라인 안쪽으로 원하는 파서가 가능해요
아 직접 만들어줘야되는군요.........그렇면 만약 json string 데이터가 1개 이상일 경우 맵에 어떻게 하나하나 put해줘야되나요.. for문으로 돌리면 계속 최근 값만 담길 것 같은데...;
제이슨 파서를 분명히 누군가가 만들어 놓았을텐데.. 제가 굳이 직접 만들어야하나요.. 분명히 있을 것 같은데 사용하기 편리하게.. 제가 못찾는건지 찾았느데 못 쓰는건지 모르겠네요..ㅠ
솔직히 질문에 쓴 시간이면 벌써 만들었을 듯....

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...