Java2D on Android

이전 글에서도 얼핏 선보였지만
아직 official 하지는 않지만 android는 Java2D 구현체를 상당부분 포함하고 있다.
shell로 접속하여 /system/framework/android.awt.jar 에서 확인 가능하다.
기본으로는 Classpath에 포함되어 있지 않아 사용할 수 없지만 약간의 작업을 하면 가능하다.

아래는 간단히 만들어 본 예제인데 잘 돌아간다.

JAVA:
  1. public class Java2dView extends View {
  2.  
  3.     public Java2dView(Context context) {
  4.         super(context);
  5.     }
  6.  
  7.     @Override
  8.     protected void onDraw(Canvas c) {
  9.         AndroidGraphics2D g2 = AndroidGraphics2D.getInstance(getContext(), c, new Paint());
  10.         g2.setPaint( Color.RED );
  11.         g2.fill( new RoundRectangle2D.Float(50, 50, 100, 300, 10, 10) );
  12.         g2.setColor( new Color(50, 50, 200, 100));
  13.         g2.fillRect(0, 0, 200, 200);
  14.         g2.dispose();
  15.     }
  16. }

java2d on android

좀 서핑을 해 보니 전에는 SDK에 포함되어 나왔던 흔적도 있다.
또 다른 글을 보면 google 직원이 '향후 릴리즈에 java.awt'를 포함시키겠다는 내용을 쓴 글도 있다.
물론 Window system이나 DnD등은 개념부터 다르니 어려울테고 java2d 위주가 되겠쥐...

2 리플 to “Java2D on Android”

  1. Lars Says:

    I’m not sure if this is Japanese… but Ivery inetrested how you use AndroidGraphics2D with Android … perhaps in English ;-)

  2. 유겸애비 Says:

    Lars// you can add ‘android.awt.jar’ to classpath by adding ‘uses-library’ element in AndroidManifest.xml.

댓글달기