본문 바로가기
[Android/안드로이드] AppWidget Sample Code ( Example ). 안녕하세요 돼지왕 왕돼지입니다. AppWidget 을 빠르게 만들 수 있게, 그리고 쉽게 학습할 수 있도록 Sample Code 올립니다. Test Widget 은 View 로 Button 하나를 가지는 위젯입니다. @manifest @AppWidgetProvider public class ButtonWidget extends AppWidgetProvider { public static String ACTION_WIDGET_CONFIGURE = "ConfigureWidget"; public static String ACTION_WIDGET_RECEIVER = "ActionReceiverWidget"; @Override public void onUpdate(Context context, AppWidgetM.. 2012. 2. 15.
[Android/안드로이드] Service 생명주기. 안녕하세요 돼지왕 왕돼지입니다. 오늘은 안드로이드 기본 Component 중 하나인 Service 의 생명주기에 대해 알아보겠습니다. Service가 무슨 생명 주기가 있냐구요? 함께 보시면 아, Activity 와는 다른 생명주기가 있구나, 하고 아실 수 있으실 겁니다. - 서비스가 실행 중이 아니라면 안드로이드가 서비스를 실행 한 후 그 서비스의 onCreate() 와 onStartCommand()를 차례로 호출. - 서비스가 실행 중이었다면 onStartCommand()만 호출된다. - 서비스는 액티비티가 없기 때문에 onResume(), onPause(), onStop() 는 호출되지 않는다. - onBind() 는 Context.bindService() 를 통해서 호출된다. 이 때 서비스가 실행.. 2012. 2. 15.
[Android/안드로이드] Traceview 에 대해 알아보자. ( Profilinig ) 안녕하세요 돼지왕 왕돼지입니다. 안드로이드의 DDMS 에서 지속적으로 좋은 기능들을 제공하려고 하고 있습니다. 그 중 하나가 Profiling ( 프로파일링 ) 에 사용되는 TraceView ( 트레이스 뷰 ) 인데요. 어떤 함수가 호출될 때 소요되는 시간을 볼 수 있는 좋은 도구입니다. 이 Traceview 에 대해 오늘 한번 알아보고자 합니다. TraceView 가 뭐하는 건가요? - 트레이스뷰로는 모든 함수의 초기화와 각 메소드에서 머문 시간이 기록되며, 이것을 보기 좋게 정렬해서 보여주는 View 입니다. 어떻게 사용하나요? - DDMS 에서 [Devices] 의 [Start Method Profiling] 버튼을 클릭하고, 어떤 Operation 을 해줍니다. Operation 이 완료되면, [.. 2012. 2. 15.
[Android/안드로이드] Emulator의 /system/app 폴더에 apk 올리기. 안녕하세요 돼지왕 왕돼지입니다. 오늘은 Emulator의 /system/app 폴더에 apk. 올리는 법에 대해 알아보겠습니다. 1. 올릴 apk 파일을 준비한다. 2. emulator를 실행시킬 때, 다음과 같이 파티션 정보를 준다. > emulator -avd [avd 이름] -partition-size [size] ex) avd 이름 : test-avd size : 128 !! 이 설정을 안 해준상태로 밀어 넣으면 Out of memory 에러가 납니다. 참고로, partition이 필요한 이유는 > adb shell df 로 확인할 수 있겠습니다. !! 3. remount 시켜 권한을 얻습니다. > adb remount rw 4. 밀어 넣는다. > adb push [ .apk] /system/ap.. 2012. 2. 15.
[Android/안드로이드] OpenGL 로 삼각형 그리기 안녕하세요 돼지왕 왕돼지입니다. 오늘은 Android OpenGL 을 이용하여 기본 primitive 인 삼각형을 한번 그려보도록 하겠습니다. 후에는 필수 API 들에 대한 설명들도 있습니다. Android GLSurface에 대한 기본구조에 대해서는 이 글을 참조하세요. 2012/02/10 - [프로그래밍 놀이터/안드로이드] - [Android/안드로이드] OpenGL 사용하기 위한 GLSurfaceVIew 생성 기본골격. 기본 API 들에 대해서는 다음을 참조하세요. 2012/02/15 - [프로그래밍 놀이터/안드로이드] - [Android/안드로이드] OpenGL APIs ( Matrix Stack, Light, Blend ) 2012/02/14 - [프로그래밍 놀이터/안드로이드] - [Androi.. 2012. 2. 15.
[Android/안드로이드] OpenGL Primitives 안녕하세요 돼지왕 왕돼지입니다. 오늘은 OpenGL 의 Primitives 에 대해 알아보겠습니다. GL_POINTS GL_LINE_STRIP: Series of connected line segments GL_LINE_LOOP: Strip 과 같지만 끝이 연결 GL_LINES GL_TRIANGLES GL_TRIANGLE_STRIP: Series of triangles v0, v1, v2, - v2, v1, v3 - v2, v3, v4 (order가 중요, surface 때문에) GL_TRIANGLE_FAN: Strip과 같으나 order가 다름. V0, v1, v2 - v0, v2, v3 - v0, v3, v4 로그인 없이 추천 가능합니다. 손가락 꾸욱~ 2012. 2. 15.
[Android/안드로이드] OpenGL APIs ( Matrix Stack, Light, Blend ) 안녕하세요 돼지왕 왕돼지입니다. 오늘은 Android OpenGL Apis 중 Matrix 스택, Light, 그리고 Blend 관련된 API 들을 알아보겠습니다. gl.glPushMatrix(); - 현재의 matrix 저장 gl.glPopMatrix(); - PushMatrix를 통해 저장한 matrix 불러오기 gl.glLightfv(GLenum light, GLenum pname, GLfloat param); - Light source parameter들을 설정하는 함수. - light 는 light 수.. GL10.GL_LIGHTi 로 설정 ( 0 2012. 2. 15.
[Android/안드로이드] OpenGL APIs ( Draw, Texture, Rotate ) 안녕하세요. 돼지왕 왕돼지입니다. 오늘은 Android OpenGL Apis 중 실제 도형을 그리는 Draw 관련 함수들, Texture 를 입히는 합수들, 그리고 Rotate 에 대해 알아보겠습니다. gl.glDrawArrays(GLenum mode, GLint first, GLsizei count); - array data로부터 primitive를 render. - mode는 primitive type GL10.GL_LINES GL10.GL_TRIANGLE_STRIP GL10.GL_TRIANGLE_FAN GL10.GL_TRIANGLES GL10.GL_LINE_LOOP GL10.GL_POINTS GL10.GL_LINE_STRIP - first는 array의 starting index 지정 - count.. 2012. 2. 14.
[Android/안드로이드] OpenGL 기초 APIs ( Face & View type ) 안녕하세요. 돼지왕 왕돼지입니다. 오늘은 OpenGL 기초 APIs 중 Face 와 관련된 녀석들과, Projection 관련된 녀석들을 알아보고자 합니다. gl.glFrontFace(GLenum mode); - front-back-facing polygon 을 정의. - mode 값은 보여지는 면을 설정하는 binding 모드 결정. ( 예를 들어 GL_CW 면 시계방향(clockwise) 로 binding 된 면이 앞면이 됩니다. ) GL10.GL_CW : clockwise GL10.GL_CCW : counter clockwise gl.glCullFace(GLenum mode); - front-back-facing polygon 중 어떤 녀석을 cull 할지 결정. ( cull 을 잘라내다, 안 보이.. 2012. 2. 14.
반응형