Rename TileProviderService -> TileService.

This is to bring it in line with the rest of Wear's provider services.

Test: Existing tests pass.
Relnote: Renamed TileProviderService to TileService.
Change-Id: I1ad2c33119a4e098a458c4791d27409b3f5fc1a9
diff --git a/wear/tiles/tiles-proto/src/main/proto/requests.proto b/wear/tiles/tiles-proto/src/main/proto/requests.proto
index cf54aab..2b6d7bf 100644
--- a/wear/tiles/tiles-proto/src/main/proto/requests.proto
+++ b/wear/tiles/tiles-proto/src/main/proto/requests.proto
@@ -9,7 +9,7 @@
 option java_package = "androidx.wear.tiles.proto";
 option java_outer_classname = "RequestProto";
 
-// Parameters passed to a Tile provider when the renderer is requesting a new
+// Parameters passed to a Tile Service when the renderer is requesting a new
 // version of the tile.
 message TileRequest {
   // Parameters describing the device requesting the tile update.
@@ -19,7 +19,7 @@
   State state = 2;
 }
 
-// Parameters passed to a Tile provider when the renderer is requesting a
+// Parameters passed to a Tile Service when the renderer is requesting a
 // specific resource version.
 message ResourcesRequest {
   // The version of the resources being fetched. This is the same as the
diff --git a/wear/tiles/tiles-proto/src/main/proto/tile.proto b/wear/tiles/tiles-proto/src/main/proto/tile.proto
index 542fff8..3abfaf8 100644
--- a/wear/tiles/tiles-proto/src/main/proto/tile.proto
+++ b/wear/tiles/tiles-proto/src/main/proto/tile.proto
@@ -28,7 +28,7 @@
   // can be considered to be "fresh". The platform will attempt to refresh
   // your tile at some point in the future after this interval has lapsed. A
   // value of 0 here signifies that auto-refreshes should not be used (i.e. you
-  // will manually request updates via TileProviderService#getRequester).
+  // will manually request updates via TileService#getRequester).
   //
   // This mechanism should not be used to update your tile more frequently than
   // once a minute, and the system may throttle your updates if you request
diff --git a/wear/tiles/tiles-renderer/api/current.txt b/wear/tiles/tiles-renderer/api/current.txt
index cb3df5a..a162ceb 100644
--- a/wear/tiles/tiles-renderer/api/current.txt
+++ b/wear/tiles/tiles-renderer/api/current.txt
@@ -1,7 +1,7 @@
 // Signature format: 4.0
 package androidx.wear.tiles.client {
 
-  public interface TileProviderClient {
+  public interface TileClient {
     method public com.google.common.util.concurrent.ListenableFuture<java.lang.Integer!> requestApiVersion();
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.ResourceBuilders.Resources!> requestResources(androidx.wear.tiles.RequestBuilders.ResourcesRequest);
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.TileBuilders.Tile!> requestTile(androidx.wear.tiles.RequestBuilders.TileRequest);
@@ -15,9 +15,9 @@
 
 package androidx.wear.tiles.connection {
 
-  public final class DefaultTileProviderClient implements androidx.wear.tiles.client.TileProviderClient {
-    ctor public DefaultTileProviderClient(android.content.Context context, android.content.ComponentName componentName, kotlinx.coroutines.CoroutineScope coroutineScope, kotlinx.coroutines.CoroutineDispatcher coroutineDispatcher);
-    ctor public DefaultTileProviderClient(android.content.Context context, android.content.ComponentName componentName, java.util.concurrent.Executor executor);
+  public final class DefaultTileClient implements androidx.wear.tiles.client.TileClient {
+    ctor public DefaultTileClient(android.content.Context context, android.content.ComponentName componentName, kotlinx.coroutines.CoroutineScope coroutineScope, kotlinx.coroutines.CoroutineDispatcher coroutineDispatcher);
+    ctor public DefaultTileClient(android.content.Context context, android.content.ComponentName componentName, java.util.concurrent.Executor executor);
     method public com.google.common.util.concurrent.ListenableFuture<java.lang.Integer> requestApiVersion();
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.ResourceBuilders.Resources> requestResources(androidx.wear.tiles.RequestBuilders.ResourcesRequest requestParams);
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.TileBuilders.Tile> requestTile(androidx.wear.tiles.RequestBuilders.TileRequest requestParams);
diff --git a/wear/tiles/tiles-renderer/api/public_plus_experimental_current.txt b/wear/tiles/tiles-renderer/api/public_plus_experimental_current.txt
index cb3df5a..a162ceb 100644
--- a/wear/tiles/tiles-renderer/api/public_plus_experimental_current.txt
+++ b/wear/tiles/tiles-renderer/api/public_plus_experimental_current.txt
@@ -1,7 +1,7 @@
 // Signature format: 4.0
 package androidx.wear.tiles.client {
 
-  public interface TileProviderClient {
+  public interface TileClient {
     method public com.google.common.util.concurrent.ListenableFuture<java.lang.Integer!> requestApiVersion();
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.ResourceBuilders.Resources!> requestResources(androidx.wear.tiles.RequestBuilders.ResourcesRequest);
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.TileBuilders.Tile!> requestTile(androidx.wear.tiles.RequestBuilders.TileRequest);
@@ -15,9 +15,9 @@
 
 package androidx.wear.tiles.connection {
 
-  public final class DefaultTileProviderClient implements androidx.wear.tiles.client.TileProviderClient {
-    ctor public DefaultTileProviderClient(android.content.Context context, android.content.ComponentName componentName, kotlinx.coroutines.CoroutineScope coroutineScope, kotlinx.coroutines.CoroutineDispatcher coroutineDispatcher);
-    ctor public DefaultTileProviderClient(android.content.Context context, android.content.ComponentName componentName, java.util.concurrent.Executor executor);
+  public final class DefaultTileClient implements androidx.wear.tiles.client.TileClient {
+    ctor public DefaultTileClient(android.content.Context context, android.content.ComponentName componentName, kotlinx.coroutines.CoroutineScope coroutineScope, kotlinx.coroutines.CoroutineDispatcher coroutineDispatcher);
+    ctor public DefaultTileClient(android.content.Context context, android.content.ComponentName componentName, java.util.concurrent.Executor executor);
     method public com.google.common.util.concurrent.ListenableFuture<java.lang.Integer> requestApiVersion();
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.ResourceBuilders.Resources> requestResources(androidx.wear.tiles.RequestBuilders.ResourcesRequest requestParams);
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.TileBuilders.Tile> requestTile(androidx.wear.tiles.RequestBuilders.TileRequest requestParams);
diff --git a/wear/tiles/tiles-renderer/api/restricted_current.txt b/wear/tiles/tiles-renderer/api/restricted_current.txt
index cb3df5a..a162ceb 100644
--- a/wear/tiles/tiles-renderer/api/restricted_current.txt
+++ b/wear/tiles/tiles-renderer/api/restricted_current.txt
@@ -1,7 +1,7 @@
 // Signature format: 4.0
 package androidx.wear.tiles.client {
 
-  public interface TileProviderClient {
+  public interface TileClient {
     method public com.google.common.util.concurrent.ListenableFuture<java.lang.Integer!> requestApiVersion();
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.ResourceBuilders.Resources!> requestResources(androidx.wear.tiles.RequestBuilders.ResourcesRequest);
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.TileBuilders.Tile!> requestTile(androidx.wear.tiles.RequestBuilders.TileRequest);
@@ -15,9 +15,9 @@
 
 package androidx.wear.tiles.connection {
 
-  public final class DefaultTileProviderClient implements androidx.wear.tiles.client.TileProviderClient {
-    ctor public DefaultTileProviderClient(android.content.Context context, android.content.ComponentName componentName, kotlinx.coroutines.CoroutineScope coroutineScope, kotlinx.coroutines.CoroutineDispatcher coroutineDispatcher);
-    ctor public DefaultTileProviderClient(android.content.Context context, android.content.ComponentName componentName, java.util.concurrent.Executor executor);
+  public final class DefaultTileClient implements androidx.wear.tiles.client.TileClient {
+    ctor public DefaultTileClient(android.content.Context context, android.content.ComponentName componentName, kotlinx.coroutines.CoroutineScope coroutineScope, kotlinx.coroutines.CoroutineDispatcher coroutineDispatcher);
+    ctor public DefaultTileClient(android.content.Context context, android.content.ComponentName componentName, java.util.concurrent.Executor executor);
     method public com.google.common.util.concurrent.ListenableFuture<java.lang.Integer> requestApiVersion();
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.ResourceBuilders.Resources> requestResources(androidx.wear.tiles.RequestBuilders.ResourcesRequest requestParams);
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.TileBuilders.Tile> requestTile(androidx.wear.tiles.RequestBuilders.TileRequest requestParams);
diff --git a/wear/tiles/tiles-renderer/src/androidTest/proto/requests.proto b/wear/tiles/tiles-renderer/src/androidTest/proto/requests.proto
index 2075e7c..489c833 100644
--- a/wear/tiles/tiles-renderer/src/androidTest/proto/requests.proto
+++ b/wear/tiles/tiles-renderer/src/androidTest/proto/requests.proto
@@ -9,7 +9,7 @@
 option java_package = "androidx.wear.tiles.testing.proto";
 option java_outer_classname = "RequestProto";
 
-// Parameters passed to a Tile provider when the renderer is requesting a new
+// Parameters passed to a Tile Service when the renderer is requesting a new
 // version of the tile.
 message TileRequest {
   // Parameters describing the device requesting the tile update.
@@ -19,7 +19,7 @@
   State state = 2;
 }
 
-// Parameters passed to a Tile provider when the renderer is requesting a
+// Parameters passed to a Tile Service when the renderer is requesting a
 // specific resource version.
 message ResourcesRequest {
   // The version of the resources being fetched
diff --git a/wear/tiles/tiles-renderer/src/androidTest/proto/tile.proto b/wear/tiles/tiles-renderer/src/androidTest/proto/tile.proto
index 8831717..78215c0 100644
--- a/wear/tiles/tiles-renderer/src/androidTest/proto/tile.proto
+++ b/wear/tiles/tiles-renderer/src/androidTest/proto/tile.proto
@@ -25,6 +25,6 @@
   // can be considered to be "fresh". The platform will attempt to refresh
   // your tile at some point in the future after this interval has lapsed. A
   // value of 0 here signifies that auto-refreshes should not be used (i.e. you
-  // will manually request updates via TileProviderService#getRequester).
+  // will manually request updates via TileService#getRequester).
   uint64 freshness_interval_millis = 4;
 }
diff --git a/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/client/TileProviderClient.java b/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/client/TileClient.java
similarity index 70%
rename from wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/client/TileProviderClient.java
rename to wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/client/TileClient.java
index 48ad986..da4a8ec4 100644
--- a/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/client/TileProviderClient.java
+++ b/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/client/TileClient.java
@@ -24,36 +24,36 @@
 import com.google.common.util.concurrent.ListenableFuture;
 
 /**
- * Client to connect and interact with a TileProviderService.
+ * Client to connect and interact with a TileService.
  */
-public interface TileProviderClient {
-    /** Gets the API version supported by the connected TileProviderService. */
+public interface TileClient {
+    /** Gets the API version supported by the connected TileService. */
     @NonNull
     ListenableFuture<Integer> requestApiVersion();
 
-    /** Request a tile payload from the connected TileProviderService. */
+    /** Request a tile payload from the connected TileService. */
     @NonNull
     ListenableFuture<TileBuilders.Tile> requestTile(
             @NonNull RequestBuilders.TileRequest requestParams);
 
-    /** Request a resource bundle from the connected TileProviderService. */
+    /** Request a resource bundle from the connected TileService. */
     @NonNull
     ListenableFuture<ResourceBuilders.Resources> requestResources(
             @NonNull RequestBuilders.ResourcesRequest requestParams);
 
-    /** Send a Tile Added notification to the connected TileProviderService. */
+    /** Send a Tile Added notification to the connected TileService. */
     @NonNull
     ListenableFuture<Void> sendOnTileAddedEvent();
 
-    /** Send a Tile Removed notification to the connected TileProviderService. */
+    /** Send a Tile Removed notification to the connected TileService. */
     @NonNull
     ListenableFuture<Void> sendOnTileRemovedEvent();
 
-    /** Send a Tile Enter notification to the connected TileProviderService. */
+    /** Send a Tile Enter notification to the connected TileService. */
     @NonNull
     ListenableFuture<Void> sendOnTileEnterEvent();
 
-    /** Send a Tile Leave notification to the connected TileProviderService. */
+    /** Send a Tile Leave notification to the connected TileService. */
     @NonNull
     ListenableFuture<Void> sendOnTileLeaveEvent();
 }
diff --git a/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/connection/DefaultTileProviderClient.kt b/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/connection/DefaultTileClient.kt
similarity index 89%
rename from wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/connection/DefaultTileProviderClient.kt
rename to wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/connection/DefaultTileClient.kt
index 4290e82..dd509d06 100644
--- a/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/connection/DefaultTileProviderClient.kt
+++ b/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/connection/DefaultTileClient.kt
@@ -34,9 +34,9 @@
 import androidx.wear.tiles.TileEnterEventData
 import androidx.wear.tiles.TileLeaveEventData
 import androidx.wear.tiles.TileProvider
-import androidx.wear.tiles.TileProviderService
+import androidx.wear.tiles.TileService
 import androidx.wear.tiles.TileRemoveEventData
-import androidx.wear.tiles.client.TileProviderClient
+import androidx.wear.tiles.client.TileClient
 import androidx.wear.tiles.proto.ResourceProto
 import androidx.wear.tiles.proto.TileProto
 import androidx.wear.tiles.protobuf.InvalidProtocolBufferException
@@ -54,18 +54,18 @@
 import kotlin.coroutines.resumeWithException
 
 /**
- * Implementation of [TileProviderClient] which can connect to a `TileProviderService` in either the
- * local process, or in a remote app.
+ * Implementation of [TileClient] which can connect to a `TileService` in either the local
+ * process, or in a remote app.
  *
  * This implementation will only stay connected for as long as required. Each call will cause this
- * client to connect to the `TileProviderService`, and call the specified remote method. It will
- * then disconnect again after one second of inactivity (so calls in quick succession will share
- * the same binder).
+ * client to connect to the `TileService`, and call the specified remote method. It will then
+ * disconnect again after one second of inactivity (so calls in quick succession will share the
+ * same binder).
  *
- * Note that there is a timeout of 10s when connecting to the `TileProviderService`, and a
- * timeout of 30s for [requestTile] and [requestResources] to return a payload.
+ * Note that there is a timeout of 10s when connecting to the `TileService`, and a timeout of 30s
+ * for [requestTile] and [requestResources] to return a payload.
  */
-public class DefaultTileProviderClient : TileProviderClient {
+public class DefaultTileClient : TileClient {
     internal companion object {
         @VisibleForTesting
         internal const val TIMEOUT_MILLIS = 30000L // 30s
@@ -95,12 +95,12 @@
     private val connectionBinder: TilesConnectionBinder
 
     /**
-     * Build an instance of [DefaultTileProviderClient] for use with a coroutine dispatcher.
+     * Build an instance of [DefaultTileClient] for use with a coroutine dispatcher.
      *
-     * @param context The application context to use when binding to the [TileProviderService].
-     * @param componentName The [ComponentName] of the [TileProviderService] to bind to.
+     * @param context The application context to use when binding to the [TileService].
+     * @param componentName The [ComponentName] of the [TileService] to bind to.
      * @param coroutineScope A [CoroutineScope] to use when dispatching calls to the
-     *   [TileProviderService]. Cancelling the passed [CoroutineScope] will also cancel any pending
+     *   [TileService]. Cancelling the passed [CoroutineScope] will also cancel any pending
      *   work in this class.
      * @param coroutineDispatcher A [CoroutineDispatcher] to use when dispatching work from this
      *   class.
@@ -118,11 +118,11 @@
     }
 
     /**
-     * Build an instance of [DefaultTileProviderClient] for use with a given [Executor].
+     * Build an instance of [DefaultTileClient] for use with a given [Executor].
      *
-     * @param context The application context to use when binding to the [TileProviderService].
-     * @param componentName The [ComponentName] of the [TileProviderService] to bind to.
-     * @param executor An [Executor] to use when dispatching calls to the [TileProviderService].
+     * @param context The application context to use when binding to the [TileService].
+     * @param componentName The [ComponentName] of the [TileService] to bind to.
+     * @param executor An [Executor] to use when dispatching calls to the [TileService].
      */
     public constructor(context: Context, componentName: ComponentName, executor: Executor) {
         this.coroutineDispatcher = executor.asCoroutineDispatcher()
diff --git a/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/connection/TilesConnectionBinder.kt b/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/connection/TilesConnectionBinder.kt
index 0ab04c2..cb797f6 100644
--- a/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/connection/TilesConnectionBinder.kt
+++ b/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/connection/TilesConnectionBinder.kt
@@ -22,7 +22,7 @@
 import android.content.ServiceConnection
 import android.os.IBinder
 import androidx.wear.tiles.TileProvider
-import androidx.wear.tiles.TileProviderService
+import androidx.wear.tiles.TileService
 import kotlinx.coroutines.CoroutineDispatcher
 import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.Deferred
@@ -135,7 +135,7 @@
     private suspend fun connectToService(): TileProvider = coroutineScope {
         val bindJob = async(backgroundCoroutineDispatcher) {
             suspendCancellableCoroutine<TileProvider> { continuation ->
-                val bindIntent = Intent(TileProviderService.ACTION_BIND_TILE_PROVIDER)
+                val bindIntent = Intent(TileService.ACTION_BIND_TILE_PROVIDER)
                 bindIntent.component = componentName
 
                 val myConnection = object : ServiceConnection {
diff --git a/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/manager/TileUiClient.kt b/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/manager/TileUiClient.kt
index 5aa71ab..fe72a24 100644
--- a/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/manager/TileUiClient.kt
+++ b/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/manager/TileUiClient.kt
@@ -37,7 +37,7 @@
 import androidx.wear.tiles.StateBuilders
 import androidx.wear.tiles.TimelineBuilders
 import androidx.wear.tiles.checkers.TimelineChecker
-import androidx.wear.tiles.connection.DefaultTileProviderClient
+import androidx.wear.tiles.connection.DefaultTileClient
 import androidx.wear.tiles.renderer.TileRenderer
 import androidx.wear.tiles.timeline.TilesTimelineManager
 import kotlinx.coroutines.CoroutineScope
@@ -51,7 +51,7 @@
 import java.util.concurrent.Executors
 
 /**
- * UI client for a single tile. This handles binding to a Tile Provider, and inflating the given
+ * UI client for a single tile. This handles binding to a Tile Service, and inflating the given
  * tile contents into the provided parentView. This also handles requested updates, re-fetching the
  * tile on-demand.
  *
@@ -73,7 +73,7 @@
     private val coroutineScope = CoroutineScope(Dispatchers.Main + job)
     private val timelineChecker = TimelineChecker()
 
-    private val tilesConnection = DefaultTileProviderClient(
+    private val tilesConnection = DefaultTileClient(
         context = context,
         componentName = component,
         coroutineScope = coroutineScope,
@@ -97,7 +97,7 @@
 
     /**
      * Initialize this {@link TileManager}. This will cause the {@link TileManager} to connect to
-     * the tile provider and request the first tile. It will also trigger any requested updates.
+     * the tile service and request the first tile. It will also trigger any requested updates.
      */
     @MainThread
     public fun connect() {
@@ -117,7 +117,7 @@
 
     /**
      * Shut down this {@link TileManager}. This will cancel any scheduled updates, and close the
-     * connection with the tile provider.
+     * connection with the tile service.
      */
     @MainThread
     override fun close() {
diff --git a/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/renderer/internal/DefaultAndroidImageResourceByResIdResolver.java b/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/renderer/internal/DefaultAndroidImageResourceByResIdResolver.java
index c3ab842..06345ca 100644
--- a/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/renderer/internal/DefaultAndroidImageResourceByResIdResolver.java
+++ b/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/renderer/internal/DefaultAndroidImageResourceByResIdResolver.java
@@ -34,7 +34,7 @@
     /**
      * Constructor.
      *
-     * @param androidResources An Android Resources instance for the tile provider's package. This
+     * @param androidResources An Android Resources instance for the tile service's package. This
      *     is normally obtained from {@code PackageManager#getResourcesForApplication}.
      */
     public DefaultAndroidImageResourceByResIdResolver(@NonNull Resources androidResources) {
diff --git a/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/renderer/internal/ResourceResolvers.java b/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/renderer/internal/ResourceResolvers.java
index 5c7bd19..f98f776 100644
--- a/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/renderer/internal/ResourceResolvers.java
+++ b/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/renderer/internal/ResourceResolvers.java
@@ -224,7 +224,7 @@
         return errorFuture;
     }
 
-    /** Builder for ResourceProviders */
+    /** Builder for ResourceResolvers */
     public static final class Builder {
         @NonNull private final ResourceProto.Resources mProtoResources;
         @Nullable private AndroidImageResourceByResIdResolver mAndroidImageResourceByResIdResolver;
diff --git a/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/renderer/internal/StandardResourceResolvers.java b/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/renderer/internal/StandardResourceResolvers.java
index cfcc08f..6308bbf 100644
--- a/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/renderer/internal/StandardResourceResolvers.java
+++ b/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/renderer/internal/StandardResourceResolvers.java
@@ -20,6 +20,7 @@
 import android.content.res.Resources;
 
 import androidx.annotation.NonNull;
+import androidx.wear.tiles.TileService;
 import androidx.wear.tiles.proto.ResourceProto;
 
 /** Utility class to get {@link ResourceResolvers} populated with standard options. */
@@ -50,7 +51,7 @@
 
     /**
      * Get a builder pre-populated with resolvers for the resources of a {@link
-     * androidx.wear.tiles.TileProviderService}, hosted within another app on the device.
+     * TileService}, hosted within another app on the device.
      *
      * <p>Use {@code setFooAccessor} calls to change the pre-populated ones or add others.
      *
diff --git a/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/renderer/internal/TileRendererInternal.java b/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/renderer/internal/TileRendererInternal.java
index 647c94a..9770536 100644
--- a/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/renderer/internal/TileRendererInternal.java
+++ b/wear/tiles/tiles-renderer/src/main/java/androidx/wear/tiles/renderer/internal/TileRendererInternal.java
@@ -68,7 +68,7 @@
 import androidx.annotation.Nullable;
 import androidx.annotation.StyleRes;
 import androidx.core.content.ContextCompat;
-import androidx.wear.tiles.TileProviderService;
+import androidx.wear.tiles.TileService;
 import androidx.wear.tiles.proto.ActionProto.Action;
 import androidx.wear.tiles.proto.ActionProto.AndroidActivity;
 import androidx.wear.tiles.proto.ActionProto.AndroidExtra;
@@ -813,7 +813,7 @@
             i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
 
             if (!clickableId.isEmpty()) {
-                i.putExtra(TileProviderService.EXTRA_CLICKABLE_ID, clickableId);
+                i.putExtra(TileService.EXTRA_CLICKABLE_ID, clickableId);
             }
 
             for (Map.Entry<String, AndroidExtra> entry : activity.getKeyToExtraMap().entrySet()) {
diff --git a/wear/tiles/tiles-renderer/src/test/java/androidx/wear/tiles/connection/DefaultTileProviderClientTest.kt b/wear/tiles/tiles-renderer/src/test/java/androidx/wear/tiles/connection/DefaultTileClientTest.kt
similarity index 86%
rename from wear/tiles/tiles-renderer/src/test/java/androidx/wear/tiles/connection/DefaultTileProviderClientTest.kt
rename to wear/tiles/tiles-renderer/src/test/java/androidx/wear/tiles/connection/DefaultTileClientTest.kt
index b03a20c..44c2ccf 100644
--- a/wear/tiles/tiles-renderer/src/test/java/androidx/wear/tiles/connection/DefaultTileProviderClientTest.kt
+++ b/wear/tiles/tiles-renderer/src/test/java/androidx/wear/tiles/connection/DefaultTileClientTest.kt
@@ -58,28 +58,28 @@
 @Config(manifest = Config.NONE)
 @OptIn(ExperimentalCoroutinesApi::class, ExperimentalStdlibApi::class)
 @RunWith(TilesTestRunner::class)
-public class DefaultTileProviderClientTest {
+public class DefaultTileClientTest {
     public companion object {
         private val TILE_PROVIDER = ComponentName("HelloWorld", "FooBarBaz")
     }
 
     private lateinit var appContext: Context
-    private lateinit var fakeTileProvider: FakeTileProviderService
+    private lateinit var fakeTileService: FakeTileService
     private lateinit var fakeCoroutineDispatcher: TestCoroutineDispatcher
     private lateinit var fakeCoroutineScope: TestCoroutineScope
-    private lateinit var clientUnderTest: DefaultTileProviderClient
+    private lateinit var clientUnderTest: DefaultTileClient
 
     @Before
     public fun setUp() {
         appContext = ApplicationProvider.getApplicationContext()
-        fakeTileProvider = FakeTileProviderService()
+        fakeTileService = FakeTileService()
         fakeCoroutineDispatcher = TestCoroutineDispatcher()
         fakeCoroutineScope = TestCoroutineScope()
 
         Shadows.shadowOf(appContext as Application)
-            .setComponentNameAndServiceForBindService(TILE_PROVIDER, fakeTileProvider.asBinder())
+            .setComponentNameAndServiceForBindService(TILE_PROVIDER, fakeTileService.asBinder())
 
-        clientUnderTest = DefaultTileProviderClient(
+        clientUnderTest = DefaultTileClient(
             appContext, TILE_PROVIDER,
             fakeCoroutineScope, fakeCoroutineDispatcher
         )
@@ -96,7 +96,7 @@
     @Test
     public fun getTileContents_canGetTileContents(): Unit = fakeCoroutineScope.runBlockingTest {
         val expectedTile = TileBuilders.Tile.Builder().setResourcesVersion("5").build()
-        fakeTileProvider.returnTile = expectedTile.toProto().toByteArray()
+        fakeTileService.returnTile = expectedTile.toProto().toByteArray()
 
         val result = async {
             clientUnderTest.requestTile(RequestBuilders.TileRequest.Builder().build()).await()
@@ -111,7 +111,7 @@
     public fun getTileContents_failsIfUnparsableResult(): Unit =
         fakeCoroutineScope.runBlockingTest {
             // Put some random payload in and see if it breaks.
-            fakeTileProvider.returnTile = byteArrayOf(127)
+            fakeTileService.returnTile = byteArrayOf(127)
 
             val result = async {
                 clientUnderTest.requestTile(RequestBuilders.TileRequest.Builder().build()).await()
@@ -128,8 +128,8 @@
     public fun getTileContents_failsIfVersionMismatch(): Unit = fakeCoroutineScope.runBlockingTest {
         // Put some random payload in and see if it breaks.
         val expectedTile = TileProto.Tile.newBuilder().setResourcesVersion("5").build()
-        fakeTileProvider.returnTile = expectedTile.toByteArray()
-        fakeTileProvider.returnTileVersion = -1
+        fakeTileService.returnTile = expectedTile.toByteArray()
+        fakeTileService.returnTileVersion = -1
 
         val result = async {
             clientUnderTest.requestTile(RequestBuilders.TileRequest.Builder().build()).await()
@@ -144,8 +144,8 @@
     @Test
     public fun getTileContents_failsOnTimeout(): Unit = fakeCoroutineScope.runBlockingTest {
         val expectedTile = TileProto.Tile.newBuilder().setResourcesVersion("5").build()
-        fakeTileProvider.returnTile = expectedTile.toByteArray()
-        fakeTileProvider.shouldReturnTile = false
+        fakeTileService.returnTile = expectedTile.toByteArray()
+        fakeTileService.shouldReturnTile = false
 
         // This has to be dispatched on the correct dispatcher, so we can fully control its timing.
         val result = async(fakeCoroutineDispatcher) {
@@ -155,10 +155,10 @@
 
         assertThat(result.isCompleted).isFalse()
 
-        fakeCoroutineDispatcher.advanceTimeBy(DefaultTileProviderClient.TIMEOUT_MILLIS / 2)
+        fakeCoroutineDispatcher.advanceTimeBy(DefaultTileClient.TIMEOUT_MILLIS / 2)
         assertThat(result.isCompleted).isFalse()
 
-        fakeCoroutineDispatcher.advanceTimeBy(DefaultTileProviderClient.TIMEOUT_MILLIS / 2)
+        fakeCoroutineDispatcher.advanceTimeBy(DefaultTileClient.TIMEOUT_MILLIS / 2)
         assertThat(result.isCompleted).isTrue()
 
         assertThat(result.getCompletionExceptionOrNull())
@@ -168,7 +168,7 @@
     @Test
     public fun getResources_canGetResources(): Unit = fakeCoroutineScope.runBlockingTest {
         val expectedResources = ResourceBuilders.Resources.Builder().setVersion("5").build()
-        fakeTileProvider.returnResources = expectedResources.toProto().toByteArray()
+        fakeTileService.returnResources = expectedResources.toProto().toByteArray()
 
         val result = async {
             clientUnderTest.requestResources(
@@ -182,7 +182,7 @@
 
     @Test
     public fun getResources_failsIfUnparsableResult(): Unit = fakeCoroutineScope.runBlockingTest {
-        fakeTileProvider.returnResources = byteArrayOf(127)
+        fakeTileService.returnResources = byteArrayOf(127)
 
         val result = async {
             clientUnderTest.requestResources(
@@ -200,8 +200,8 @@
     @Test
     public fun getResources_failsIfVersionMismatch(): Unit = fakeCoroutineScope.runBlockingTest {
         val expectedResources = ResourceBuilders.Resources.Builder().setVersion("5").build()
-        fakeTileProvider.returnResources = expectedResources.toProto().toByteArray()
-        fakeTileProvider.returnResourcesVersion = -2
+        fakeTileService.returnResources = expectedResources.toProto().toByteArray()
+        fakeTileService.returnResourcesVersion = -2
 
         val result = async {
             clientUnderTest.requestResources(
@@ -218,8 +218,8 @@
     @Test
     public fun getResources_failsOnTimeout(): Unit = fakeCoroutineScope.runBlockingTest {
         val expectedResources = ResourceBuilders.Resources.Builder().setVersion("5").build()
-        fakeTileProvider.returnResources = expectedResources.toProto().toByteArray()
-        fakeTileProvider.shouldReturnResources = false
+        fakeTileService.returnResources = expectedResources.toProto().toByteArray()
+        fakeTileService.shouldReturnResources = false
 
         // This has to be dispatched on the correct dispatcher, so we can fully control its timing.
         val result = async(fakeCoroutineDispatcher) {
@@ -231,10 +231,10 @@
 
         assertThat(result.isCompleted).isFalse()
 
-        fakeCoroutineDispatcher.advanceTimeBy(DefaultTileProviderClient.TIMEOUT_MILLIS / 2)
+        fakeCoroutineDispatcher.advanceTimeBy(DefaultTileClient.TIMEOUT_MILLIS / 2)
         assertThat(result.isCompleted).isFalse()
 
-        fakeCoroutineDispatcher.advanceTimeBy(DefaultTileProviderClient.TIMEOUT_MILLIS / 2)
+        fakeCoroutineDispatcher.advanceTimeBy(DefaultTileClient.TIMEOUT_MILLIS / 2)
         assertThat(result.isCompleted).isTrue()
 
         assertThat(result.getCompletionExceptionOrNull())
@@ -250,7 +250,7 @@
         Shadows.shadowOf(Looper.getMainLooper()).idle() // Ensure it actually binds...
         job.join()
 
-        assertThat(fakeTileProvider.onTileAddCalled).isTrue()
+        assertThat(fakeTileService.onTileAddCalled).isTrue()
     }
 
     @Test
@@ -262,7 +262,7 @@
         Shadows.shadowOf(Looper.getMainLooper()).idle() // Ensure it actually binds...
         job.join()
 
-        assertThat(fakeTileProvider.onTileRemoveCalled).isTrue()
+        assertThat(fakeTileService.onTileRemoveCalled).isTrue()
     }
 
     @Test
@@ -274,7 +274,7 @@
         Shadows.shadowOf(Looper.getMainLooper()).idle() // Ensure it actually binds...
         job.join()
 
-        assertThat(fakeTileProvider.onTileEnterCalled).isTrue()
+        assertThat(fakeTileService.onTileEnterCalled).isTrue()
     }
 
     @Test
@@ -286,10 +286,10 @@
         Shadows.shadowOf(Looper.getMainLooper()).idle() // Ensure it actually binds...
         job.join()
 
-        assertThat(fakeTileProvider.onTileLeaveCalled).isTrue()
+        assertThat(fakeTileService.onTileLeaveCalled).isTrue()
     }
 
-    private class FakeTileProviderService : TileProvider.Stub() {
+    private class FakeTileService : TileProvider.Stub() {
         var shouldReturnTile = true
         var returnTile = ByteArray(0)
         var returnTileVersion = TileData.VERSION_PROTOBUF
diff --git a/wear/tiles/tiles-renderer/src/test/java/androidx/wear/tiles/connection/TilesConnectionBinderTest.kt b/wear/tiles/tiles-renderer/src/test/java/androidx/wear/tiles/connection/TilesConnectionBinderTest.kt
index d0d0d63..953a3ee 100644
--- a/wear/tiles/tiles-renderer/src/test/java/androidx/wear/tiles/connection/TilesConnectionBinderTest.kt
+++ b/wear/tiles/tiles-renderer/src/test/java/androidx/wear/tiles/connection/TilesConnectionBinderTest.kt
@@ -56,7 +56,7 @@
     }
 
     private lateinit var appContext: Context
-    private lateinit var fakeTileProvider: FakeTileProviderService
+    private lateinit var fakeTileService: FakeTileService
     private lateinit var fakeCoroutineDispatcher: TestCoroutineDispatcher
     private lateinit var fakeCoroutineScope: TestCoroutineScope
     private lateinit var connectionBinderUnderTest: TilesConnectionBinder
@@ -64,12 +64,12 @@
     @Before
     public fun setUp() {
         appContext = getApplicationContext()
-        fakeTileProvider = FakeTileProviderService()
+        fakeTileService = FakeTileService()
         fakeCoroutineDispatcher = TestCoroutineDispatcher()
         fakeCoroutineScope = TestCoroutineScope()
 
         shadowOf(appContext as Application)
-            .setComponentNameAndServiceForBindService(TILE_PROVIDER, fakeTileProvider.asBinder())
+            .setComponentNameAndServiceForBindService(TILE_PROVIDER, fakeTileService.asBinder())
 
         connectionBinderUnderTest = TilesConnectionBinder(
             appContext, TILE_PROVIDER,
@@ -286,7 +286,7 @@
         result1.await()
     }
 
-    private class FakeTileProviderService : TileProvider.Stub() {
+    private class FakeTileService : TileProvider.Stub() {
         override fun getApiVersion(): Int {
             return 5
         }
diff --git a/wear/tiles/tiles-renderer/src/test/java/androidx/wear/tiles/renderer/internal/TileRendererInternalTest.java b/wear/tiles/tiles-renderer/src/test/java/androidx/wear/tiles/renderer/internal/TileRendererInternalTest.java
index 720732c..68914be 100644
--- a/wear/tiles/tiles-renderer/src/test/java/androidx/wear/tiles/renderer/internal/TileRendererInternalTest.java
+++ b/wear/tiles/tiles-renderer/src/test/java/androidx/wear/tiles/renderer/internal/TileRendererInternalTest.java
@@ -38,7 +38,7 @@
 import android.widget.TextView;
 
 import androidx.core.content.ContextCompat;
-import androidx.wear.tiles.TileProviderService;
+import androidx.wear.tiles.TileService;
 import androidx.wear.tiles.TilesTestRunner;
 import androidx.wear.tiles.proto.ActionProto.Action;
 import androidx.wear.tiles.proto.ActionProto.AndroidActivity;
@@ -982,7 +982,7 @@
 
         Intent i = TileRendererInternal.buildLaunchActionIntent(launchAction, testId);
 
-        expect.that(i.getStringExtra(TileProviderService.EXTRA_CLICKABLE_ID)).isEqualTo(testId);
+        expect.that(i.getStringExtra(TileService.EXTRA_CLICKABLE_ID)).isEqualTo(testId);
     }
 
     @Test
@@ -995,7 +995,7 @@
 
         Intent i = TileRendererInternal.buildLaunchActionIntent(launchAction, "");
 
-        expect.that(i.hasExtra(TileProviderService.EXTRA_CLICKABLE_ID)).isFalse();
+        expect.that(i.hasExtra(TileService.EXTRA_CLICKABLE_ID)).isFalse();
     }
 
     @Test
diff --git a/wear/tiles/tiles-testing/api/current.txt b/wear/tiles/tiles-testing/api/current.txt
index b53b21c..353b0c6 100644
--- a/wear/tiles/tiles-testing/api/current.txt
+++ b/wear/tiles/tiles-testing/api/current.txt
@@ -1,9 +1,9 @@
 // Signature format: 4.0
 package androidx.wear.tiles.testing {
 
-  public final class TestTileProviderClient<T extends androidx.wear.tiles.TileProviderService> implements androidx.wear.tiles.client.TileProviderClient {
-    ctor public TestTileProviderClient(T service, kotlinx.coroutines.CoroutineScope coroutineScope, kotlinx.coroutines.CoroutineDispatcher coroutineDispatcher);
-    ctor public TestTileProviderClient(T service, java.util.concurrent.Executor executor);
+  public final class TestTileClient<T extends androidx.wear.tiles.TileService> implements androidx.wear.tiles.client.TileClient {
+    ctor public TestTileClient(T service, kotlinx.coroutines.CoroutineScope coroutineScope, kotlinx.coroutines.CoroutineDispatcher coroutineDispatcher);
+    ctor public TestTileClient(T service, java.util.concurrent.Executor executor);
     method public com.google.common.util.concurrent.ListenableFuture<java.lang.Integer> requestApiVersion();
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.ResourceBuilders.Resources> requestResources(androidx.wear.tiles.RequestBuilders.ResourcesRequest requestParams);
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.TileBuilders.Tile> requestTile(androidx.wear.tiles.RequestBuilders.TileRequest requestParams);
diff --git a/wear/tiles/tiles-testing/api/public_plus_experimental_current.txt b/wear/tiles/tiles-testing/api/public_plus_experimental_current.txt
index b53b21c..353b0c6 100644
--- a/wear/tiles/tiles-testing/api/public_plus_experimental_current.txt
+++ b/wear/tiles/tiles-testing/api/public_plus_experimental_current.txt
@@ -1,9 +1,9 @@
 // Signature format: 4.0
 package androidx.wear.tiles.testing {
 
-  public final class TestTileProviderClient<T extends androidx.wear.tiles.TileProviderService> implements androidx.wear.tiles.client.TileProviderClient {
-    ctor public TestTileProviderClient(T service, kotlinx.coroutines.CoroutineScope coroutineScope, kotlinx.coroutines.CoroutineDispatcher coroutineDispatcher);
-    ctor public TestTileProviderClient(T service, java.util.concurrent.Executor executor);
+  public final class TestTileClient<T extends androidx.wear.tiles.TileService> implements androidx.wear.tiles.client.TileClient {
+    ctor public TestTileClient(T service, kotlinx.coroutines.CoroutineScope coroutineScope, kotlinx.coroutines.CoroutineDispatcher coroutineDispatcher);
+    ctor public TestTileClient(T service, java.util.concurrent.Executor executor);
     method public com.google.common.util.concurrent.ListenableFuture<java.lang.Integer> requestApiVersion();
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.ResourceBuilders.Resources> requestResources(androidx.wear.tiles.RequestBuilders.ResourcesRequest requestParams);
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.TileBuilders.Tile> requestTile(androidx.wear.tiles.RequestBuilders.TileRequest requestParams);
diff --git a/wear/tiles/tiles-testing/api/restricted_current.txt b/wear/tiles/tiles-testing/api/restricted_current.txt
index b53b21c..353b0c6 100644
--- a/wear/tiles/tiles-testing/api/restricted_current.txt
+++ b/wear/tiles/tiles-testing/api/restricted_current.txt
@@ -1,9 +1,9 @@
 // Signature format: 4.0
 package androidx.wear.tiles.testing {
 
-  public final class TestTileProviderClient<T extends androidx.wear.tiles.TileProviderService> implements androidx.wear.tiles.client.TileProviderClient {
-    ctor public TestTileProviderClient(T service, kotlinx.coroutines.CoroutineScope coroutineScope, kotlinx.coroutines.CoroutineDispatcher coroutineDispatcher);
-    ctor public TestTileProviderClient(T service, java.util.concurrent.Executor executor);
+  public final class TestTileClient<T extends androidx.wear.tiles.TileService> implements androidx.wear.tiles.client.TileClient {
+    ctor public TestTileClient(T service, kotlinx.coroutines.CoroutineScope coroutineScope, kotlinx.coroutines.CoroutineDispatcher coroutineDispatcher);
+    ctor public TestTileClient(T service, java.util.concurrent.Executor executor);
     method public com.google.common.util.concurrent.ListenableFuture<java.lang.Integer> requestApiVersion();
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.ResourceBuilders.Resources> requestResources(androidx.wear.tiles.RequestBuilders.ResourcesRequest requestParams);
     method public com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.TileBuilders.Tile> requestTile(androidx.wear.tiles.RequestBuilders.TileRequest requestParams);
diff --git a/wear/tiles/tiles-testing/src/main/java/androidx/wear/tiles/testing/TestTileProviderClient.kt b/wear/tiles/tiles-testing/src/main/java/androidx/wear/tiles/testing/TestTileClient.kt
similarity index 72%
rename from wear/tiles/tiles-testing/src/main/java/androidx/wear/tiles/testing/TestTileProviderClient.kt
rename to wear/tiles/tiles-testing/src/main/java/androidx/wear/tiles/testing/TestTileClient.kt
index 7ae8b81..5fd722d 100644
--- a/wear/tiles/tiles-testing/src/main/java/androidx/wear/tiles/testing/TestTileProviderClient.kt
+++ b/wear/tiles/tiles-testing/src/main/java/androidx/wear/tiles/testing/TestTileClient.kt
@@ -24,9 +24,9 @@
 import androidx.wear.tiles.RequestBuilders
 import androidx.wear.tiles.ResourceBuilders
 import androidx.wear.tiles.TileBuilders
-import androidx.wear.tiles.TileProviderService
-import androidx.wear.tiles.client.TileProviderClient
-import androidx.wear.tiles.connection.DefaultTileProviderClient
+import androidx.wear.tiles.TileService
+import androidx.wear.tiles.client.TileClient
+import androidx.wear.tiles.connection.DefaultTileClient
 import com.google.common.util.concurrent.ListenableFuture
 import kotlinx.coroutines.CoroutineDispatcher
 import kotlinx.coroutines.CoroutineScope
@@ -35,29 +35,30 @@
 import java.util.concurrent.Executor
 
 /**
- * TileProviderClient for testing purposes. This will pass calls through to the given instance of
- * [TileProviderService], handling all the service binding (via Robolectric), and
+ * [TileClient] for testing purposes. This will pass calls through to the given instance of
+ * [TileService], handling all the service binding (via Robolectric), and
  * serialization/deserialization.
  *
  * Note that this class will not drive the full service lifecycle for the passed service instance.
  * On the first call to any of these methods, it will call your service's [Service.onCreate] method,
- * however, it will never call [Service.onDestroy]. Equally, where [DefaultTileProviderClient] will
+ * however, it will never call [Service.onDestroy]. Equally, where [DefaultTileClient] will
  * unbind after a period of time, potentially destroying the service, this class wil Client will
  * unbind, but not destroy the service. If you wish to test service destruction, you can instead
  * call [Service.onDestroy] on the passed in `service` instance.
  */
-public class TestTileProviderClient<T : TileProviderService> : TileProviderClient {
+public class TestTileClient<T : TileService> :
+    TileClient {
     private val controller: ServiceController<T>
     private val componentName: ComponentName
-    private val innerTileProvider: DefaultTileProviderClient
+    private val innerTileService: DefaultTileClient
     private var hasBound = false
 
     /**
-     * Build a [TestTileProviderClient] for use with a coroutine dispatcher.
+     * Build a [TestTileClient] for use with a coroutine dispatcher.
      *
-     * @param service An instance of the [TileProviderService] class to bind to.
+     * @param service An instance of the [TileService] class to bind to.
      * @param coroutineScope A [CoroutineScope] to use when dispatching calls to the
-     *   [TileProviderService]. Cancelling the passed [CoroutineScope] will also cancel any pending
+     *   [TileService]. Cancelling the passed [CoroutineScope] will also cancel any pending
      *   work in this class.
      * @param coroutineDispatcher A [CoroutineDispatcher] to use when dispatching work from this
      *   class.
@@ -67,13 +68,13 @@
         coroutineScope: CoroutineScope,
         coroutineDispatcher: CoroutineDispatcher
     ) {
-        val bindIntent = Intent(TileProviderService.ACTION_BIND_TILE_PROVIDER)
+        val bindIntent = Intent(TileService.ACTION_BIND_TILE_PROVIDER)
         this.componentName = ComponentName(getApplicationContext(), service.javaClass)
 
         bindIntent.component = componentName
         this.controller = ServiceController.of(service, bindIntent)
 
-        this.innerTileProvider = DefaultTileProviderClient(
+        this.innerTileService = DefaultTileClient(
             getApplicationContext(),
             componentName,
             coroutineScope,
@@ -82,19 +83,19 @@
     }
 
     /**
-     * Build a [TestTileProviderClient] for use with a given [Executor]
+     * Build a [TestTileClient] for use with a given [Executor]
      *
-     * @param service An instance of the [TileProviderService] class to bind to.
-     * @param executor An [Executor] to use when dispatching calls to the [TileProviderService].
+     * @param service An instance of the [TileService] class to bind to.
+     * @param executor An [Executor] to use when dispatching calls to the [TileService].
      */
     public constructor(service: T, executor: Executor) {
-        val bindIntent = Intent(TileProviderService.ACTION_BIND_TILE_PROVIDER)
+        val bindIntent = Intent(TileService.ACTION_BIND_TILE_PROVIDER)
         this.componentName = ComponentName(getApplicationContext(), service.javaClass)
 
         bindIntent.component = componentName
         this.controller = ServiceController.of(service, bindIntent)
 
-        this.innerTileProvider = DefaultTileProviderClient(
+        this.innerTileService = DefaultTileClient(
             getApplicationContext(),
             componentName,
             executor
@@ -103,41 +104,41 @@
 
     override fun requestApiVersion(): ListenableFuture<Int> {
         maybeBind()
-        return innerTileProvider.requestApiVersion()
+        return innerTileService.requestApiVersion()
     }
 
     override fun requestTile(
         requestParams: RequestBuilders.TileRequest
     ): ListenableFuture<TileBuilders.Tile> {
         maybeBind()
-        return innerTileProvider.requestTile(requestParams)
+        return innerTileService.requestTile(requestParams)
     }
 
     override fun requestResources(
         requestParams: RequestBuilders.ResourcesRequest
     ): ListenableFuture<ResourceBuilders.Resources> {
         maybeBind()
-        return innerTileProvider.requestResources(requestParams)
+        return innerTileService.requestResources(requestParams)
     }
 
     override fun sendOnTileAddedEvent(): ListenableFuture<Void?> {
         maybeBind()
-        return innerTileProvider.sendOnTileAddedEvent()
+        return innerTileService.sendOnTileAddedEvent()
     }
 
     override fun sendOnTileRemovedEvent(): ListenableFuture<Void?> {
         maybeBind()
-        return innerTileProvider.sendOnTileRemovedEvent()
+        return innerTileService.sendOnTileRemovedEvent()
     }
 
     override fun sendOnTileEnterEvent(): ListenableFuture<Void?> {
         maybeBind()
-        return innerTileProvider.sendOnTileEnterEvent()
+        return innerTileService.sendOnTileEnterEvent()
     }
 
     override fun sendOnTileLeaveEvent(): ListenableFuture<Void?> {
         maybeBind()
-        return innerTileProvider.sendOnTileLeaveEvent()
+        return innerTileService.sendOnTileLeaveEvent()
     }
 
     private fun maybeBind() {
diff --git a/wear/tiles/tiles-testing/src/test/java/androidx/wear/tiles/testing/TestTileProviderClientTest.kt b/wear/tiles/tiles-testing/src/test/java/androidx/wear/tiles/testing/TestTileClientTest.kt
similarity index 76%
rename from wear/tiles/tiles-testing/src/test/java/androidx/wear/tiles/testing/TestTileProviderClientTest.kt
rename to wear/tiles/tiles-testing/src/test/java/androidx/wear/tiles/testing/TestTileClientTest.kt
index 5c57c59..9cf99ca 100644
--- a/wear/tiles/tiles-testing/src/test/java/androidx/wear/tiles/testing/TestTileProviderClientTest.kt
+++ b/wear/tiles/tiles-testing/src/test/java/androidx/wear/tiles/testing/TestTileClientTest.kt
@@ -23,7 +23,7 @@
 import androidx.wear.tiles.ResourceBuilders
 import androidx.wear.tiles.TileBuilders
 import androidx.wear.tiles.TileProvider
-import androidx.wear.tiles.TileProviderService
+import androidx.wear.tiles.TileService
 import com.google.common.truth.Truth.assertThat
 import com.google.common.util.concurrent.ListenableFuture
 import org.junit.Before
@@ -35,17 +35,17 @@
 
 @RunWith(TilesTestingTestRunner::class)
 @DoNotInstrument
-public class TestTileProviderClientTest {
+public class TestTileClientTest {
     private companion object {
         private val RESOURCES_VERSION = "10"
     }
-    private val fakeTileProvider = FakeTileProviderService()
-    private lateinit var clientUnderTest: TestTileProviderClient<FakeTileProviderService>
+    private val fakeTileService = FakeTileService()
+    private lateinit var clientUnderTest: TestTileClient<FakeTileService>
 
     @Before
     public fun setUp() {
         val executor = InlineExecutorService()
-        clientUnderTest = TestTileProviderClient(fakeTileProvider, executor)
+        clientUnderTest = TestTileClient(fakeTileService, executor)
     }
 
     @Test
@@ -84,10 +84,10 @@
         shadowOf(Looper.getMainLooper()).idle()
 
         assertThat(f.isDone).isTrue()
-        assertThat(fakeTileProvider.onTileAddFired).isTrue()
-        assertThat(fakeTileProvider.onTileRemoveFired).isFalse()
-        assertThat(fakeTileProvider.onTileEnterFired).isFalse()
-        assertThat(fakeTileProvider.onTileLeaveFired).isFalse()
+        assertThat(fakeTileService.onTileAddFired).isTrue()
+        assertThat(fakeTileService.onTileRemoveFired).isFalse()
+        assertThat(fakeTileService.onTileEnterFired).isFalse()
+        assertThat(fakeTileService.onTileLeaveFired).isFalse()
     }
 
     @Test
@@ -97,10 +97,10 @@
         shadowOf(Looper.getMainLooper()).idle()
 
         assertThat(f.isDone).isTrue()
-        assertThat(fakeTileProvider.onTileAddFired).isFalse()
-        assertThat(fakeTileProvider.onTileRemoveFired).isTrue()
-        assertThat(fakeTileProvider.onTileEnterFired).isFalse()
-        assertThat(fakeTileProvider.onTileLeaveFired).isFalse()
+        assertThat(fakeTileService.onTileAddFired).isFalse()
+        assertThat(fakeTileService.onTileRemoveFired).isTrue()
+        assertThat(fakeTileService.onTileEnterFired).isFalse()
+        assertThat(fakeTileService.onTileLeaveFired).isFalse()
     }
 
     @Test
@@ -110,10 +110,10 @@
         shadowOf(Looper.getMainLooper()).idle()
 
         assertThat(f.isDone).isTrue()
-        assertThat(fakeTileProvider.onTileAddFired).isFalse()
-        assertThat(fakeTileProvider.onTileRemoveFired).isFalse()
-        assertThat(fakeTileProvider.onTileEnterFired).isTrue()
-        assertThat(fakeTileProvider.onTileLeaveFired).isFalse()
+        assertThat(fakeTileService.onTileAddFired).isFalse()
+        assertThat(fakeTileService.onTileRemoveFired).isFalse()
+        assertThat(fakeTileService.onTileEnterFired).isTrue()
+        assertThat(fakeTileService.onTileLeaveFired).isFalse()
     }
 
     @Test
@@ -123,13 +123,13 @@
         shadowOf(Looper.getMainLooper()).idle()
 
         assertThat(f.isDone).isTrue()
-        assertThat(fakeTileProvider.onTileAddFired).isFalse()
-        assertThat(fakeTileProvider.onTileRemoveFired).isFalse()
-        assertThat(fakeTileProvider.onTileEnterFired).isFalse()
-        assertThat(fakeTileProvider.onTileLeaveFired).isTrue()
+        assertThat(fakeTileService.onTileAddFired).isFalse()
+        assertThat(fakeTileService.onTileRemoveFired).isFalse()
+        assertThat(fakeTileService.onTileEnterFired).isFalse()
+        assertThat(fakeTileService.onTileLeaveFired).isTrue()
     }
 
-    public inner class FakeTileProviderService : TileProviderService() {
+    public inner class FakeTileService : TileService() {
         internal var onTileAddFired = false
         internal var onTileRemoveFired = false
         internal var onTileEnterFired = false
diff --git a/wear/tiles/tiles/api/current.txt b/wear/tiles/tiles/api/current.txt
index 6bfd76f..6c21e92 100644
--- a/wear/tiles/tiles/api/current.txt
+++ b/wear/tiles/tiles/api/current.txt
@@ -963,8 +963,8 @@
     method public androidx.wear.tiles.TileBuilders.Tile.Builder setTimeline(androidx.wear.tiles.TimelineBuilders.Timeline);
   }
 
-  public abstract class TileProviderService extends android.app.Service {
-    ctor public TileProviderService();
+  public abstract class TileService extends android.app.Service {
+    ctor public TileService();
     method public static androidx.wear.tiles.TileUpdateRequester getUpdater(android.content.Context);
     method public android.os.IBinder? onBind(android.content.Intent);
     method @MainThread protected abstract com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.ResourceBuilders.Resources!> onResourcesRequest(androidx.wear.tiles.RequestBuilders.ResourcesRequest);
@@ -979,7 +979,7 @@
   }
 
   public interface TileUpdateRequester {
-    method public void requestUpdate(Class<? extends androidx.wear.tiles.TileProviderService>);
+    method public void requestUpdate(Class<? extends androidx.wear.tiles.TileService>);
   }
 
   public final class TimelineBuilders {
diff --git a/wear/tiles/tiles/api/public_plus_experimental_current.txt b/wear/tiles/tiles/api/public_plus_experimental_current.txt
index 5c4ad7e..499702d 100644
--- a/wear/tiles/tiles/api/public_plus_experimental_current.txt
+++ b/wear/tiles/tiles/api/public_plus_experimental_current.txt
@@ -979,8 +979,8 @@
     method public androidx.wear.tiles.TileBuilders.Tile.Builder setTimeline(androidx.wear.tiles.TimelineBuilders.Timeline);
   }
 
-  public abstract class TileProviderService extends android.app.Service {
-    ctor public TileProviderService();
+  public abstract class TileService extends android.app.Service {
+    ctor public TileService();
     method public static androidx.wear.tiles.TileUpdateRequester getUpdater(android.content.Context);
     method public android.os.IBinder? onBind(android.content.Intent);
     method @MainThread protected abstract com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.ResourceBuilders.Resources!> onResourcesRequest(androidx.wear.tiles.RequestBuilders.ResourcesRequest);
@@ -995,7 +995,7 @@
   }
 
   public interface TileUpdateRequester {
-    method public void requestUpdate(Class<? extends androidx.wear.tiles.TileProviderService>);
+    method public void requestUpdate(Class<? extends androidx.wear.tiles.TileService>);
   }
 
   @RequiresOptIn(level=androidx.annotation.RequiresOptIn.Level.ERROR) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.TYPE, java.lang.annotation.ElementType.FIELD}) public @interface TilesExperimental {
diff --git a/wear/tiles/tiles/api/restricted_current.txt b/wear/tiles/tiles/api/restricted_current.txt
index 6bfd76f..6c21e92 100644
--- a/wear/tiles/tiles/api/restricted_current.txt
+++ b/wear/tiles/tiles/api/restricted_current.txt
@@ -963,8 +963,8 @@
     method public androidx.wear.tiles.TileBuilders.Tile.Builder setTimeline(androidx.wear.tiles.TimelineBuilders.Timeline);
   }
 
-  public abstract class TileProviderService extends android.app.Service {
-    ctor public TileProviderService();
+  public abstract class TileService extends android.app.Service {
+    ctor public TileService();
     method public static androidx.wear.tiles.TileUpdateRequester getUpdater(android.content.Context);
     method public android.os.IBinder? onBind(android.content.Intent);
     method @MainThread protected abstract com.google.common.util.concurrent.ListenableFuture<androidx.wear.tiles.ResourceBuilders.Resources!> onResourcesRequest(androidx.wear.tiles.RequestBuilders.ResourcesRequest);
@@ -979,7 +979,7 @@
   }
 
   public interface TileUpdateRequester {
-    method public void requestUpdate(Class<? extends androidx.wear.tiles.TileProviderService>);
+    method public void requestUpdate(Class<? extends androidx.wear.tiles.TileService>);
   }
 
   public final class TimelineBuilders {
diff --git a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/CompositeTileUpdateRequester.java b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/CompositeTileUpdateRequester.java
index c97773d..2233b74 100644
--- a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/CompositeTileUpdateRequester.java
+++ b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/CompositeTileUpdateRequester.java
@@ -34,9 +34,9 @@
     }
 
     @Override
-    public void requestUpdate(@NonNull Class<? extends TileProviderService> tileProvider) {
+    public void requestUpdate(@NonNull Class<? extends TileService> tileService) {
         for (TileUpdateRequester requester : mUpdateRequesters) {
-            requester.requestUpdate(tileProvider);
+            requester.requestUpdate(tileService);
         }
     }
 }
diff --git a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/RequestBuilders.java b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/RequestBuilders.java
index 0fb7806..8b397d6 100644
--- a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/RequestBuilders.java
+++ b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/RequestBuilders.java
@@ -31,7 +31,7 @@
     private RequestBuilders() {}
 
     /**
-     * Parameters passed to a {@link androidx.wear.tiles.TileBuilders.Tile} provider when the
+     * Parameters passed to a {@link androidx.wear.tiles.TileBuilders.Tile} service when the
      * renderer is requesting a new version of the tile.
      */
     public static final class TileRequest {
@@ -105,7 +105,7 @@
     }
 
     /**
-     * Parameters passed to a {@link androidx.wear.tiles.TileBuilders.Tile} provider when the
+     * Parameters passed to a {@link androidx.wear.tiles.TileBuilders.Tile} service when the
      * renderer is requesting a specific resource version.
      */
     public static final class ResourcesRequest {
diff --git a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/ResourcesRequestData.java b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/ResourcesRequestData.java
index 331026a..e416459 100644
--- a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/ResourcesRequestData.java
+++ b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/ResourcesRequestData.java
@@ -20,7 +20,7 @@
 import androidx.annotation.RestrictTo;
 
 /**
- * Holder for Tiles' ResourceRequest class, to be parceled and transferred to a Tile Provider.
+ * Holder for Tiles' ResourceRequest class, to be parceled and transferred to a Tile Service.
  *
  * <p>All this does is to serialize ResourceRequest as a protobuf and transmit it.
  *
diff --git a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/SysUiTileUpdateRequester.java b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/SysUiTileUpdateRequester.java
index c1d54c8..075b1bc 100644
--- a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/SysUiTileUpdateRequester.java
+++ b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/SysUiTileUpdateRequester.java
@@ -64,9 +64,9 @@
     }
 
     @Override
-    public void requestUpdate(@NonNull Class<? extends TileProviderService> tileProvider) {
+    public void requestUpdate(@NonNull Class<? extends TileService> tileService) {
         synchronized (mLock) {
-            mPendingServices.add(tileProvider);
+            mPendingServices.add(tileService);
 
             if (mBindInProgress) {
                 // Something else kicked off the bind; let that carry on binding.
diff --git a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileAddEventData.java b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileAddEventData.java
index f54e03e..feef838 100644
--- a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileAddEventData.java
+++ b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileAddEventData.java
@@ -20,7 +20,7 @@
 import androidx.annotation.RestrictTo;
 
 /**
- * Holder for Tiles' TileAddEvent class, to be parceled and transferred to a tile provider.
+ * Holder for Tiles' TileAddEvent class, to be parceled and transferred to a tile service.
  *
  * <p>All this does is to serialize TileAddEvent as a protobuf and transmit it.
  *
diff --git a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileEnterEventData.java b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileEnterEventData.java
index 99e0dbc..4dae195 100644
--- a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileEnterEventData.java
+++ b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileEnterEventData.java
@@ -20,7 +20,7 @@
 import androidx.annotation.RestrictTo;
 
 /**
- * Holder for Tiles' TileEnterEvent class, to be parceled and transferred to a tile provider.
+ * Holder for Tiles' TileEnterEvent class, to be parceled and transferred to a tile service.
  *
  * <p>All this does is to serialize TileEnterEvent as a protobuf and transmit it.
  *
diff --git a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileLeaveEventData.java b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileLeaveEventData.java
index bbc7ae6..6dd75e6 100644
--- a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileLeaveEventData.java
+++ b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileLeaveEventData.java
@@ -20,7 +20,7 @@
 import androidx.annotation.RestrictTo;
 
 /**
- * Holder for Tiles' TileLeaveEvent class, to be parceled and transferred to a tile provider.
+ * Holder for Tiles' TileLeaveEvent class, to be parceled and transferred to a tile service.
  *
  * <p>All this does is to serialize TileLeaveEvent as a protobuf and transmit it.
  *
diff --git a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileRemoveEventData.java b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileRemoveEventData.java
index 904c86e..921a74b 100644
--- a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileRemoveEventData.java
+++ b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileRemoveEventData.java
@@ -20,7 +20,7 @@
 import androidx.annotation.RestrictTo;
 
 /**
- * Holder for Tiles' TileRemoveEvent class, to be parceled and transferred to a tile provider.
+ * Holder for Tiles' TileRemoveEvent class, to be parceled and transferred to a tile service.
  *
  * <p>All this does is to serialize TileRemoveEvent as a protobuf and transmit it.
  *
diff --git a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileRequestData.java b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileRequestData.java
index 8e2b2f6..04f63c6 100644
--- a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileRequestData.java
+++ b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileRequestData.java
@@ -20,7 +20,7 @@
 import androidx.annotation.RestrictTo;
 
 /**
- * Holder for Tiles' TileRequest class, to be parceled and transferred to a Tile Provider.
+ * Holder for Tiles' TileRequest class, to be parceled and transferred to a Tile Service.
  *
  * <p>All this does is to serialize TileRequest as a protobuf and transmit it.
  *
diff --git a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileProviderService.java b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileService.java
similarity index 86%
rename from wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileProviderService.java
rename to wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileService.java
index 2dff303..e277215 100644
--- a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileProviderService.java
+++ b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileService.java
@@ -51,22 +51,22 @@
 /**
  * Base class for a service providing data for an app tile.
  *
- * <p>A provider service must implement {@link #onTileRequest} and {@link #onResourcesRequest} to
+ * <p>A tile service must implement {@link #onTileRequest} and {@link #onResourcesRequest} to
  * respond to requests for updates from the system.
  *
- * <p>The manifest declaration of this service must include an intent filter for {@link
- * #ACTION_BIND_TILE_PROVIDER}.
+ * <p>The manifest declaration of this service must include an intent filter for
+ * {@code androidx.wear.tiles.action.BIND_TILE_PROVIDER}.
  *
- * <p>The manifest entry should also include {@code
- * android:permission="com.google.android.wearable.permission.BIND_TILE_PROVIDER"} to ensure that
- * only the system can bind to it.
+ * <p>The manifest entry should also include
+ * {@code android:permission="com.google.android.wearable.permission.BIND_TILE_PROVIDER"} to
+ * ensure that only the system can bind to it.
  */
-public abstract class TileProviderService extends Service {
+public abstract class TileService extends Service {
 
-    private static final String TAG = "TileProviderService";
+    private static final String TAG = "TileService";
 
     /**
-     * The intent action used to send update requests to the provider. Tile provider services must
+     * The intent action used to send update requests to the service. Tile services must
      * declare an intent filter for this action in the manifest.
      */
     public static final String ACTION_BIND_TILE_PROVIDER =
@@ -82,7 +82,7 @@
     public static final String METADATA_PREVIEW_KEY = "androidx.wear.tiles.PREVIEW";
 
     /**
-     * Called when the system is requesting a new timeline from this Tile Provider. The returned
+     * Called when the system is requesting a new timeline from this Tile Service. The returned
      * future must complete after at most 10 seconds from the moment this method is called (exact
      * timeout length subject to change).
      *
@@ -95,7 +95,7 @@
     protected abstract ListenableFuture<Tile> onTileRequest(@NonNull TileRequest requestParams);
 
     /**
-     * Called when the system is requesting a resource bundle from this Tile Provider. The returned
+     * Called when the system is requesting a resource bundle from this Tile Service. The returned
      * future must complete after at most 10 seconds from the moment this method is called (exact
      * timeout length subject to change).
      *
@@ -110,7 +110,7 @@
             @NonNull ResourcesRequest requestParams);
 
     /**
-     * Called when a tile provided by this Tile Provider is added to the carousel.
+     * Called when a tile provided by this Tile Service is added to the carousel.
      *
      * <p>Note that this is called from your app's main thread, which is usually also the UI thread.
      *
@@ -120,7 +120,7 @@
     protected void onTileAddEvent(@NonNull TileAddEvent requestParams) {}
 
     /**
-     * Called when a tile provided by this Tile Provider is removed from the carousel.
+     * Called when a tile provided by this Tile Service is removed from the carousel.
      *
      * <p>Note that this is called from your app's main thread, which is usually also the UI thread.
      *
@@ -130,7 +130,7 @@
     protected void onTileRemoveEvent(@NonNull TileRemoveEvent requestParams) {}
 
     /**
-     * Called when a tile provided by this Tile Provider becomes into view, on screen.
+     * Called when a tile provided by this Tile Service becomes into view, on screen.
      *
      * <p>Note that this is called from your app's main thread, which is usually also the UI thread.
      *
@@ -140,7 +140,7 @@
     protected void onTileEnterEvent(@NonNull TileEnterEvent requestParams) {}
 
     /**
-     * Called when a tile provided by this Tile Provider goes out of view, on screen.
+     * Called when a tile provided by this Tile Service goes out of view, on screen.
      *
      * <p>Note that this is called from your app's main thread, which is usually also the UI thread.
      *
@@ -150,8 +150,8 @@
     protected void onTileLeaveEvent(@NonNull TileLeaveEvent requestParams) {}
 
     /**
-     * Gets an instance of {@link TileUpdateRequester} to allow a Tile Provider to notify the tile's
-     * renderer that it should request a new Timeline from this {@link TileProviderService}.
+     * Gets an instance of {@link TileUpdateRequester} to allow a Tile Service to notify the tile's
+     * renderer that it should request a new Timeline from this {@link TileService}.
      *
      * @param context The application context.
      */
@@ -183,11 +183,11 @@
     @SuppressWarnings("ExecutorTaskName")
     private static class TileProviderWrapper extends TileProvider.Stub {
 
-        private final WeakReference<TileProviderService> mServiceRef;
+        private final WeakReference<TileService> mServiceRef;
         private final Handler mHandler;
 
-        TileProviderWrapper(TileProviderService tileProviderService, Handler handler) {
-            mServiceRef = new WeakReference<>(tileProviderService);
+        TileProviderWrapper(TileService tileService, Handler handler) {
+            mServiceRef = new WeakReference<>(tileService);
             this.mHandler = handler;
         }
 
@@ -201,8 +201,8 @@
                 int tileId, TileRequestData requestParams, TileCallback callback) {
             mHandler.post(
                     () -> {
-                        TileProviderService tileProviderService = mServiceRef.get();
-                        if (tileProviderService != null) {
+                        TileService tileService = mServiceRef.get();
+                        if (tileService != null) {
                             if (requestParams.getVersion() != TileRequestData.VERSION_PROTOBUF) {
                                 Log.e(
                                         TAG,
@@ -224,7 +224,7 @@
                             }
 
                             ListenableFuture<Tile> tileFuture =
-                                    tileProviderService.onTileRequest(tileRequest);
+                                    tileService.onTileRequest(tileRequest);
 
                             tileFuture.addListener(
                                     () -> {
@@ -258,8 +258,8 @@
                 int tileId, ResourcesRequestData requestParams, ResourcesCallback callback) {
             mHandler.post(
                     () -> {
-                        TileProviderService tileProviderService = mServiceRef.get();
-                        if (tileProviderService != null) {
+                        TileService tileService = mServiceRef.get();
+                        if (tileService != null) {
                             if (requestParams.getVersion()
                                     != ResourcesRequestData.VERSION_PROTOBUF) {
                                 Log.e(
@@ -282,7 +282,7 @@
                             }
 
                             ListenableFuture<Resources> resourcesFuture =
-                                    tileProviderService.onResourcesRequest(req);
+                                    tileService.onResourcesRequest(req);
 
                             resourcesFuture.addListener(
                                     () -> {
@@ -313,9 +313,9 @@
         public void onTileAddEvent(TileAddEventData data) {
             mHandler.post(
                     () -> {
-                        TileProviderService tileProviderService = mServiceRef.get();
+                        TileService tileService = mServiceRef.get();
 
-                        if (tileProviderService != null) {
+                        if (tileService != null) {
                             if (data.getVersion() != TileAddEventData.VERSION_PROTOBUF) {
                                 Log.e(
                                         TAG,
@@ -329,7 +329,7 @@
                                         TileAddEvent.fromProto(
                                                 EventProto.TileAddEvent.parseFrom(
                                                         data.getContents()));
-                                tileProviderService.onTileAddEvent(evt);
+                                tileService.onTileAddEvent(evt);
                             } catch (InvalidProtocolBufferException ex) {
                                 Log.e(TAG, "Error deserializing TileAddEvent payload.", ex);
                             }
@@ -341,9 +341,9 @@
         public void onTileRemoveEvent(TileRemoveEventData data) {
             mHandler.post(
                     () -> {
-                        TileProviderService tileProviderService = mServiceRef.get();
+                        TileService tileService = mServiceRef.get();
 
-                        if (tileProviderService != null) {
+                        if (tileService != null) {
                             if (data.getVersion() != TileRemoveEventData.VERSION_PROTOBUF) {
                                 Log.e(
                                         TAG,
@@ -357,7 +357,7 @@
                                         TileRemoveEvent.fromProto(
                                                 EventProto.TileRemoveEvent.parseFrom(
                                                         data.getContents()));
-                                tileProviderService.onTileRemoveEvent(evt);
+                                tileService.onTileRemoveEvent(evt);
                             } catch (InvalidProtocolBufferException ex) {
                                 Log.e(TAG, "Error deserializing TileRemoveEvent payload.", ex);
                             }
@@ -369,9 +369,9 @@
         public void onTileEnterEvent(TileEnterEventData data) {
             mHandler.post(
                     () -> {
-                        TileProviderService tileProviderService = mServiceRef.get();
+                        TileService tileService = mServiceRef.get();
 
-                        if (tileProviderService != null) {
+                        if (tileService != null) {
                             if (data.getVersion() != TileEnterEventData.VERSION_PROTOBUF) {
                                 Log.e(
                                         TAG,
@@ -385,7 +385,7 @@
                                         TileEnterEvent.fromProto(
                                                 EventProto.TileEnterEvent.parseFrom(
                                                         data.getContents()));
-                                tileProviderService.onTileEnterEvent(evt);
+                                tileService.onTileEnterEvent(evt);
                             } catch (InvalidProtocolBufferException ex) {
                                 Log.e(TAG, "Error deserializing TileEnterEvent payload.", ex);
                             }
@@ -397,9 +397,9 @@
         public void onTileLeaveEvent(TileLeaveEventData data) {
             mHandler.post(
                     () -> {
-                        TileProviderService tileProviderService = mServiceRef.get();
+                        TileService tileService = mServiceRef.get();
 
-                        if (tileProviderService != null) {
+                        if (tileService != null) {
                             if (data.getVersion() != TileLeaveEventData.VERSION_PROTOBUF) {
                                 Log.e(
                                         TAG,
@@ -413,7 +413,7 @@
                                         TileLeaveEvent.fromProto(
                                                 EventProto.TileLeaveEvent.parseFrom(
                                                         data.getContents()));
-                                tileProviderService.onTileLeaveEvent(evt);
+                                tileService.onTileLeaveEvent(evt);
                             } catch (InvalidProtocolBufferException ex) {
                                 Log.e(TAG, "Error deserializing TileLeaveEvent payload.", ex);
                             }
diff --git a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileUpdateRequester.java b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileUpdateRequester.java
index 02e3640..23f8def 100644
--- a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileUpdateRequester.java
+++ b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileUpdateRequester.java
@@ -19,10 +19,10 @@
 import androidx.annotation.NonNull;
 
 /**
- * Interface used for a Tile Provider to notify a Tile Renderer that it should fetch a new Timeline
+ * Interface used for a Tile Service to notify a Tile Renderer that it should fetch a new Timeline
  * from it.
  */
 public interface TileUpdateRequester {
-    /** Notify the Tile Renderer that it should fetch a new Timeline from this Tile Provider. */
-    void requestUpdate(@NonNull Class<? extends TileProviderService> tileProvider);
+    /** Notify the Tile Renderer that it should fetch a new Timeline from this Tile Service. */
+    void requestUpdate(@NonNull Class<? extends TileService> tileService);
 }
diff --git a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/ViewerTileUpdateRequester.java b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/ViewerTileUpdateRequester.java
index 6ac26b7..cffb82d 100644
--- a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/ViewerTileUpdateRequester.java
+++ b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/ViewerTileUpdateRequester.java
@@ -40,7 +40,7 @@
     }
 
     @Override
-    public void requestUpdate(@NonNull Class<? extends TileProviderService> tileProvider) {
+    public void requestUpdate(@NonNull Class<? extends TileService> tileService) {
         mContext.sendBroadcast(buildUpdateIntent(mContext.getPackageName()));
     }
 
diff --git a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/package-info.java b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/package-info.java
index 622c725..5892405 100644
--- a/wear/tiles/tiles/src/main/java/androidx/wear/tiles/package-info.java
+++ b/wear/tiles/tiles/src/main/java/androidx/wear/tiles/package-info.java
@@ -15,7 +15,7 @@
  */
 
 /**
- * Contains {@link androidx.wear.tiles.TileProviderService}, which all apps using the Tiles API
+ * Contains {@link androidx.wear.tiles.TileService}, which all apps using the Tiles API
  * should extend in order to provide tile data.
  */
 package androidx.wear.tiles;
diff --git a/wear/tiles/tiles/src/test/java/androidx/wear/tiles/CompositeTileUpdateRequesterTest.java b/wear/tiles/tiles/src/test/java/androidx/wear/tiles/CompositeTileUpdateRequesterTest.java
index 4f00c4f..e47c05a 100644
--- a/wear/tiles/tiles/src/test/java/androidx/wear/tiles/CompositeTileUpdateRequesterTest.java
+++ b/wear/tiles/tiles/src/test/java/androidx/wear/tiles/CompositeTileUpdateRequesterTest.java
@@ -62,15 +62,15 @@
     }
 
     private class FakeUpdateRequester implements TileUpdateRequester {
-        @Nullable Class<? extends TileProviderService> mCalledService = null;
+        @Nullable Class<? extends TileService> mCalledService = null;
 
         @Override
-        public void requestUpdate(@NonNull Class<? extends TileProviderService> tileProvider) {
-            this.mCalledService = tileProvider;
+        public void requestUpdate(@NonNull Class<? extends TileService> tileService) {
+            this.mCalledService = tileService;
         }
     }
 
-    private class FakeService extends TileProviderService {
+    private class FakeService extends TileService {
         @NonNull
         @Override
         protected ListenableFuture<TileBuilders.Tile> onTileRequest(
diff --git a/wear/tiles/tiles/src/test/java/androidx/wear/tiles/TileProviderServiceTest.java b/wear/tiles/tiles/src/test/java/androidx/wear/tiles/TileServiceTest.java
similarity index 83%
rename from wear/tiles/tiles/src/test/java/androidx/wear/tiles/TileProviderServiceTest.java
rename to wear/tiles/tiles/src/test/java/androidx/wear/tiles/TileServiceTest.java
index e8df68f..a4e00d1 100644
--- a/wear/tiles/tiles/src/test/java/androidx/wear/tiles/TileProviderServiceTest.java
+++ b/wear/tiles/tiles/src/test/java/androidx/wear/tiles/TileServiceTest.java
@@ -55,21 +55,21 @@
 
 @RunWith(RobolectricTestRunner.class)
 @DoNotInstrument
-public class TileProviderServiceTest {
+public class TileServiceTest {
     private static final int TILE_ID = 42;
 
     @Rule public final Expect expect = Expect.create();
 
     // This is a little nasty, but we need to ensure that the version is injected by
-    // TileProviderService. For that, we need the builder form (for DummyTileProviderService to
-    // return), and the protobuf form (to compare against, which also includes the version).
+    // TileService. For that, we need the builder form (for FakeTileProviderService to return),
+    // and the protobuf form (to compare against, which also includes the version).
     private static final TileBuilders.Tile DUMMY_TILE_TO_RETURN =
             new TileBuilders.Tile.Builder().setResourcesVersion("5").build();
     private static final Tile DUMMY_TILE_PROTOBUF =
             Tile.newBuilder().setResourcesVersion("5").setSchemaVersion(Version.CURRENT).build();
 
     private TileProvider mTileProviderServiceStub;
-    private ServiceController<DummyTileProviderService> mDummyTileProviderServiceServiceController;
+    private ServiceController<FakeTileService> mFakeTileServiceController;
 
     @Mock private TileCallback mMockTileCallback;
     @Mock private ResourcesCallback mMockResourcesCallback;
@@ -79,16 +79,16 @@
         mMockTileCallback = mock(TileCallback.class);
         mMockResourcesCallback = mock(ResourcesCallback.class);
 
-        mDummyTileProviderServiceServiceController =
-                Robolectric.buildService(DummyTileProviderService.class);
+        mFakeTileServiceController =
+                Robolectric.buildService(FakeTileService.class);
 
-        Intent i = new Intent(TileProviderService.ACTION_BIND_TILE_PROVIDER);
-        IBinder binder = mDummyTileProviderServiceServiceController.get().onBind(i);
+        Intent i = new Intent(TileService.ACTION_BIND_TILE_PROVIDER);
+        IBinder binder = mFakeTileServiceController.get().onBind(i);
         mTileProviderServiceStub = TileProvider.Stub.asInterface(binder);
     }
 
     @Test
-    public void tileProvider_tileRequest() throws Exception {
+    public void tileService_tileRequest() throws Exception {
         mTileProviderServiceStub.onTileRequest(
                 5,
                 new TileRequestData(
@@ -109,7 +109,7 @@
 
     @Ignore("Disabled due to b/179074319")
     @Test
-    public void tileProvider_resourcesRequest() throws Exception {
+    public void tileService_resourcesRequest() throws Exception {
         final String resourcesVersion = "HELLO WORLD";
 
         ResourcesRequestData resourcesRequestData =
@@ -135,49 +135,49 @@
     }
 
     @Test
-    public void tileProvider_onTileAdd() throws Exception {
+    public void tileService_onTileAdd() throws Exception {
         EventProto.TileAddEvent addRequest = EventProto.TileAddEvent.getDefaultInstance();
         mTileProviderServiceStub.onTileAddEvent(
                 new TileAddEventData(addRequest.toByteArray(), TileAddEventData.VERSION_PROTOBUF));
         shadowOf(Looper.getMainLooper()).idle();
 
-        expect.that(mDummyTileProviderServiceServiceController.get().mOnTileAddCalled).isTrue();
+        expect.that(mFakeTileServiceController.get().mOnTileAddCalled).isTrue();
     }
 
     @Test
-    public void tileProvider_onTileRemove() throws Exception {
+    public void tileService_onTileRemove() throws Exception {
         EventProto.TileRemoveEvent removeRequest = EventProto.TileRemoveEvent.getDefaultInstance();
         mTileProviderServiceStub.onTileRemoveEvent(
                 new TileRemoveEventData(
                         removeRequest.toByteArray(), TileRemoveEventData.VERSION_PROTOBUF));
         shadowOf(Looper.getMainLooper()).idle();
 
-        expect.that(mDummyTileProviderServiceServiceController.get().mOnTileRemoveCalled).isTrue();
+        expect.that(mFakeTileServiceController.get().mOnTileRemoveCalled).isTrue();
     }
 
     @Test
-    public void tileProvider_onTileEnter() throws Exception {
+    public void tileService_onTileEnter() throws Exception {
         EventProto.TileEnterEvent enterRequest = EventProto.TileEnterEvent.getDefaultInstance();
         mTileProviderServiceStub.onTileEnterEvent(
                 new TileEnterEventData(
                         enterRequest.toByteArray(), TileEnterEventData.VERSION_PROTOBUF));
         shadowOf(Looper.getMainLooper()).idle();
 
-        expect.that(mDummyTileProviderServiceServiceController.get().mOnTileEnterCalled).isTrue();
+        expect.that(mFakeTileServiceController.get().mOnTileEnterCalled).isTrue();
     }
 
     @Test
-    public void tileProvider_onTileLeave() throws Exception {
+    public void tileService_onTileLeave() throws Exception {
         EventProto.TileLeaveEvent leaveRequest = EventProto.TileLeaveEvent.getDefaultInstance();
         mTileProviderServiceStub.onTileLeaveEvent(
                 new TileLeaveEventData(
                         leaveRequest.toByteArray(), TileLeaveEventData.VERSION_PROTOBUF));
         shadowOf(Looper.getMainLooper()).idle();
 
-        expect.that(mDummyTileProviderServiceServiceController.get().mOnTileLeaveCalled).isTrue();
+        expect.that(mFakeTileServiceController.get().mOnTileLeaveCalled).isTrue();
     }
 
-    public static class DummyTileProviderService extends TileProviderService {
+    public static class FakeTileService extends TileService {
         boolean mOnTileAddCalled = false;
         boolean mOnTileRemoveCalled = false;
         boolean mOnTileEnterCalled = false;