2012-04-18 2 views
1

네트워크 드라이브에서 ImageView 비트 맵을 설정하고 싶습니다. 하지만 Unable 서버에 연결할 수 없습니다 : 서버 (PASS)에 로그인 할 수 없습니다 : 141.11.11.247 오류가 발생했습니다. 당신의 도움에 대한URL의 이미지 뷰

public class ResimCek implements Runnable {

int resimID = 0; 

    public ResimCek(int parcaID) { 
     // store parameter for later user 
     resimID = parcaID; 
    } 

    public void run() { 

     int resID = getResources().getIdentifier(Integer.toString(resimID) , "tag", getPackageName()); 
     ImageView resim = (ImageView) findViewById(resID); 

     Drawable image = ImageOperations(getBaseContext(),"http://141.11.11.206/parca/" + Integer.toString(resimID) + ".jpg" ,"I" + Integer.toString(resimID) + ".jpg"); 
     // ****************************************************** 
     resim.setImageDrawable(image); // I GOT THE ERROR HERE!!! 
    } 
} 
private Drawable ImageOperations(Context ctx, String url, String saveFilename) { 
    try { 
     InputStream is = (InputStream) this.fetch(url); 
     Drawable d = Drawable.createFromStream(new URL(url).openConnection().getInputStream(),saveFilename); 
     return d; 
    } catch (MalformedURLException e) { 
     e.printStackTrace(); 
     return null; 
    } catch (IOException e) { 
     e.printStackTrace(); 
     return null; 
    } 
} 

public Object fetch(String address) throws MalformedURLException,IOException { 
    URL url = new URL(address); 
    Object content = url.getContent(); 
    return content; 
} 

감사 :

public class ResimCek implements Runnable {

int resimID = 0; 

    public ResimCek(int parcaID) { 
     // store parameter for later user 
     resimID = parcaID; 
    } 

    public void run() { 
     try { 
      ImageView resim = (ImageView) findViewById(resimID); 
      Bitmap bitmap = BitmapFactory 
        .decodeStream((InputStream) new URL(
          "file://141.11.11.247/foto_metod/Parca/" 
            + Integer.toString(resimID) + ".jpg") 
          .getContent()); 
      resim.setImageBitmap(bitmap); 
     } catch (MalformedURLException e) { 
      e.printStackTrace(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
    } 
} 

여기 내 마지막 코드 :

여기이 내 다운로드 개미 setBitmap 코드입니다.

답변

1

귀하의 매니 페스트 파일에 인터넷 권한을 신고하는 것을 잊어 버린 것일 수 있습니다.

+0

+1

와우 발견했습니다. 코드의 프로토콜은 http/https 대신 파일입니다. 어떤 종류의 프로토콜을 사용하여 이미지를 전송합니까? – mariotaku

+0

그리고 네트워크 드라이브에 로그인해야합니까? – mariotaku

0

다운로드 FtpClient

는 로그인 할 때 사용자 이름과 암호를 사용합니다. this 설명서를 보니 도움이 되길 바랍니다.

+0

내 이미지가 네트워크 드라이브에 저장되어 있으며 웹 서버가 아닙니다. 그래서 내가 파일 프로토콜을 사용합니다 –

+0

내 편집 된 코드를 사용하여 도움이되기를 바랍니다. –

+0

Suvam 님이 답장을 보내 주셔서 감사합니다.하지만 파일에 액세스하기위한 ftp 또는 http 프로토콜이 아닙니다. 그것은 단지 네트워크 머신이지 서버가 아닙니다. –