AndroidManifest
Déclaré en tant que Service de Wallpaper
permission : android.permission.BIND_WALLPAPER
intent-filter : android.service.wallpaper.WallpaperService
AndroidManifest
Utilise les permissions
com.google.android.permission.PROVIDE_BACKGROUND
android.permission.WAKE_LOCK
AndroidManifest
Déclare les meta-datas
android.service.wallpaper -> xml contenant <wallpaper/>
com.google.android.wearable.watchface.preview -> Drawable
com.google.android.wearable.watchface.preview_circular -> Drawable
CanvasWatchFaceService
public class MyWatchFaceService extends CanvasWatchFaceService {
@Override public Engine onCreateEngine() {
}
}
CanvasWatchFaceService.Engine
void onCreate(SurfaceHolder holder);
void onDestroy();
void onSurfaceChanged(SurfaceHolder holder, int format, int width, int height);
void onTimeTick();
void onVisibilityChanged(boolean visible);
void onDraw(Canvas canvas, Rect bounds);
void onAmbientModeChanged(boolean inAmbientMode);
Canvas - Paint
ColorStrokeWidth
AntiAliasStrokeCapStrokeJoinShadowLayerStyle
(Lissage de la texture)
Canvas - Paint
ColorStrokeWidthAntiAliasStrokeCapStrokeJoinShadowLayer
Style
FILL STROKE STROKE & FILL
Canvas
canvas.drawBitmap( bitmap, left, top, paint);canvas.drawRect(left, top, right, bottom, paint);
…canvas.drawRoundRect(left, top, right, bottom, rx, ry, paint);canvas.drawLine(startX, startY, stopX, stopY, paint);canvas.drawOval(rect , paint);canvas.drawCircle(centerX, centerY, radius, paint);
Canvas
canvas.save();canvas.restore();
canvas.rotate(angle, centerX, centerY);canvas.translate(dx, dy);canvas.scale(sx, sy);
Canvas
canvas.drawBitmap(background,0,0,p);
canvas.save();canvas.rotate(90, 0.5f, 0.5f);canvas.drawRect(0.5f ,0.5f, 1f, 1f, p);canvas.restore();
0 y 10
x
1
Canvas
canvas.drawBitmap(background,0,0,p);
canvas.save();canvas.rotate(90, 0.5f, 0.5f);canvas.drawRect(0.45f ,0.5f, 0.55f, 1f, p);canvas.restore();
0 y 10
x
1
Canvas
canvas.drawBitmap(background,0,0,p);
canvas.save();canvas.rotate(90, 0.5f, 0.5f);canvas.drawRect(0.45f ,0.5f, 0.55f, 1f, p);canvas.restore();
0 y 10
x
1
Canvas
canvas.drawBitmap(background,0,0,p);
canvas.save();canvas.rotate(90, 0.5f, 0.5f);canvas.drawRect(0.45f ,0.5f, 0.55f, 1f, p);canvas.restore();
0 y 10
x
1
Canvas
canvas.drawBitmap(background,0,0,p);
canvas.save();canvas.rotate(90, 0.5f, 0.5f);canvas.drawRect(0.45f ,0.5f, 0.55f, 1f, p);canvas.restore();
0 y 10
x
1
Canvas
canvas.drawBitmap(background,0,0,p);
canvas.save();canvas.rotate(90, 0.5f, 0.5f);canvas.drawRect(0.45f ,0.5f, 0.55f, 1f, p);canvas.restore();
0 y 10
x
1