diff --git a/Android.mk b/Android.mk
index f442d59..ece3138 100644
--- a/Android.mk
+++ b/Android.mk
@@ -37,15 +37,17 @@
 
 LOCAL_DEX_PREOPT := false
 
+LOCAL_JAVA_LIBRARIES += android.car
+
 LOCAL_STATIC_ANDROID_LIBRARIES += \
-    android-support-car \
-    android-support-constraint-layout \
-    android-support-design-widget \
+    androidx.car_car \
+    androidx-constraintlayout_constraintlayout \
+    androidx.design_design \
     car-apps-common \
     car-media-common
 
 LOCAL_STATIC_JAVA_LIBRARIES += \
-    android-support-constraint-layout-solver
+    androidx-constraintlayout_constraintlayout-solver
 
 include $(BUILD_PACKAGE)
 
diff --git a/res/layout-h1200dp/fragment_playback_with_queue.xml b/res/layout-h1200dp/fragment_playback_with_queue.xml
index 113de90..1fec4fd 100644
--- a/res/layout-h1200dp/fragment_playback_with_queue.xml
+++ b/res/layout-h1200dp/fragment_playback_with_queue.xml
@@ -14,28 +14,28 @@
   See the License for the specific language governing permissions and
   limitations under the License.
 -->
-<android.support.constraint.ConstraintLayout
+<androidx.constraintlayout.widget.ConstraintLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     android:id="@+id/playback_container"
     android:layout_width="match_parent"
     android:layout_height="match_parent">
 
-    <android.support.constraint.Guideline
+    <androidx.constraintlayout.widget.Guideline
         android:id="@+id/margin_start"
         android:layout_width="0dp"
         android:layout_height="0dp"
         android:orientation="vertical"
         app:layout_constraintGuide_begin="@dimen/car_margin"/>
 
-    <android.support.constraint.Guideline
+    <androidx.constraintlayout.widget.Guideline
         android:id="@+id/margin_end"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:orientation="vertical"
         app:layout_constraintGuide_end="@dimen/car_margin"/>
 
-    <android.support.constraint.Guideline
+    <androidx.constraintlayout.widget.Guideline
         android:id="@+id/margin_top"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
@@ -48,4 +48,4 @@
     <include
         layout="@layout/playback_controls"/>
 
-</android.support.constraint.ConstraintLayout>
+</androidx.constraintlayout.widget.ConstraintLayout>
diff --git a/res/layout/fragment_app_selection.xml b/res/layout/fragment_app_selection.xml
index e3834bb..431f394 100644
--- a/res/layout/fragment_app_selection.xml
+++ b/res/layout/fragment_app_selection.xml
@@ -16,7 +16,7 @@
   ~ limitations under the License.
   ~
  -->
-<android.support.constraint.ConstraintLayout
+<androidx.constraintlayout.widget.ConstraintLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     android:background="@color/alpha_fragment_background_color"
@@ -34,4 +34,4 @@
         app:dayNightStyle="always_light"
         app:showPagedListViewDivider="false" />
 
-</android.support.constraint.ConstraintLayout>
+</androidx.constraintlayout.widget.ConstraintLayout>
diff --git a/res/layout/fragment_playback.xml b/res/layout/fragment_playback.xml
index 521ecb8..b08bf8d 100644
--- a/res/layout/fragment_playback.xml
+++ b/res/layout/fragment_playback.xml
@@ -14,28 +14,28 @@
   See the License for the specific language governing permissions and
   limitations under the License.
 -->
-<android.support.constraint.ConstraintLayout
+<androidx.constraintlayout.widget.ConstraintLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     android:id="@+id/playback_container"
     android:layout_width="match_parent"
     android:layout_height="match_parent">
 
-    <android.support.constraint.Guideline
+    <androidx.constraintlayout.widget.Guideline
         android:id="@+id/margin_start"
         android:layout_width="0dp"
         android:layout_height="0dp"
         android:orientation="vertical"
         app:layout_constraintGuide_begin="@dimen/car_margin"/>
 
-    <android.support.constraint.Guideline
+    <androidx.constraintlayout.widget.Guideline
         android:id="@+id/margin_end"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:orientation="vertical"
         app:layout_constraintGuide_end="@dimen/car_margin"/>
 
-    <android.support.constraint.Guideline
+    <androidx.constraintlayout.widget.Guideline
         android:id="@+id/margin_top"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
@@ -48,4 +48,4 @@
     <include
         layout="@layout/playback_controls"/>
 
