public
class
Gles2WatchFaceService.Engine
extends WatchFaceService.Engine
| java.lang.Object | |||
| ↳ | android.service.wallpaper.WallpaperService.Engine | ||
| ↳ | android.support.wearable.watchface.WatchFaceService.Engine | ||
| ↳ | android.support.wearable.watchface.Gles2WatchFaceService.Engine | ||
The actual implementation of a watch face that draws using OpenGL ES 2.0. You must implement
onCreateEngine() to return your concrete Engine
implementation.
Public constructors | |
|---|---|
Gles2WatchFaceService.Engine()
|
|
Public methods | |
|---|---|
EGLConfig
|
chooseEglConfig(EGLDisplay eglDisplay)
Returns the desired EGL config to use. |
EGLContext
|
createEglContext(EGLDisplay eglDisplay, EGLConfig eglConfig)
Creates the EGL context and returns it. |
EGLSurface
|
createWindowSurface(EGLDisplay eglDisplay, EGLConfig eglConfig, SurfaceHolder surfaceHolder)
Creates and returns a new EGL window surface for |
EGLDisplay
|
initializeEglDisplay()
Initializes the display. |
final
void
|
invalidate()
Schedules a call to |
void
|
onApplyWindowInsets(WindowInsets insets)
|
void
|
onCreate(SurfaceHolder surfaceHolder)
|
void
|
onDestroy()
|
void
|
onDraw()
Draws the watch face. |
void
|
onGlContextCreated()
Called when a new GL context is created. |
void
|
onGlSurfaceCreated(int width, int height)
Called when a new GL surface is created. |
final
void
|
onSurfaceChanged(SurfaceHolder holder, int format, int width, int height)
|
final
void
|
onSurfaceDestroyed(SurfaceHolder holder)
|
final
void
|
onSurfaceRedrawNeeded(SurfaceHolder holder)
|
final
void
|
postInvalidate()
Posts a message to schedule a call to |
Inherited methods | |
|---|---|
android.support.wearable.watchface.WatchFaceService.Engine
| |
android.service.wallpaper.WallpaperService.Engine
| |
java.lang.Object
| |
Gles2WatchFaceService.Engine ()
EGLConfig chooseEglConfig (EGLDisplay eglDisplay)
Returns the desired EGL config to use. By default, uses a config that:
Watch faces can override this method to call eglChooseConfig(EGLDisplay, int[], int, EGLConfig[], int, int, int[], int) with
different attributes. By passing in a large array, eglChooseConfig can return
multiple matching configs and the watch face can choose among them by using
eglGetConfigAttrib(EGLDisplay, EGLConfig, int, int[], int) to fetch their attributes.
| Parameters | |
|---|---|
eglDisplay |
EGLDisplay:
the EGL display to use |
| Returns | |
|---|---|
EGLConfig |
the EGL config to use |
EGLContext createEglContext (EGLDisplay eglDisplay,
EGLConfig eglConfig)
Creates the EGL context and returns it. By default, creates an EGL 2.0 context using
eglCreateContext(EGLDisplay, EGLConfig, EGLContext, int[], int).
Watch faces can override this method to call eglCreateContext(EGLDisplay, EGLConfig, EGLContext, int[], int) with
different attributes.
| Parameters | |
|---|---|
eglDisplay |
EGLDisplay
|
eglConfig |
EGLConfig
|
| Returns | |
|---|---|
EGLContext |
|
EGLSurface createWindowSurface (EGLDisplay eglDisplay,
EGLConfig eglConfig,
SurfaceHolder surfaceHolder)
Creates and returns a new EGL window surface for surfaceHolder. By default, this
surface has no attributes.
Watch faces can override this method to call eglCreateWindowSurface(EGLDisplay, EGLConfig, Object, int[], int) with
different attributes.
| Parameters | |
|---|---|
eglDisplay |
EGLDisplay
|
eglConfig |
EGLConfig
|
surfaceHolder |
SurfaceHolder
|
| Returns | |
|---|---|
EGLSurface |
|
EGLDisplay initializeEglDisplay ()
Initializes the display. Calls eglGetDisplay(int) and
eglInitialize(EGLDisplay, int[], int, int[], int).
| Returns | |
|---|---|
EGLDisplay |
the initialized EGLDisplay to use |
void invalidate ()
Schedules a call to onDraw() to draw the next frame. Must be called on the main
thread.
void onApplyWindowInsets (WindowInsets insets)
| Parameters | |
|---|---|
insets |
WindowInsets
|
void onCreate (SurfaceHolder surfaceHolder)
| Parameters | |
|---|---|
surfaceHolder |
SurfaceHolder
|
void onDestroy ()
void onDraw ()
Draws the watch face. It's safe to use GL APIs in this method.
void onGlContextCreated ()
Called when a new GL context is created. It's safe to use GL APIs in this method.
void onGlSurfaceCreated (int width,
int height)
Called when a new GL surface is created. It's safe to use GL APIs in this method.
| Parameters | |
|---|---|
width |
int:
width of surface in pixels |
height |
int:
height of surface in pixels
|
void onSurfaceChanged (SurfaceHolder holder,
int format,
int width,
int height)
| Parameters | |
|---|---|
holder |
SurfaceHolder
|
format |
int
|
width |
int
|
height |
int
|
void onSurfaceDestroyed (SurfaceHolder holder)
| Parameters | |
|---|---|
holder |
SurfaceHolder
|
void onSurfaceRedrawNeeded (SurfaceHolder holder)
| Parameters | |
|---|---|
holder |
SurfaceHolder
|
void postInvalidate ()
Posts a message to schedule a call to onDraw() to draw the next frame. Unlike
invalidate(), this method is thread-safe and may be called on any thread.