I have a Java WearOS app that tries to implement a simple tile. The tile does not appear in the Add Tile list.
AndroidManifest.xml
<service
android:name='com.gncbrown.GetMeBackWatch.Utilities.GetMeBackTileService'
android:exported='true'
android:label='GetMeBack Tile'
android:icon='@drawable/icon'
android:permission='com.google.android.wearable.permission.BIND_TILE_PROVIDER'>
<intent-filter>
<action android:name='androidx.wear.tiles.action.BIND_TILE_PROVIDER' />
</intent-filter>
<meta-data
android:name='androidx.wear.tiles.PREVIEW'
android:resource='@drawable/icon' />
</service>
GetMeBackTileService
public class GetMeBackTileService extends TileService {
private static final String RESOURCES_VERSION = '5';
@NonNull
@Override
protected ListenableFuture<TileBuilders.Tile> onTileRequest(@NonNull RequestBuilders.TileRequest requestParams) {
return Futures.immediateFuture(new TileBuilders.Tile.Builder()
.setResourcesVersion(RESOURCES_VERSION)
//.setFreshnessIntervalMillis(60*1000*5) // 60 minutes
.setTimeline(new TimelineBuilders.Timeline.Builder()
.addTimelineEntry(new TimelineBuilders.TimelineEntry.Builder()
.setLayout(new LayoutElementBuilders.Layout.Builder()
.setRoot(new LayoutElementBuilders.Text.Builder().setText('Test').
setModifiers(new ModifiersBuilders.Modifiers.Builder().setSemantics(
new ModifiersBuilders.Semantics.Builder().setContentDescription('lol').build()).build()
).build()
).build()
).build()
).build()
).build()
);
}
@NonNull
@Override
protected ListenableFuture<ResourceBuilders.Resources> onResourcesRequest(@NonNull RequestBuilders.ResourcesRequest requestParams) {
return Futures.immediateFuture(new ResourceBuilders.Resources.Builder()
.setVersion('5')
.build());
}
}
I don't see my tile appear in the tile list for apps.