-</android.support.constraint.ConstraintLayout>
+</androidx.constraintlayout.widget.ConstraintLayout>
diff --git a/res/layout/media_activity.xml b/res/layout/media_activity.xml
index 97acbdb..68f912c 100644
--- a/res/layout/media_activity.xml
+++ b/res/layout/media_activity.xml
@@ -14,7 +14,7 @@
   See the License for the specific language governing permissions and
   limitations under the License.
 -->
-<android.support.constraint.ConstraintLayout
+<androidx.constraintlayout.widget.ConstraintLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     android:id="@+id/application"
@@ -88,4 +88,4 @@
         android:layout_width="match_parent"
         app:layout_constraintTop_toTopOf="parent"/>
 
-</android.support.constraint.ConstraintLayout>
+</androidx.constraintlayout.widget.ConstraintLayout>
diff --git a/res/layout/metadata_normal.xml b/res/layout/metadata_normal.xml
index 903dc74..687d59d 100644
--- a/res/layout/metadata_normal.xml
+++ b/res/layout/metadata_normal.xml
@@ -14,7 +14,7 @@
   See the License for the specific language governing permissions and
   limitations under the License.
 -->
-<android.support.constraint.ConstraintLayout
+<androidx.constraintlayout.widget.ConstraintLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
@@ -79,4 +79,4 @@
         tools:progress="70"
         tools:visibility="visible"/>
 
-</android.support.constraint.ConstraintLayout>
+</androidx.constraintlayout.widget.ConstraintLayout>
diff --git a/src/com/android/car/media/AppSelectionFragment.java b/src/com/android/car/media/AppSelectionFragment.java
index 6a56c1d..a9a7f59 100644
--- a/src/com/android/car/media/AppSelectionFragment.java
+++ b/src/com/android/car/media/AppSelectionFragment.java
@@ -3,16 +3,18 @@
 import android.content.Context;
 import android.content.pm.PackageManager;
 import android.os.Bundle;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
-import android.support.v7.widget.GridLayoutManager;
-import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.ImageView;
 import android.widget.TextView;
 
+import androidx.annotation.Nullable;
+import androidx.car.widget.PagedListView;
+import androidx.fragment.app.Fragment;
+import androidx.recyclerview.widget.GridLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+
 import com.android.car.media.common.MediaSource;
 
 import java.util.ArrayList;
@@ -20,8 +22,6 @@
 import java.util.Set;
 import java.util.stream.Collectors;
 
-import androidx.car.widget.PagedListView;
-
 /**
  * A {@link Fragment} that implements the app selection UI
  */
diff --git a/src/com/android/car/media/BrowseFragment.java b/src/com/android/car/media/BrowseFragment.java
index ecb3f6c..67178fa 100644
--- a/src/com/android/car/media/BrowseFragment.java
+++ b/src/com/android/car/media/BrowseFragment.java
@@ -21,9 +21,6 @@
 import android.content.Context;
 import android.os.Bundle;
 import android.os.Handler;
-import android.support.v4.app.Fragment;
-import android.support.v7.widget.GridLayoutManager;
-import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
@@ -31,6 +28,10 @@
 import android.widget.ProgressBar;
 import android.widget.TextView;
 
+import androidx.fragment.app.Fragment;
+import androidx.recyclerview.widget.GridLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+
 import com.android.car.media.browse.BrowseAdapter;
 import com.android.car.media.browse.ContentForwardStrategy;
 import com.android.car.media.common.GridSpacingItemDecoration;
diff --git a/src/com/android/car/media/EmptyFragment.java b/src/com/android/car/media/EmptyFragment.java
index 72b6889..358667f 100644
--- a/src/com/android/car/media/EmptyFragment.java
+++ b/src/com/android/car/media/EmptyFragment.java
@@ -2,7 +2,6 @@
 
 import android.os.Bundle;
 import android.os.Handler;
-import android.support.v4.app.Fragment;
 import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -11,6 +10,8 @@
 import android.widget.ProgressBar;
 import android.widget.TextView;
 
+import androidx.fragment.app.Fragment;
+
 import com.android.car.media.common.MediaSource;
 import com.android.car.media.widgets.ViewUtils;
 
diff --git a/src/com/android/car/media/MediaActivity.java b/src/com/android/car/media/MediaActivity.java
index 6f01c62..0053bb1 100644
--- a/src/com/android/car/media/MediaActivity.java
+++ b/src/com/android/car/media/MediaActivity.java
@@ -15,7 +15,6 @@
  */
 package com.android.car.media;
 
