• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119<!DOCTYPE html>
120<html devsite>
121<head>
122
123
124    <meta name="top_category" value="develop" />
125
126    <meta name="subcategory" value="reference" />
127
128
129      <meta name="book_path" value="/reference/android/support/wearable/_book.yaml" />
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145<title>WatchFaceService.Engine</title>
146
147
148</head>
149
150<body class="gc-documentation develop reference api apilevel-">
151<div id="doc-api-level" class="" style="display:none"></div>
152
153
154
155
156<div id="naMessage"></div>
157
158<div id="api-info-block">
159<div class="api-level">
160
161
162
163
164</div>
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183<div class="sum-details-links">
184
185Summary:
186
187
188
189
190
191
192
193
194
195  <a href="#pubctors">Ctors</a>
196
197
198
199
200  &#124; <a href="#pubmethods">Methods</a>
201
202
203
204
205  &#124; <a href="#inhmethods">Inherited Methods</a>
206
207&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
208
209</div><!-- end sum-details-links -->
210</div><!-- end api-info-block -->
211
212<div class="api apilevel-" id="jd-content">
213
214<!-- ======== START OF CLASS DATA ======== -->
215
216<h1 class="api-title">WatchFaceService.Engine</h1>
217<p>
218<code class="api-signature">
219  public
220
221
222  abstract
223  class
224  WatchFaceService.Engine
225</code>
226<br>
227
228
229<code class="api-signature">
230
231
232
233</code>
234
235<code class="api-signature">
236
237    extends WallpaperService.Engine
238
239
240
241</code>
242
243<code class="api-signature">
244
245
246
247</code>
248
249</p><table class="jd-inheritance-table">
250
251
252  <tr>
253
254    <td colspan="3" class="jd-inheritance-class-cell">java.lang.Object
255    </td>
256  </tr>
257
258
259  <tr>
260
261      <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
262
263    <td colspan="2" class="jd-inheritance-class-cell">android.service.wallpaper.WallpaperService.Engine
264    </td>
265  </tr>
266
267
268  <tr>
269
270      <td class="jd-inheritance-space">&nbsp;</td>
271
272      <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
273
274    <td colspan="1" class="jd-inheritance-class-cell">android.support.wearable.watchface.WatchFaceService.Engine
275    </td>
276  </tr>
277
278
279</table>
280  <table class="jd-sumtable jd-sumtable-subclasses">
281  <tr><td style="border:none;margin:0;padding:0;">
282
283  <a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
284          ><img height="34" id="subclasses-direct-trigger"
285          src="/assets/images/styles/disclosure_down.png"
286          class="jd-expando-trigger-img" /></a>Known Direct Subclasses
287
288  <div id="subclasses-direct">
289      <div id="subclasses-direct-list"
290              class="jd-inheritedlinks"
291
292              >
293
294
295              <a href="/reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html">CanvasWatchFaceService.Engine</a>,
296
297              <a href="/reference/android/support/wearable/watchface/Gles2WatchFaceService.Engine.html">Gles2WatchFaceService.Engine</a>
298
299
300      </div>
301      <div id="subclasses-direct-summary"
302              style="display: none;"
303              >
304
305  <table class="jd-sumtable-expando">
306
307      <tr class="alt-color api apilevel-" >
308        <td class="jd-linkcol"><a href="/reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html">CanvasWatchFaceService.Engine</a></td>
309        <td class="jd-descrcol" width="100%">
310          The actual implementation of a watch face that draws on a <code><a href="/reference/android/graphics/Canvas.html">Canvas</a></code>.&nbsp;
311
312
313
314        </td>
315      </tr>
316
317
318      <tr class=" api apilevel-" >
319        <td class="jd-linkcol"><a href="/reference/android/support/wearable/watchface/Gles2WatchFaceService.Engine.html">Gles2WatchFaceService.Engine</a></td>
320        <td class="jd-descrcol" width="100%">
321          The actual implementation of a watch face that draws using OpenGL ES 2.0.&nbsp;
322
323
324
325        </td>
326      </tr>
327
328
329  </table>
330
331      </div>
332  </div>
333  </td></tr>
334  </table>
335
336
337
338
339
340<br><hr>
341
342
343  <p>The actual implementation of a watch face. You must implement
344 <code><a href="/reference/android/support/wearable/watchface/WatchFaceService.html#onCreateEngine()">onCreateEngine()</a></code> to return your concrete Engine implementation.
345</p>
346
347
348
349
350
351
352
353<h2 class="api-section">Summary</h2>
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377<!-- ======== CONSTRUCTOR SUMMARY ======== -->
378<table id="pubctors" class="responsive constructors">
379<tr><th colspan="2"><h3>Public constructors</h3></th></tr>
380
381
382
383
384  <tr class="api apilevel-" >
385
386
387    <td width="100%">
388      <code>
389      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#WatchFaceService.Engine()">WatchFaceService.Engine</a>()
390      </code>
391
392    </td>
393  </tr>
394
395
396
397</table>
398
399
400
401
402
403
404<!-- ========== METHOD SUMMARY =========== -->
405<table id="pubmethods" class="responsive methods">
406<tr><th colspan="2"><h3>Public methods</h3></th></tr>
407
408
409
410
411  <tr class="api apilevel-" >
412
413
414    <td><code>
415
416
417
418        final
419
420        int</code>
421    </td>
422
423    <td width="100%">
424      <code>
425      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter</a>()
426      </code>
427
428        <p>Returns interruption filter selected by the user.
429
430
431</p>
432
433    </td>
434  </tr>
435
436
437
438  <tr class="api apilevel-" >
439
440
441    <td><code>
442
443
444
445        final
446
447        int</code>
448    </td>
449
450    <td width="100%">
451      <code>
452      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getNotificationCount()">getNotificationCount</a>()
453      </code>
454
455        <p>Returns the total number of notification cards in the stream.
456
457
458</p>
459
460    </td>
461  </tr>
462
463
464
465  <tr class="api apilevel-" >
466
467
468    <td><code>
469
470
471
472        final
473
474        Rect</code>
475    </td>
476
477    <td width="100%">
478      <code>
479      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getPeekCardPosition()">getPeekCardPosition</a>()
480      </code>
481
482        <p>Returns the location of the first peeking card.
483
484
485</p>
486
487    </td>
488  </tr>
489
490
491
492  <tr class="api apilevel-" >
493
494
495    <td><code>
496
497
498
499        final
500
501        int</code>
502    </td>
503
504    <td width="100%">
505      <code>
506      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getUnreadCount()">getUnreadCount</a>()
507      </code>
508
509        <p>Returns the number of unread notification cards in the stream.
510
511
512</p>
513
514    </td>
515  </tr>
516
517
518
519  <tr class="api apilevel-" >
520
521
522    <td><code>
523
524
525
526        final
527
528        boolean</code>
529    </td>
530
531    <td width="100%">
532      <code>
533      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#isInAmbientMode()">isInAmbientMode</a>()
534      </code>
535
536        <p>Returns whether the watch face is in ambient mode.
537
538
539</p>
540
541    </td>
542  </tr>
543
544
545
546  <tr class="api apilevel-" >
547
548
549    <td><code>
550
551
552
553
554
555        void</code>
556    </td>
557
558    <td width="100%">
559      <code>
560      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onAmbientModeChanged(boolean)">onAmbientModeChanged</a>(boolean inAmbientMode)
561      </code>
562
563        <p>Called when the device enters or exits ambient mode.
564
565
566</p>
567
568    </td>
569  </tr>
570
571
572
573  <tr class="api apilevel-" >
574
575
576    <td><code>
577
578
579
580
581
582        Bundle</code>
583    </td>
584
585    <td width="100%">
586      <code>
587      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onCommand(java.lang.String, int, int, int, android.os.Bundle, boolean)">onCommand</a>(String action, int x, int y, int z, Bundle extras, boolean resultRequested)
588      </code>
589
590    </td>
591  </tr>
592
593
594
595  <tr class="api apilevel-" >
596
597
598    <td><code>
599
600
601
602
603
604        void</code>
605    </td>
606
607    <td width="100%">
608      <code>
609      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onCreate(android.view.SurfaceHolder)">onCreate</a>(SurfaceHolder holder)
610      </code>
611
612    </td>
613  </tr>
614
615
616
617  <tr class="api apilevel-" >
618
619
620    <td><code>
621
622
623
624
625
626        void</code>
627    </td>
628
629    <td width="100%">
630      <code>
631      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onDestroy()">onDestroy</a>()
632      </code>
633
634    </td>
635  </tr>
636
637
638
639  <tr class="api apilevel-" >
640
641
642    <td><code>
643
644
645
646
647
648        void</code>
649    </td>
650
651    <td width="100%">
652      <code>
653      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onInterruptionFilterChanged(int)">onInterruptionFilterChanged</a>(int interruptionFilter)
654      </code>
655
656        <p>Called when the user changes interruption filter.
657
658
659</p>
660
661    </td>
662  </tr>
663
664
665
666  <tr class="api apilevel-" >
667
668
669    <td><code>
670
671
672
673
674
675        void</code>
676    </td>
677
678    <td width="100%">
679      <code>
680      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onNotificationCountChanged(int)">onNotificationCountChanged</a>(int count)
681      </code>
682
683        <p>Called when the total number of notification cards in the stream has changed.
684
685
686</p>
687
688    </td>
689  </tr>
690
691
692
693  <tr class="api apilevel-" >
694
695
696    <td><code>
697
698
699
700
701
702        void</code>
703    </td>
704
705    <td width="100%">
706      <code>
707      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onPeekCardPositionUpdate(android.graphics.Rect)">onPeekCardPositionUpdate</a>(Rect rect)
708      </code>
709
710        <p>Called when the first, peeking card positions itself on the screen.
711
712
713</p>
714
715    </td>
716  </tr>
717
718
719
720  <tr class="api apilevel-" >
721
722
723    <td><code>
724
725
726
727
728
729        void</code>
730    </td>
731
732    <td width="100%">
733      <code>
734      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onPropertiesChanged(android.os.Bundle)">onPropertiesChanged</a>(Bundle properties)
735      </code>
736
737        <p>Called when the properties of the device are determined.
738
739
740</p>
741
742    </td>
743  </tr>
744
745
746
747  <tr class="api apilevel-" >
748
749
750    <td><code>
751
752
753
754
755
756        void</code>
757    </td>
758
759    <td width="100%">
760      <code>
761      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onTapCommand(int, int, int, long)">onTapCommand</a>(int tapType, int x, int y, long eventTime)
762      </code>
763
764        <p>Called when a tap or touch related event occurs.
765
766
767</p>
768
769    </td>
770  </tr>
771
772
773
774  <tr class="api apilevel-" >
775
776
777    <td><code>
778
779
780
781
782
783        void</code>
784    </td>
785
786    <td width="100%">
787      <code>
788      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onTimeTick()">onTimeTick</a>()
789      </code>
790
791        <p>Called periodically to update the time shown by the watch face.
792
793
794</p>
795
796    </td>
797  </tr>
798
799
800
801  <tr class="api apilevel-" >
802
803
804    <td><code>
805
806
807
808
809
810        void</code>
811    </td>
812
813    <td width="100%">
814      <code>
815      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onUnreadCountChanged(int)">onUnreadCountChanged</a>(int count)
816      </code>
817
818        <p>Called when the number of unread notification cards in the stream has changed.
819
820
821</p>
822
823    </td>
824  </tr>
825
826
827
828  <tr class="api apilevel-" >
829
830
831    <td><code>
832
833
834
835
836
837        void</code>
838    </td>
839
840    <td width="100%">
841      <code>
842      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onVisibilityChanged(boolean)">onVisibilityChanged</a>(boolean visible)
843      </code>
844
845        <p>Called to inform you of the watch face becoming visible or hidden.
846
847
848</p>
849
850    </td>
851  </tr>
852
853
854
855  <tr class="api apilevel-" >
856
857
858    <td><code>
859
860
861
862
863
864        void</code>
865    </td>
866
867    <td width="100%">
868      <code>
869      <a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#setWatchFaceStyle(android.support.wearable.watchface.WatchFaceStyle)">setWatchFaceStyle</a>(<a href="/reference/android/support/wearable/watchface/WatchFaceStyle.html">WatchFaceStyle</a> watchFaceStyle)
870      </code>
871
872        <p>Sets the watch face style.
873
874
875</p>
876
877    </td>
878  </tr>
879
880
881
882</table>
883
884
885
886
887
888
889
890<!-- ========== METHOD SUMMARY =========== -->
891<table id="inhmethods" class="methods inhtable">
892<tr><th><h3>Inherited methods</h3></th></tr>
893
894
895<tr class="api apilevel-" >
896<td colspan="2">
897
898  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.service.wallpaper.WallpaperService.Engine" class="jd-expando-trigger closed"
899          ><img height="34" id="inherited-methods-android.service.wallpaper.WallpaperService.Engine-trigger"
900          src="/assets/images/styles/disclosure_down.png"
901          class="jd-expando-trigger-img" /></a>From
902class
903<code>
904
905    android.service.wallpaper.WallpaperService.Engine
906
907</code>
908<div id="inherited-methods-android.service.wallpaper.WallpaperService.Engine">
909  <div id="inherited-methods-android.service.wallpaper.WallpaperService.Engine-list"
910        class="jd-inheritedlinks">
911  </div>
912  <div id="inherited-methods-android.service.wallpaper.WallpaperService.Engine-summary" style="display: none;">
913    <table class="jd-sumtable-expando responsive">
914
915
916
917
918  <tr class="api apilevel-" >
919
920
921    <td><code>
922
923
924
925
926
927        void</code>
928    </td>
929
930    <td width="100%">
931      <code>
932      dump(String arg0, FileDescriptor arg1, PrintWriter arg2, String[] arg3)
933      </code>
934
935    </td>
936  </tr>
937
938
939
940  <tr class="api apilevel-" >
941
942
943    <td><code>
944
945
946
947
948
949        int</code>
950    </td>
951
952    <td width="100%">
953      <code>
954      getDesiredMinimumHeight()
955      </code>
956
957    </td>
958  </tr>
959
960
961
962  <tr class="api apilevel-" >
963
964
965    <td><code>
966
967
968
969
970
971        int</code>
972    </td>
973
974    <td width="100%">
975      <code>
976      getDesiredMinimumWidth()
977      </code>
978
979    </td>
980  </tr>
981
982
983
984  <tr class="api apilevel-" >
985
986
987    <td><code>
988
989
990
991
992
993        SurfaceHolder</code>
994    </td>
995
996    <td width="100%">
997      <code>
998      getSurfaceHolder()
999      </code>
1000
1001    </td>
1002  </tr>
1003
1004
1005
1006  <tr class="api apilevel-" >
1007
1008
1009    <td><code>
1010
1011
1012
1013
1014
1015        boolean</code>
1016    </td>
1017
1018    <td width="100%">
1019      <code>
1020      isPreview()
1021      </code>
1022
1023    </td>
1024  </tr>
1025
1026
1027
1028  <tr class="api apilevel-" >
1029
1030
1031    <td><code>
1032
1033
1034
1035
1036
1037        boolean</code>
1038    </td>
1039
1040    <td width="100%">
1041      <code>
1042      isVisible()
1043      </code>
1044
1045    </td>
1046  </tr>
1047
1048
1049
1050  <tr class="api apilevel-" >
1051
1052
1053    <td><code>
1054
1055
1056
1057
1058
1059        void</code>
1060    </td>
1061
1062    <td width="100%">
1063      <code>
1064      onApplyWindowInsets(WindowInsets arg0)
1065      </code>
1066
1067    </td>
1068  </tr>
1069
1070
1071
1072  <tr class="api apilevel-" >
1073
1074
1075    <td><code>
1076
1077
1078
1079
1080
1081        Bundle</code>
1082    </td>
1083
1084    <td width="100%">
1085      <code>
1086      onCommand(String arg0, int arg1, int arg2, int arg3, Bundle arg4, boolean arg5)
1087      </code>
1088
1089    </td>
1090  </tr>
1091
1092
1093
1094  <tr class="api apilevel-" >
1095
1096
1097    <td><code>
1098
1099
1100
1101
1102
1103        void</code>
1104    </td>
1105
1106    <td width="100%">
1107      <code>
1108      onCreate(SurfaceHolder arg0)
1109      </code>
1110
1111    </td>
1112  </tr>
1113
1114
1115
1116  <tr class="api apilevel-" >
1117
1118
1119    <td><code>
1120
1121
1122
1123
1124
1125        void</code>
1126    </td>
1127
1128    <td width="100%">
1129      <code>
1130      onDesiredSizeChanged(int arg0, int arg1)
1131      </code>
1132
1133    </td>
1134  </tr>
1135
1136
1137
1138  <tr class="api apilevel-" >
1139
1140
1141    <td><code>
1142
1143
1144
1145
1146
1147        void</code>
1148    </td>
1149
1150    <td width="100%">
1151      <code>
1152      onDestroy()
1153      </code>
1154
1155    </td>
1156  </tr>
1157
1158
1159
1160  <tr class="api apilevel-" >
1161
1162
1163    <td><code>
1164
1165
1166
1167
1168
1169        void</code>
1170    </td>
1171
1172    <td width="100%">
1173      <code>
1174      onOffsetsChanged(float arg0, float arg1, float arg2, float arg3, int arg4, int arg5)
1175      </code>
1176
1177    </td>
1178  </tr>
1179
1180
1181
1182  <tr class="api apilevel-" >
1183
1184
1185    <td><code>
1186
1187
1188
1189
1190
1191        void</code>
1192    </td>
1193
1194    <td width="100%">
1195      <code>
1196      onSurfaceChanged(SurfaceHolder arg0, int arg1, int arg2, int arg3)
1197      </code>
1198
1199    </td>
1200  </tr>
1201
1202
1203
1204  <tr class="api apilevel-" >
1205
1206
1207    <td><code>
1208
1209
1210
1211
1212
1213        void</code>
1214    </td>
1215
1216    <td width="100%">
1217      <code>
1218      onSurfaceCreated(SurfaceHolder arg0)
1219      </code>
1220
1221    </td>
1222  </tr>
1223
1224
1225
1226  <tr class="api apilevel-" >
1227
1228
1229    <td><code>
1230
1231
1232
1233
1234
1235        void</code>
1236    </td>
1237
1238    <td width="100%">
1239      <code>
1240      onSurfaceDestroyed(SurfaceHolder arg0)
1241      </code>
1242
1243    </td>
1244  </tr>
1245
1246
1247
1248  <tr class="api apilevel-" >
1249
1250
1251    <td><code>
1252
1253
1254
1255
1256
1257        void</code>
1258    </td>
1259
1260    <td width="100%">
1261      <code>
1262      onSurfaceRedrawNeeded(SurfaceHolder arg0)
1263      </code>
1264
1265    </td>
1266  </tr>
1267
1268
1269
1270  <tr class="api apilevel-" >
1271
1272
1273    <td><code>
1274
1275
1276
1277
1278
1279        void</code>
1280    </td>
1281
1282    <td width="100%">
1283      <code>
1284      onTouchEvent(MotionEvent arg0)
1285      </code>
1286
1287    </td>
1288  </tr>
1289
1290
1291
1292  <tr class="api apilevel-" >
1293
1294
1295    <td><code>
1296
1297
1298
1299
1300
1301        void</code>
1302    </td>
1303
1304    <td width="100%">
1305      <code>
1306      onVisibilityChanged(boolean arg0)
1307      </code>
1308
1309    </td>
1310  </tr>
1311
1312
1313
1314  <tr class="api apilevel-" >
1315
1316
1317    <td><code>
1318
1319
1320
1321
1322
1323        void</code>
1324    </td>
1325
1326    <td width="100%">
1327      <code>
1328      setFixedSizeAllowed(boolean arg0)
1329      </code>
1330
1331    </td>
1332  </tr>
1333
1334
1335
1336  <tr class="api apilevel-" >
1337
1338
1339    <td><code>
1340
1341
1342
1343
1344
1345        void</code>
1346    </td>
1347
1348    <td width="100%">
1349      <code>
1350      setOffsetNotificationsEnabled(boolean arg0)
1351      </code>
1352
1353    </td>
1354  </tr>
1355
1356
1357
1358  <tr class="api apilevel-" >
1359
1360
1361    <td><code>
1362
1363
1364
1365
1366
1367        void</code>
1368    </td>
1369
1370    <td width="100%">
1371      <code>
1372      setTouchEventsEnabled(boolean arg0)
1373      </code>
1374
1375    </td>
1376  </tr>
1377
1378
1379
1380    </table>
1381  </div>
1382</div>
1383</td></tr>
1384
1385
1386
1387<tr class="api apilevel-" >
1388<td colspan="2">
1389
1390  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
1391          ><img height="34" id="inherited-methods-java.lang.Object-trigger"
1392          src="/assets/images/styles/disclosure_down.png"
1393          class="jd-expando-trigger-img" /></a>From
1394class
1395<code>
1396
1397    java.lang.Object
1398
1399</code>
1400<div id="inherited-methods-java.lang.Object">
1401  <div id="inherited-methods-java.lang.Object-list"
1402        class="jd-inheritedlinks">
1403  </div>
1404  <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
1405    <table class="jd-sumtable-expando responsive">
1406
1407
1408
1409
1410  <tr class="api apilevel-" >
1411
1412
1413    <td><code>
1414
1415
1416
1417
1418
1419        Object</code>
1420    </td>
1421
1422    <td width="100%">
1423      <code>
1424      clone()
1425      </code>
1426
1427    </td>
1428  </tr>
1429
1430
1431
1432  <tr class="api apilevel-" >
1433
1434
1435    <td><code>
1436
1437
1438
1439
1440
1441        boolean</code>
1442    </td>
1443
1444    <td width="100%">
1445      <code>
1446      equals(Object arg0)
1447      </code>
1448
1449    </td>
1450  </tr>
1451
1452
1453
1454  <tr class="api apilevel-" >
1455
1456
1457    <td><code>
1458
1459
1460
1461
1462
1463        void</code>
1464    </td>
1465
1466    <td width="100%">
1467      <code>
1468      finalize()
1469      </code>
1470
1471    </td>
1472  </tr>
1473
1474
1475
1476  <tr class="api apilevel-" >
1477
1478
1479    <td><code>
1480
1481
1482
1483        final
1484
1485        Class&lt;?&gt;</code>
1486    </td>
1487
1488    <td width="100%">
1489      <code>
1490      getClass()
1491      </code>
1492
1493    </td>
1494  </tr>
1495
1496
1497
1498  <tr class="api apilevel-" >
1499
1500
1501    <td><code>
1502
1503
1504
1505
1506
1507        int</code>
1508    </td>
1509
1510    <td width="100%">
1511      <code>
1512      hashCode()
1513      </code>
1514
1515    </td>
1516  </tr>
1517
1518
1519
1520  <tr class="api apilevel-" >
1521
1522
1523    <td><code>
1524
1525
1526
1527        final
1528
1529        void</code>
1530    </td>
1531
1532    <td width="100%">
1533      <code>
1534      notify()
1535      </code>
1536
1537    </td>
1538  </tr>
1539
1540
1541
1542  <tr class="api apilevel-" >
1543
1544
1545    <td><code>
1546
1547
1548
1549        final
1550
1551        void</code>
1552    </td>
1553
1554    <td width="100%">
1555      <code>
1556      notifyAll()
1557      </code>
1558
1559    </td>
1560  </tr>
1561
1562
1563
1564  <tr class="api apilevel-" >
1565
1566
1567    <td><code>
1568
1569
1570
1571
1572
1573        String</code>
1574    </td>
1575
1576    <td width="100%">
1577      <code>
1578      toString()
1579      </code>
1580
1581    </td>
1582  </tr>
1583
1584
1585
1586  <tr class="api apilevel-" >
1587
1588
1589    <td><code>
1590
1591
1592
1593        final
1594
1595        void</code>
1596    </td>
1597
1598    <td width="100%">
1599      <code>
1600      wait(long arg0, int arg1)
1601      </code>
1602
1603    </td>
1604  </tr>
1605
1606
1607
1608  <tr class="api apilevel-" >
1609
1610
1611    <td><code>
1612
1613
1614
1615        final
1616
1617        void</code>
1618    </td>
1619
1620    <td width="100%">
1621      <code>
1622      wait(long arg0)
1623      </code>
1624
1625    </td>
1626  </tr>
1627
1628
1629
1630  <tr class="api apilevel-" >
1631
1632
1633    <td><code>
1634
1635
1636
1637        final
1638
1639        void</code>
1640    </td>
1641
1642    <td width="100%">
1643      <code>
1644      wait()
1645      </code>
1646
1647    </td>
1648  </tr>
1649
1650
1651
1652    </table>
1653  </div>
1654</div>
1655</td></tr>
1656
1657
1658</table>
1659
1660
1661
1662<!-- XML Attributes -->
1663
1664
1665<!-- Enum Values -->
1666
1667
1668<!-- Constants -->
1669
1670
1671<!-- Fields -->
1672
1673
1674<!-- Public ctors -->
1675
1676
1677<!-- ========= CONSTRUCTOR DETAIL ======== -->
1678<h2 class="api-section">Public constructors</h2>
1679
1680
1681
1682<A NAME="WatchFaceService.Engine()"></A>
1683
1684<div class="api apilevel-">
1685    <h3 class="api-name">WatchFaceService.Engine</h3>
1686    <div class="api-level">
1687      <div></div>
1688
1689
1690
1691    </div>
1692<pre class="api-signature no-pretty-print">
1693WatchFaceService.Engine ()</pre>
1694
1695
1696
1697
1698  <p></p>
1699
1700</div>
1701
1702
1703
1704
1705
1706<!-- ========= CONSTRUCTOR DETAIL ======== -->
1707<!-- Protected ctors -->
1708
1709
1710
1711<!-- ========= METHOD DETAIL ======== -->
1712<!-- Public methdos -->
1713
1714<h2 class="api-section">Public methods</h2>
1715
1716
1717
1718<A NAME="getInterruptionFilter()"></A>
1719
1720<div class="api apilevel-">
1721    <h3 class="api-name">getInterruptionFilter</h3>
1722    <div class="api-level">
1723      <div></div>
1724
1725
1726
1727    </div>
1728<pre class="api-signature no-pretty-print">
1729int getInterruptionFilter ()</pre>
1730
1731
1732
1733
1734  <p>Returns interruption filter selected by the user.</p>
1735    <table class="responsive">
1736      <tr><th colspan=2>Returns</th></tr>
1737      <tr>
1738        <td><code>int</code></td>
1739        <td width="100%"><code><a href="/reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_NONE">INTERRUPTION_FILTER_NONE</a></code>, <code><a href="/reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_PRIORITY">INTERRUPTION_FILTER_PRIORITY</a></code>,
1740         <code><a href="/reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALL">INTERRUPTION_FILTER_ALL</a></code>, <code><a href="/reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALARMS">INTERRUPTION_FILTER_ALARMS</a></code>,
1741         or <code><a href="/reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_UNKNOWN">INTERRUPTION_FILTER_UNKNOWN</a></code>.
1742</td>
1743      </tr>
1744    </table>
1745
1746</div>
1747
1748
1749<A NAME="getNotificationCount()"></A>
1750
1751<div class="api apilevel-">
1752    <h3 class="api-name">getNotificationCount</h3>
1753    <div class="api-level">
1754      <div></div>
1755
1756
1757
1758    </div>
1759<pre class="api-signature no-pretty-print">
1760int getNotificationCount ()</pre>
1761
1762
1763
1764
1765  <p>Returns the total number of notification cards in the stream.
1766</p>
1767    <table class="responsive">
1768      <tr><th colspan=2>Returns</th></tr>
1769      <tr>
1770        <td><code>int</code></td>
1771        <td width="100%"><!-- no returns description in source --></td>
1772      </tr>
1773    </table>
1774
1775</div>
1776
1777
1778<A NAME="getPeekCardPosition()"></A>
1779
1780<div class="api apilevel-">
1781    <h3 class="api-name">getPeekCardPosition</h3>
1782    <div class="api-level">
1783      <div></div>
1784
1785
1786
1787    </div>
1788<pre class="api-signature no-pretty-print">
1789Rect getPeekCardPosition ()</pre>
1790
1791
1792
1793
1794  <p>Returns the location of the first peeking card. This doesn't provide information about
1795 all movements of the card, only about its location when it's peeking at the bottom and
1796 allowing the watch face to be exposed.
1797</p>
1798    <table class="responsive">
1799      <tr><th colspan=2>Returns</th></tr>
1800      <tr>
1801        <td><code>Rect</code></td>
1802        <td width="100%"><!-- no returns description in source --></td>
1803      </tr>
1804    </table>
1805
1806</div>
1807
1808
1809<A NAME="getUnreadCount()"></A>
1810
1811<div class="api apilevel-">
1812    <h3 class="api-name">getUnreadCount</h3>
1813    <div class="api-level">
1814      <div></div>
1815
1816
1817
1818    </div>
1819<pre class="api-signature no-pretty-print">
1820int getUnreadCount ()</pre>
1821
1822
1823
1824
1825  <p>Returns the number of unread notification cards in the stream.
1826</p>
1827    <table class="responsive">
1828      <tr><th colspan=2>Returns</th></tr>
1829      <tr>
1830        <td><code>int</code></td>
1831        <td width="100%"><!-- no returns description in source --></td>
1832      </tr>
1833    </table>
1834
1835</div>
1836
1837
1838<A NAME="isInAmbientMode()"></A>
1839
1840<div class="api apilevel-">
1841    <h3 class="api-name">isInAmbientMode</h3>
1842    <div class="api-level">
1843      <div></div>
1844
1845
1846
1847    </div>
1848<pre class="api-signature no-pretty-print">
1849boolean isInAmbientMode ()</pre>
1850
1851
1852
1853
1854  <p>Returns whether the watch face is in ambient mode. When true, the watch face should
1855 display in white on black.
1856</p>
1857    <table class="responsive">
1858      <tr><th colspan=2>Returns</th></tr>
1859      <tr>
1860        <td><code>boolean</code></td>
1861        <td width="100%"><!-- no returns description in source --></td>
1862      </tr>
1863    </table>
1864
1865</div>
1866
1867
1868<A NAME="onAmbientModeChanged(boolean)"></A>
1869
1870<div class="api apilevel-">
1871    <h3 class="api-name">onAmbientModeChanged</h3>
1872    <div class="api-level">
1873      <div></div>
1874
1875
1876
1877    </div>
1878<pre class="api-signature no-pretty-print">
1879void onAmbientModeChanged (boolean inAmbientMode)</pre>
1880
1881
1882
1883
1884  <p>Called when the device enters or exits ambient mode. The watch face should switch to a
1885 black and white display in ambient mode. If the watch face displays seconds, it should
1886 hide them in ambient mode.
1887</p>
1888    <table class="responsive">
1889    <tr><th colspan=2>Parameters</th></tr>
1890      <tr>
1891        <td><code>inAmbientMode</code></td>
1892        <td width="100%">
1893          <code>boolean</code>
1894          <!-- no parameter comment --></td>
1895      </tr>
1896    </table>
1897
1898</div>
1899
1900
1901<A NAME="onCommand(java.lang.String, int, int, int, android.os.Bundle, boolean)"></A>
1902
1903<div class="api apilevel-">
1904    <h3 class="api-name">onCommand</h3>
1905    <div class="api-level">
1906      <div></div>
1907
1908
1909
1910    </div>
1911<pre class="api-signature no-pretty-print">
1912Bundle onCommand (String action,
1913                int x,
1914                int y,
1915                int z,
1916                Bundle extras,
1917                boolean resultRequested)</pre>
1918
1919
1920
1921
1922  <p></p>
1923    <table class="responsive">
1924    <tr><th colspan=2>Parameters</th></tr>
1925      <tr>
1926        <td><code>action</code></td>
1927        <td width="100%">
1928          <code>String</code>
1929          <!-- no parameter comment --></td>
1930      </tr>
1931      <tr>
1932        <td><code>x</code></td>
1933        <td width="100%">
1934          <code>int</code>
1935          <!-- no parameter comment --></td>
1936      </tr>
1937      <tr>
1938        <td><code>y</code></td>
1939        <td width="100%">
1940          <code>int</code>
1941          <!-- no parameter comment --></td>
1942      </tr>
1943      <tr>
1944        <td><code>z</code></td>
1945        <td width="100%">
1946          <code>int</code>
1947          <!-- no parameter comment --></td>
1948      </tr>
1949      <tr>
1950        <td><code>extras</code></td>
1951        <td width="100%">
1952          <code>Bundle</code>
1953          <!-- no parameter comment --></td>
1954      </tr>
1955      <tr>
1956        <td><code>resultRequested</code></td>
1957        <td width="100%">
1958          <code>boolean</code>
1959          <!-- no parameter comment --></td>
1960      </tr>
1961    </table>
1962    <table class="responsive">
1963      <tr><th colspan=2>Returns</th></tr>
1964      <tr>
1965        <td><code>Bundle</code></td>
1966        <td width="100%"><!-- no returns description in source --></td>
1967      </tr>
1968    </table>
1969
1970</div>
1971
1972
1973<A NAME="onCreate(android.view.SurfaceHolder)"></A>
1974
1975<div class="api apilevel-">
1976    <h3 class="api-name">onCreate</h3>
1977    <div class="api-level">
1978      <div></div>
1979
1980
1981
1982    </div>
1983<pre class="api-signature no-pretty-print">
1984void onCreate (SurfaceHolder holder)</pre>
1985
1986
1987
1988
1989  <p></p>
1990    <table class="responsive">
1991    <tr><th colspan=2>Parameters</th></tr>
1992      <tr>
1993        <td><code>holder</code></td>
1994        <td width="100%">
1995          <code>SurfaceHolder</code>
1996          <!-- no parameter comment --></td>
1997      </tr>
1998    </table>
1999
2000</div>
2001
2002
2003<A NAME="onDestroy()"></A>
2004
2005<div class="api apilevel-">
2006    <h3 class="api-name">onDestroy</h3>
2007    <div class="api-level">
2008      <div></div>
2009
2010
2011
2012    </div>
2013<pre class="api-signature no-pretty-print">
2014void onDestroy ()</pre>
2015
2016
2017
2018
2019  <p></p>
2020
2021</div>
2022
2023
2024<A NAME="onInterruptionFilterChanged(int)"></A>
2025
2026<div class="api apilevel-">
2027    <h3 class="api-name">onInterruptionFilterChanged</h3>
2028    <div class="api-level">
2029      <div></div>
2030
2031
2032
2033    </div>
2034<pre class="api-signature no-pretty-print">
2035void onInterruptionFilterChanged (int interruptionFilter)</pre>
2036
2037
2038
2039
2040  <p>Called when the user changes interruption filter. The watch face should adjust the
2041 amount of information it displays. For example, if it displays the
2042 number of pending emails, it should hide it if interruptionFilter is equal to <code><a href="/reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_NONE">INTERRUPTION_FILTER_NONE</a></code>. <code>interruptionFilter</code> can be
2043 <code><a href="/reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_NONE">INTERRUPTION_FILTER_NONE</a></code>, <code><a href="/reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_PRIORITY">INTERRUPTION_FILTER_PRIORITY</a></code>,
2044 <code><a href="/reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALL">INTERRUPTION_FILTER_ALL</a></code>, <code><a href="/reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_ALARMS">INTERRUPTION_FILTER_ALARMS</a></code>,
2045 or <code><a href="/reference/android/support/wearable/watchface/WatchFaceService.html#INTERRUPTION_FILTER_UNKNOWN">INTERRUPTION_FILTER_UNKNOWN</a></code>.
2046</p>
2047    <table class="responsive">
2048    <tr><th colspan=2>Parameters</th></tr>
2049      <tr>
2050        <td><code>interruptionFilter</code></td>
2051        <td width="100%">
2052          <code>int</code>
2053          <!-- no parameter comment --></td>
2054      </tr>
2055    </table>
2056
2057</div>
2058
2059
2060<A NAME="onNotificationCountChanged(int)"></A>
2061
2062<div class="api apilevel-">
2063    <h3 class="api-name">onNotificationCountChanged</h3>
2064    <div class="api-level">
2065      <div></div>
2066
2067
2068
2069    </div>
2070<pre class="api-signature no-pretty-print">
2071void onNotificationCountChanged (int count)</pre>
2072
2073
2074
2075
2076  <p>Called when the total number of notification cards in the stream has changed.</p>
2077    <table class="responsive">
2078    <tr><th colspan=2>Parameters</th></tr>
2079      <tr>
2080        <td><code>count</code></td>
2081        <td width="100%">
2082          <code>int</code>:
2083          total number of the notification cards in the stream
2084</td>
2085      </tr>
2086    </table>
2087
2088</div>
2089
2090
2091<A NAME="onPeekCardPositionUpdate(android.graphics.Rect)"></A>
2092
2093<div class="api apilevel-">
2094    <h3 class="api-name">onPeekCardPositionUpdate</h3>
2095    <div class="api-level">
2096      <div></div>
2097
2098
2099
2100    </div>
2101<pre class="api-signature no-pretty-print">
2102void onPeekCardPositionUpdate (Rect rect)</pre>
2103
2104
2105
2106
2107  <p>Called when the first, peeking card positions itself on the screen. This is where the
2108 watch face can change its appearance depending on where the card is on the screen. This
2109 doesn't provide information about all movements of the card, only about its location when
2110 it's peeking at the bottom and allowing the watch face to be exposed.
2111</p>
2112    <table class="responsive">
2113    <tr><th colspan=2>Parameters</th></tr>
2114      <tr>
2115        <td><code>rect</code></td>
2116        <td width="100%">
2117          <code>Rect</code>
2118          <!-- no parameter comment --></td>
2119      </tr>
2120    </table>
2121
2122</div>
2123
2124
2125<A NAME="onPropertiesChanged(android.os.Bundle)"></A>
2126
2127<div class="api apilevel-">
2128    <h3 class="api-name">onPropertiesChanged</h3>
2129    <div class="api-level">
2130      <div></div>
2131
2132
2133
2134    </div>
2135<pre class="api-signature no-pretty-print">
2136void onPropertiesChanged (Bundle properties)</pre>
2137
2138
2139
2140
2141  <p>Called when the properties of the device are determined. These include
2142 <code><a href="/reference/android/support/wearable/watchface/WatchFaceService.html#PROPERTY_BURN_IN_PROTECTION">PROPERTY_BURN_IN_PROTECTION</a></code> and <code><a href="/reference/android/support/wearable/watchface/WatchFaceService.html#PROPERTY_LOW_BIT_AMBIENT">PROPERTY_LOW_BIT_AMBIENT</a></code>.</p>
2143    <table class="responsive">
2144    <tr><th colspan=2>Parameters</th></tr>
2145      <tr>
2146        <td><code>properties</code></td>
2147        <td width="100%">
2148          <code>Bundle</code>:
2149          a bundle containing the hardware properties
2150</td>
2151      </tr>
2152    </table>
2153
2154</div>
2155
2156
2157<A NAME="onTapCommand(int, int, int, long)"></A>
2158
2159<div class="api apilevel-">
2160    <h3 class="api-name">onTapCommand</h3>
2161    <div class="api-level">
2162      <div></div>
2163
2164
2165
2166    </div>
2167<pre class="api-signature no-pretty-print">
2168void onTapCommand (int tapType,
2169                int x,
2170                int y,
2171                long eventTime)</pre>
2172
2173
2174
2175
2176  <p>Called when a tap or touch related event occurs.</p>
2177    <table class="responsive">
2178    <tr><th colspan=2>Parameters</th></tr>
2179      <tr>
2180        <td><code>tapType</code></td>
2181        <td width="100%">
2182          <code>int</code>:
2183          Value representing the event sent to the wallpaper.</td>
2184      </tr>
2185      <tr>
2186        <td><code>x</code></td>
2187        <td width="100%">
2188          <code>int</code>:
2189          X coordinate of the event.</td>
2190      </tr>
2191      <tr>
2192        <td><code>y</code></td>
2193        <td width="100%">
2194          <code>int</code>:
2195          Y coordinate of the event.</td>
2196      </tr>
2197      <tr>
2198        <td><code>eventTime</code></td>
2199        <td width="100%">
2200          <code>long</code>:
2201          The time, in millis, of the event.
2202</td>
2203      </tr>
2204    </table>
2205
2206</div>
2207
2208
2209<A NAME="onTimeTick()"></A>
2210
2211<div class="api apilevel-">
2212    <h3 class="api-name">onTimeTick</h3>
2213    <div class="api-level">
2214      <div></div>
2215
2216
2217
2218    </div>
2219<pre class="api-signature no-pretty-print">
2220void onTimeTick ()</pre>
2221
2222
2223
2224
2225  <p>Called periodically to update the time shown by the watch face. This method is
2226 called:<ul>
2227 <li>at least once per minute in both ambient and interactive modes</li>
2228 <li>when date or time has changed</li>
2229 <li>when timezone has changed</li>
2230 </ul>
2231</p>
2232
2233</div>
2234
2235
2236<A NAME="onUnreadCountChanged(int)"></A>
2237
2238<div class="api apilevel-">
2239    <h3 class="api-name">onUnreadCountChanged</h3>
2240    <div class="api-level">
2241      <div></div>
2242
2243
2244
2245    </div>
2246<pre class="api-signature no-pretty-print">
2247void onUnreadCountChanged (int count)</pre>
2248
2249
2250
2251
2252  <p>Called when the number of unread notification cards in the stream has changed.</p>
2253    <table class="responsive">
2254    <tr><th colspan=2>Parameters</th></tr>
2255      <tr>
2256        <td><code>count</code></td>
2257        <td width="100%">
2258          <code>int</code>:
2259          number of the notification cards in the stream that haven't yet been seen by
2260              the user
2261</td>
2262      </tr>
2263    </table>
2264
2265</div>
2266
2267
2268<A NAME="onVisibilityChanged(boolean)"></A>
2269
2270<div class="api apilevel-">
2271    <h3 class="api-name">onVisibilityChanged</h3>
2272    <div class="api-level">
2273      <div></div>
2274
2275
2276
2277    </div>
2278<pre class="api-signature no-pretty-print">
2279void onVisibilityChanged (boolean visible)</pre>
2280
2281
2282
2283
2284  <p>Called to inform you of the watch face becoming visible or hidden. If you decide to
2285 override this method, you <em>must</em> call <code>super.onVisibilityChanged(visible)</code>
2286 as the first statement in your override.
2287</p>
2288    <table class="responsive">
2289    <tr><th colspan=2>Parameters</th></tr>
2290      <tr>
2291        <td><code>visible</code></td>
2292        <td width="100%">
2293          <code>boolean</code>
2294          <!-- no parameter comment --></td>
2295      </tr>
2296    </table>
2297
2298</div>
2299
2300
2301<A NAME="setWatchFaceStyle(android.support.wearable.watchface.WatchFaceStyle)"></A>
2302
2303<div class="api apilevel-">
2304    <h3 class="api-name">setWatchFaceStyle</h3>
2305    <div class="api-level">
2306      <div></div>
2307
2308
2309
2310    </div>
2311<pre class="api-signature no-pretty-print">
2312void setWatchFaceStyle (<a href="/reference/android/support/wearable/watchface/WatchFaceStyle.html">WatchFaceStyle</a> watchFaceStyle)</pre>
2313
2314
2315
2316
2317  <p>Sets the watch face style. This affects how UI elements such as the battery indicator are
2318 drawn on top of the watch face. Typically called in <code><a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onCreate(android.view.SurfaceHolder)">onCreate(SurfaceHolder)</a></code> but may be called
2319 at any time, e.g. in response to the user changing the watch face configuration. Must be
2320 called from the wallpaper thread.
2321</p>
2322    <table class="responsive">
2323    <tr><th colspan=2>Parameters</th></tr>
2324      <tr>
2325        <td><code>watchFaceStyle</code></td>
2326        <td width="100%">
2327          <code>WatchFaceStyle</code>
2328          <!-- no parameter comment --></td>
2329      </tr>
2330    </table>
2331
2332</div>
2333
2334
2335
2336
2337
2338<!-- ========= METHOD DETAIL ======== -->
2339
2340
2341
2342<!-- ========= END OF CLASS DATA ========= -->
2343
2344</div><!-- end jd-content -->
2345
2346
2347
2348<div class="data-reference-resources-wrapper">
2349
2350  <ul data-reference-resources>
2351
2352    <li><h2>Annotations</h2>
2353      <ul>
2354          <li class="api apilevel-"><a href="/reference/android/support/wearable/watchface/WatchFaceService.TapType.html">WatchFaceService.TapType</a></li>
2355      </ul>
2356    </li>
2357
2358
2359    <li><h2>Classes</h2>
2360      <ul>
2361          <li class="api apilevel-"><a href="/reference/android/support/wearable/watchface/CanvasWatchFaceService.html">CanvasWatchFaceService</a></li>
2362          <li class="api apilevel-"><a href="/reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html">CanvasWatchFaceService.Engine</a></li>
2363          <li class="api apilevel-"><a href="/reference/android/support/wearable/watchface/Gles2WatchFaceService.html">Gles2WatchFaceService</a></li>
2364          <li class="api apilevel-"><a href="/reference/android/support/wearable/watchface/Gles2WatchFaceService.Engine.html">Gles2WatchFaceService.Engine</a></li>
2365          <li class="api apilevel-"><a href="/reference/android/support/wearable/watchface/WatchFaceService.html">WatchFaceService</a></li>
2366          <li class="selected api apilevel-"><a href="/reference/android/support/wearable/watchface/WatchFaceService.Engine.html">WatchFaceService.Engine</a></li>
2367          <li class="api apilevel-"><a href="/reference/android/support/wearable/watchface/WatchFaceStyle.html">WatchFaceStyle</a></li>
2368          <li class="api apilevel-"><a href="/reference/android/support/wearable/watchface/WatchFaceStyle.Builder.html">WatchFaceStyle.Builder</a></li>
2369      </ul>
2370    </li>
2371
2372
2373
2374  </ul>
2375
2376</div>
2377
2378
2379
2380</body>
2381</html>
2382