public class SurView extends SurfaceView implements SurfaceHolder.Callback{
// cache bitmap
 Context            mContext;
    SurfaceHolder   mHolder;
    abThread     mThread;
    //-------------------------------------
    //      생성자
    //-------------------------------------
    public SurView(Context context, AttributeSet attrs) {
         super(context, attrs);

         SurfaceHolder holder = getHolder();
         holder.addCallback(this);

         mHolder = holder;                             // 생성한 holder를 전역변수에 저장
         mContext = context;                        // 인수로 넘어 온 context를 전역변수에 저장 
         mThread = new abThread();         // GameThread 생성
    }
    //-------------------------------------
    //   SurfaceView가 만들어질 때 호출됨
    //-------------------------------------
    public void surfaceCreated(SurfaceHolder holder) {
         mThread.start();                             // Thread 시작
    }
    //-------------------------------------
    //    SurfaceView의 크기가 바뀔 때 호출됨
    //-------------------------------------
    public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
    }
    //-------------------------------------
    //   SurfaceView가 종료될 때 호출됨
    //-------------------------------------
    public void surfaceDestroyed(SurfaceHolder holder) {
    }
 
//-------------------- 여기서 부터는 스레드 영역 ----------------------------
 
     class abThread extends Thread {
          Bitmap imgBack;
  
          //-------------------------------------
          //    Thread Constructor
          //-------------------------------------
          public GameThread()  {
               Display display = ((WindowManager) mContext.getSystemService(mContext.WINDOW_SERVICE))
                                        .getDefaultDisplay();
               int width  = display.getWidth();                          // 화면의 폭
               int height = display.getHeight();                         // 화면의 높이
               URL imUrl;
try {
imUrl = new URL("http://news.donga.com/THUMB/2012/08/22/48798587.1.thumb.jpg);
 URLConnection  conn = imUrl.openConnection();
    conn.connect();

    InputStream is = conn.getInputStream();
    BufferedInputStream bis = new BufferedInputStream(is);
               imgBack = BitmapFactory.decodeStream(bis);
             
               imgBack = Bitmap.createScaledBitmap(imgBack, width, height, true);  
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
                 // 이미지 확대
          }
 
          //-------------------------------------
          //    Thread run
          //-------------------------------------
          public void run() {
                Canvas canvas = null;                                                 // canvas를 만든다
               while (true) {
                      canvas = mHolder.lockCanvas();                           // canvas를 잠그고 버퍼 할당
                      try {
                             synchronized (mHolder) {                               // 동기화 유지
                                    canvas.drawBitmap(imgBack, 0, 0, null);    // 버퍼에 그리기
                            }
                      } finally {
                             mHolder.unlockCanvasAndPost(canvas);         // canvas의 내용을 View에 전송  
                      }
               } // while
          } // run
        
     } // End of Thread
}

이미지 URL 주소를 받아와서 서피스뷰를 이용해서 뛰우우는 것입니다.
실행하면 빨간색으로 된부분에서 오류가나서 안됩니다..
뭐때문인지 알려주시면 감사하겠습니다.
로그 파일로 올렸습니다.