-import android.annotation.NonNull;
 import android.car.Car;
 import android.content.ComponentName;
 import android.content.Context;
@@ -24,15 +23,24 @@
 import android.graphics.Bitmap;
 import android.media.session.MediaController;
 import android.os.Bundle;
-import android.support.v4.app.Fragment;
-import android.support.v4.app.FragmentManager;
-import android.support.v4.widget.DrawerLayout;
 import android.transition.Fade;
 import android.util.Log;
 import android.util.TypedValue;
 import android.view.View;
 import android.view.ViewGroup;
 
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
+import androidx.annotation.NonNull;
+import androidx.drawerlayout.widget.DrawerLayout;
+import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentManager;
+import androidx.car.drawer.CarDrawerActivity;
+import androidx.car.drawer.CarDrawerAdapter;
+
 import com.android.car.media.common.ActiveMediaSourceManager;
 import com.android.car.media.common.CrossfadeImageView;
 import com.android.car.media.common.MediaItemMetadata;
@@ -45,14 +53,6 @@
 import com.android.car.media.widgets.MetadataView;
 import com.android.car.media.widgets.ViewUtils;
 
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Objects;
-import java.util.stream.Collectors;
-
-import androidx.car.drawer.CarDrawerActivity;
-import androidx.car.drawer.CarDrawerAdapter;
-
 /**
  * This activity controls the UI of media. It also updates the connection status for the media app
  * by broadcast. Drawer menu is controlled by {@link MediaDrawerController}.
@@ -184,16 +184,16 @@
     };
     private DrawerLayout.DrawerListener mDrawerListener = new DrawerLayout.DrawerListener() {
         @Override
-        public void onDrawerSlide(@android.support.annotation.NonNull View view, float v) {
+        public void onDrawerSlide(@androidx.annotation.NonNull View view, float v) {
         }
 
         @Override
-        public void onDrawerOpened(@android.support.annotation.NonNull View view) {
+        public void onDrawerOpened(@androidx.annotation.NonNull View view) {
             closeAppSelector();
         }
 
         @Override
-        public void onDrawerClosed(@android.support.annotation.NonNull View view) {
+        public void onDrawerClosed(@androidx.annotation.NonNull View view) {
         }
 
         @Override
diff --git a/src/com/android/car/media/MediaPlaybackModel.java b/src/com/android/car/media/MediaPlaybackModel.java
index a223893..aef706a 100644
--- a/src/com/android/car/media/MediaPlaybackModel.java
+++ b/src/com/android/car/media/MediaPlaybackModel.java
@@ -27,11 +27,12 @@
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.Looper;
-import android.support.annotation.MainThread;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
 import android.util.Log;
 
+import androidx.annotation.MainThread;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+
 import com.android.car.apps.common.util.Assert;
 
 import java.util.ArrayList;
diff --git a/src/com/android/car/media/PlaybackFragment.java b/src/com/android/car/media/PlaybackFragment.java
index b7983bf..376c304 100644
--- a/src/com/android/car/media/PlaybackFragment.java
+++ b/src/com/android/car/media/PlaybackFragment.java
@@ -16,14 +16,10 @@
 
 package com.android.car.media;
 
+import android.annotation.NonNull;
 import android.content.Context;
 import android.media.session.MediaController;
 import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.constraint.ConstraintLayout;
-import android.support.constraint.ConstraintSet;
-import android.support.v4.app.Fragment;
-import android.support.v7.widget.RecyclerView;
 import android.transition.Transition;
 import android.transition.TransitionInflater;
 import android.transition.TransitionListenerAdapter;
@@ -35,6 +31,16 @@
 import android.widget.SeekBar;
 import android.widget.TextView;
 
+import androidx.car.widget.ListItem;
+import androidx.car.widget.ListItemAdapter;
+import androidx.car.widget.ListItemProvider;
+import androidx.car.widget.PagedListView;
+import androidx.car.widget.TextListItem;
+import androidx.constraintlayout.widget.ConstraintLayout;
+import androidx.constraintlayout.widget.ConstraintSet;
+import androidx.fragment.app.Fragment;
+import androidx.recyclerview.widget.RecyclerView;
+
 import com.android.car.media.common.MediaItemMetadata;
 import com.android.car.media.common.MediaSource;
 import com.android.car.media.common.PlaybackControls;
@@ -44,12 +50,6 @@
 import java.util.List;
 import java.util.stream.Collectors;
 
-import androidx.car.widget.ListItem;
-import androidx.car.widget.ListItemAdapter;
-import androidx.car.widget.ListItemProvider;
-import androidx.car.widget.PagedListView;
-import androidx.car.widget.TextListItem;
-
 /**
  * A {@link Fragment} that implements both the playback and the content forward browsing experience.
  * It observes a {@link PlaybackModel} and updates its information depending on the currently
diff --git a/src/com/android/car/media/browse/BrowseAdapter.java b/src/com/android/car/media/browse/BrowseAdapter.java
index dd5d2ee..631c20b 100644
--- a/src/com/android/car/media/browse/BrowseAdapter.java
+++ b/src/com/android/car/media/browse/BrowseAdapter.java
@@ -19,16 +19,17 @@
 import android.content.Context;
 import android.media.browse.MediaBrowser;
 import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v7.util.DiffUtil;
-import android.support.v7.widget.GridLayoutManager;
-import android.support.v7.widget.RecyclerView;
 import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.recyclerview.widget.DiffUtil;
+import androidx.recyclerview.widget.GridLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+
 import com.android.car.media.common.MediaItemMetadata;
 import com.android.car.media.common.MediaSource;
 
diff --git a/src/com/android/car/media/browse/BrowseItemViewType.java b/src/com/android/car/media/browse/BrowseItemViewType.java
index 0a9e66e..63a54fe 100644
--- a/src/com/android/car/media/browse/BrowseItemViewType.java
+++ b/src/com/android/car/media/browse/BrowseItemViewType.java
@@ -16,7 +16,7 @@
 
 package com.android.car.media.browse;
 
-import android.support.annotation.LayoutRes;
+import androidx.annotation.LayoutRes;
 
 /**
  * Possible view types that would be used by the {@link BrowseAdapter}.
@@ -38,7 +38,7 @@
 
     /**
      * {@link BrowseItemViewType} that take the whole width of the
-     * {@link android.support.v7.widget.RecyclerView}
+     * {@link androidx.recyclerview.widget.RecyclerView}
      */
     BrowseItemViewType(@LayoutRes int layoutId) {
         mLayoutId = layoutId;
diff --git a/src/com/android/car/media/browse/BrowseViewData.java b/src/com/android/car/media/browse/BrowseViewData.java
index 3a6cc65..f9c2ced 100644
--- a/src/com/android/car/media/browse/BrowseViewData.java
+++ b/src/com/android/car/media/browse/BrowseViewData.java
@@ -16,10 +16,10 @@
 
 package com.android.car.media.browse;
 
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
 import android.view.View;
 
+import androidx.annotation.NonNull;
+
 import com.android.car.media.common.MediaItemMetadata;
 
 import java.util.Objects;
diff --git a/src/com/android/car/media/browse/BrowseViewHolder.java b/src/com/android/car/media/browse/BrowseViewHolder.java
index c68625e..39606cf 100644
--- a/src/com/android/car/media/browse/BrowseViewHolder.java
+++ b/src/com/android/car/media/browse/BrowseViewHolder.java
@@ -17,12 +17,13 @@
 package com.android.car.media.browse;
 
 import android.content.Context;
-import android.support.v7.widget.RecyclerView;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.ImageView;
 import android.widget.TextView;
 
+import androidx.recyclerview.widget.RecyclerView;
+
 import com.android.car.media.common.MediaItemMetadata;
 
 /**
diff --git a/src/com/android/car/media/drawer/MediaBrowserItemsFetcher.java b/src/com/android/car/media/drawer/MediaBrowserItemsFetcher.java
index ab2593c..eb094fc 100644
--- a/src/com/android/car/media/drawer/MediaBrowserItemsFetcher.java
+++ b/src/com/android/car/media/drawer/MediaBrowserItemsFetcher.java
@@ -23,14 +23,14 @@
 import android.media.session.MediaSession;
 import android.util.Log;
 
+import androidx.car.drawer.DrawerItemViewHolder;
+
 import com.android.car.media.MediaPlaybackModel;
 import com.android.car.media.R;
 
 import java.util.ArrayList;
 import java.util.List;
 
-import androidx.car.drawer.DrawerItemViewHolder;
-
 /**
  * {@link MediaItemsFetcher} implementation that fetches items from a specific {@link MediaBrowser}
  * node.
diff --git a/src/com/android/car/media/drawer/MediaDrawerAdapter.java b/src/com/android/car/media/drawer/MediaDrawerAdapter.java
index c1f5e07..e1cf1b6 100644
--- a/src/com/android/car/media/drawer/MediaDrawerAdapter.java
+++ b/src/com/android/car/media/drawer/MediaDrawerAdapter.java
@@ -16,12 +16,12 @@
 package com.android.car.media.drawer;
 
 import android.content.Context;
-import android.support.annotation.Nullable;
-import android.support.v7.widget.RecyclerView;
 
+import androidx.annotation.Nullable;
 import androidx.car.drawer.CarDrawerAdapter;
 import androidx.car.drawer.CarDrawerController;
 import androidx.car.drawer.DrawerItemViewHolder;
+import androidx.recyclerview.widget.RecyclerView;
 
 /**
  * Subclass of CarDrawerAdapter used by the Media app.
diff --git a/src/com/android/car/media/drawer/MediaDrawerController.java b/src/com/android/car/media/drawer/MediaDrawerController.java
index 077cd74..407bbe3 100644
--- a/src/com/android/car/media/drawer/MediaDrawerController.java
+++ b/src/com/android/car/media/drawer/MediaDrawerController.java
@@ -21,18 +21,18 @@
 import android.media.session.MediaController;
 import android.media.session.MediaSession;
 import android.os.Bundle;
-import android.support.annotation.Nullable;
-import android.support.v4.widget.DrawerLayout;
 import android.util.Log;
 import android.view.View;
 
+import androidx.annotation.Nullable;
+import androidx.car.drawer.CarDrawerAdapter;
+import androidx.car.drawer.CarDrawerController;
+import androidx.drawerlayout.widget.DrawerLayout;
+
 import com.android.car.media.MediaManager;
 import com.android.car.media.MediaPlaybackModel;
 import com.android.car.media.R;
 
-import androidx.car.drawer.CarDrawerAdapter;
-import androidx.car.drawer.CarDrawerController;
-
 /**
  * Manages drawer navigation and item selection.
  * <p>
@@ -186,7 +186,7 @@
     }
 
     /**
-     * A {@link android.support.v4.widget.DrawerLayout.DrawerListener} specifically to be used when
+     * A {@link androidx.drawerlayout.widget.DrawerLayout.DrawerListener} specifically to be used when
      * the play queue has been shown in the drawer. When the drawer is closed following this
      * display, this listener will reset the drawer to display the root view.
      */
diff --git a/src/com/android/car/media/drawer/MediaItemsFetcher.java b/src/com/android/car/media/drawer/MediaItemsFetcher.java
index 36c01c0..2dabd7e 100644
--- a/src/com/android/car/media/drawer/MediaItemsFetcher.java
+++ b/src/com/android/car/media/drawer/MediaItemsFetcher.java
@@ -21,14 +21,14 @@
 import android.text.TextUtils;
 import android.view.View;
 
+import androidx.car.drawer.CarDrawerAdapter;
+import androidx.car.drawer.DrawerItemViewHolder;
+
 import com.android.car.apps.common.BitmapDownloader;
 import com.android.car.apps.common.BitmapWorkerOptions;
 import com.android.car.apps.common.UriUtils;
 import com.android.car.media.R;
 
-import androidx.car.drawer.CarDrawerAdapter;
-import androidx.car.drawer.DrawerItemViewHolder;
-
 /**
  * Component that handles fetching of items for {@link MediaDrawerAdapter}.
  * <p>
diff --git a/src/com/android/car/media/drawer/MediaQueueItemsFetcher.java b/src/com/android/car/media/drawer/MediaQueueItemsFetcher.java
index 4603dfd..301b4f8 100644
--- a/src/com/android/car/media/drawer/MediaQueueItemsFetcher.java
+++ b/src/com/android/car/media/drawer/MediaQueueItemsFetcher.java
@@ -22,7 +22,9 @@
 import android.media.session.MediaSession;
 import android.media.session.PlaybackState;
 import android.os.Handler;
-import android.support.annotation.Nullable;
+
+import androidx.annotation.Nullable;
+import androidx.car.drawer.DrawerItemViewHolder;
 
 import com.android.car.media.MediaPlaybackModel;
 import com.android.car.media.R;
@@ -31,8 +33,6 @@
 import java.util.Collections;
 import java.util.List;
 
-import androidx.car.drawer.DrawerItemViewHolder;
-
 /**
  * {@link MediaItemsFetcher} implementation that fetches items from the {@link MediaController}'s
  * currently playing queue.
