안드로이드 개발 질문/답변
(글 수 45,052)
import android.app.Activity; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.os.Bundle; import android.os.Handler; import android.view.KeyEvent; import android.view.View; import android.view.Window;
public class CoolGuy extends Activity { /** Called when the activity is first created. */ private static Bitmap Img[] = new Bitmap[10];//화면에 그려주는 이미지의 수 private static Canvas canvas; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(new CoolGuyView(this)); } private class CoolGuyView extends View{
public CoolGuyView(Context context) { super(context); } Handler handler = new Handler(); protected void onDraw(Canvas can){ new Thread(new Runnable(){ public void run(){ while(true){ try { handler.post(new Runnable(){ public void run(){ sexyImage(); }
private void sexyImage() { Img[0] = BitmapFactory.decodeResource(getResources(),R.drawable.bada01); canvas.drawBitmap(Img[0],0,0,null); } }); Thread.sleep(200); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }).start(); } } }
위에 소스와 같이 작성하고 에뮬로 실행하니 아래와 같은 에러 메세지가 출력되었습니다.
11-23 16:04:36.637: ERROR/AndroidRuntime(223): ERROR: thread attach failed
11-23 16:04:36.685: DEBUG/dalvikvm(223): LinearAlloc 0x0 used 636388 of 5242880 (12%)
11-23 16:04:36.706: INFO/ActivityManager(53): Start proc com.goolguy for activity com.goolguy/.CoolGuy: pid=237 uid=10035 gids={}
11-23 16:04:37.046: DEBUG/ddm-heap(237): Got feature list request
11-23 16:04:37.167: INFO/ARMAssembler(53): generated scanline__00000177:03515104_00000001_00000000 [ 73 ipp] (95 ins) at [0x413f28:0x4140a4] in 1339242 ns
11-23 16:04:37.235: INFO/ARMAssembler(53): generated scanline__00000077:03545404_00000004_00000000 [ 47 ipp] (67 ins) at [0x4140a8:0x4141b4] in 1591966 ns
11-23 16:04:37.426: INFO/ARMAssembler(53): generated scanline__00000077:03010104_00000004_00000000 [ 22 ipp] (41 ins) at [0x3ab200:0x3ab2a4] in 517656 ns
11-23 16:04:37.717: INFO/ActivityManager(53): Displayed activity com.goolguy/.CoolGuy: 1201 ms (total 1201 ms)
11-23 16:04:37.776: INFO/ARMAssembler(53): generated scanline__00000077:03545404_00000A04_00000000 [ 29 ipp] (51 ins) at [0x3ab2a8:0x3ab374] in 593554 ns
11-23 16:04:38.027: DEBUG/dalvikvm(237): GC freed 550 objects / 47232 bytes in 289ms
11-23 16:04:39.117: DEBUG/dalvikvm(237): GC freed 166 objects / 7336 bytes in 99ms
11-23 16:04:39.496: DEBUG/ddm-heap(147): Got feature list request
11-23 16:04:39.716: DEBUG/dalvikvm(237): GC freed 54 objects / 2120 bytes in 67ms
11-23 16:04:39.765: DEBUG/AndroidRuntime(237): Shutting down VM
11-23 16:04:39.765: WARN/dalvikvm(237): threadid=3: thread exiting with uncaught exception (group=0x4001b188)
11-23 16:04:39.775: ERROR/AndroidRuntime(237): Uncaught handler: thread main exiting due to uncaught exception
11-23 16:04:39.796: ERROR/AndroidRuntime(237): java.lang.NullPointerException
11-23 16:04:39.796: ERROR/AndroidRuntime(237): at com.goolguy.CoolGuy$CoolGuyView$1$1.sexyImage(CoolGuy.java:47)
11-23 16:04:39.796: ERROR/AndroidRuntime(237): at com.goolguy.CoolGuy$CoolGuyView$1$1.run(CoolGuy.java:39)
11-23 16:04:39.796: ERROR/AndroidRuntime(237): at android.os.Handler.handleCallback(Handler.java:587)
11-23 16:04:39.796: ERROR/AndroidRuntime(237): at android.os.Handler.dispatchMessage(Handler.java:92)
11-23 16:04:39.796: ERROR/AndroidRuntime(237): at android.os.Looper.loop(Looper.java:123)
11-23 16:04:39.796: ERROR/AndroidRuntime(237): at android.app.ActivityThread.main(ActivityThread.java:4363)
11-23 16:04:39.796: ERROR/AndroidRuntime(237): at java.lang.reflect.Method.invokeNative(Native Method)
11-23 16:04:39.796: ERROR/AndroidRuntime(237): at java.lang.reflect.Method.invoke(Method.java:521)
11-23 16:04:39.796: ERROR/AndroidRuntime(237): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
11-23 16:04:39.796: ERROR/AndroidRuntime(237): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
11-23 16:04:39.796: ERROR/AndroidRuntime(237): at dalvik.system.NativeStart.main(Native Method)
어느부분이 에러인가요..