diff --git a/Android.mk b/Android.mk
index c727011..6cd0b0e 100644
--- a/Android.mk
+++ b/Android.mk
@@ -32,15 +32,15 @@
 LOCAL_USE_AAPT2 := true
 
 LOCAL_STATIC_ANDROID_LIBRARIES += \
-    android-support-car \
-    android-arch-lifecycle-extensions \
-    android-support-constraint-layout \
-    android-support-v4 \
-    android-support-v7-cardview \
+    androidx.car_car \
+    androidx.lifecycle_lifecycle-extensions \
+    androidx-constraintlayout_constraintlayout \
+    androidx.legacy_legacy-support-v4 \
+    androidx.cardview_cardview \
     car-apps-common \
 
 LOCAL_STATIC_JAVA_LIBRARIES := \
-    android-support-constraint-layout-solver \
+    androidx-constraintlayout_constraintlayout-solver \
     guava \
 
 LOCAL_PROGUARD_ENABLED := disabled
diff --git a/res/layout-port/dialer_fragment.xml b/res/layout-port/dialer_fragment.xml
index 8b04206..1e3093a 100644
--- a/res/layout-port/dialer_fragment.xml
+++ b/res/layout-port/dialer_fragment.xml
@@ -19,7 +19,7 @@
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:paddingTop="@dimen/car_app_bar_height">
-    <android.support.constraint.ConstraintLayout
+    <androidx.constraintlayout.widget.ConstraintLayout
         android:id="@+id/dialer_info_fragment_container"
         android:paddingLeft="@dimen/car_margin"
         android:paddingRight="@dimen/car_margin"
@@ -102,5 +102,5 @@
             app:layout_constraintBottom_toBottomOf="parent"
             app:layout_constraintEnd_toEndOf="parent"
             app:layout_constraintStart_toEndOf="@+id/end_call_button"/>
-    </android.support.constraint.ConstraintLayout>
+    </androidx.constraintlayout.widget.ConstraintLayout>
 </FrameLayout>
\ No newline at end of file
diff --git a/res/layout-port/in_call_fragment.xml b/res/layout-port/in_call_fragment.xml
index 11808a4..bc8f55a 100644
--- a/res/layout-port/in_call_fragment.xml
+++ b/res/layout-port/in_call_fragment.xml
@@ -13,7 +13,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:layout_width="match_parent"
@@ -49,5 +49,5 @@
         app:layout_constraintBottom_toBottomOf="parent"
         app:layout_constraintEnd_toEndOf="parent"
         app:layout_constraintStart_toStartOf="parent"/>
-</android.support.constraint.ConstraintLayout
+</androidx.constraintlayout.widget.ConstraintLayout
 >
\ No newline at end of file
diff --git a/res/layout/audio_route_list_item.xml b/res/layout/audio_route_list_item.xml
index 79d6e7c..6d55cb8 100644
--- a/res/layout/audio_route_list_item.xml
+++ b/res/layout/audio_route_list_item.xml
@@ -13,14 +13,14 @@
 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:layout_width="match_parent"
     android:layout_height="@dimen/car_action_bar_height"
     android:background="@color/phone_theme"
     android:elevation="@dimen/in_call_card_elevation">
-    <android.support.constraint.Guideline
+    <androidx.constraintlayout.widget.Guideline
         android:id="@+id/text_start"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
@@ -44,4 +44,4 @@
         app:layout_constraintStart_toStartOf="@+id/text_start"
         app:layout_constraintEnd_toEndOf="parent"
         app:layout_constraintTop_toTopOf="parent"/>
-</android.support.constraint.ConstraintLayout>
+</androidx.constraintlayout.widget.ConstraintLayout>
diff --git a/res/layout/audio_route_switch_dialog.xml b/res/layout/audio_route_switch_dialog.xml
index 6f89ce7..000021c 100644
--- a/res/layout/audio_route_switch_dialog.xml
+++ b/res/layout/audio_route_switch_dialog.xml
@@ -13,7 +13,7 @@
      See the License for the specific language governing permissions and
      limitations under the License.
 -->
-<android.support.v7.widget.CardView
+<androidx.cardview.widget.CardView
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     android:layout_width="match_parent"
@@ -30,4 +30,4 @@
         android:clipChildren="false"
         app:scrollBarEnabled="false"
         app:gutter="none"/>
-</android.support.v7.widget.CardView>
\ No newline at end of file
+</androidx.cardview.widget.CardView>
\ No newline at end of file
diff --git a/res/layout/call_history_list_item.xml b/res/layout/call_history_list_item.xml
index 812cb90..3033144 100644
--- a/res/layout/call_history_list_item.xml
+++ b/res/layout/call_history_list_item.xml
@@ -13,7 +13,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:layout_width="match_parent"
@@ -23,7 +23,7 @@
     android:paddingLeft="@dimen/car_keyline_1"
     android:elevation = "@dimen/in_call_card_elevation">
 
-    <android.support.constraint.Guideline
+    <androidx.constraintlayout.widget.Guideline
         android:id="@+id/list_item_left_edge"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
@@ -39,4 +39,4 @@
         app:layout_constraintStart_toStartOf="parent"
         app:layout_constraintEnd_toStartOf="@+id/toggle_dialpad_button"
         app:layout_constraintTop_toTopOf="parent"/>
-</android.support.constraint.ConstraintLayout>
+</androidx.constraintlayout.widget.ConstraintLayout>
diff --git a/res/layout/call_list_fragment.xml b/res/layout/call_list_fragment.xml
index 30086a9..a1f4d3c 100644
--- a/res/layout/call_list_fragment.xml
+++ b/res/layout/call_list_fragment.xml
@@ -15,7 +15,6 @@
 -->
 <FrameLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:app="http://schemas.android.com/apk/res-auto"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:background="@color/call_list_fragment_background"
diff --git a/res/layout/call_log_list_item_card.xml b/res/layout/call_log_list_item_card.xml
index f836fff..c2313e1 100644
--- a/res/layout/call_log_list_item_card.xml
+++ b/res/layout/call_log_list_item_card.xml
@@ -13,7 +13,7 @@
      See the License for the specific language governing permissions and
      limitations under the License.
 -->
-<android.support.v7.widget.CardView
+<androidx.cardview.widget.CardView
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     android:id="@+id/call_log_card"
@@ -26,4 +26,4 @@
     app:cardElevation="@dimen/car_action_bar_elevation">
 
     <include layout="@layout/call_log_list_item_card_base"/>
-</android.support.v7.widget.CardView>
+</androidx.cardview.widget.CardView>
diff --git a/res/layout/contact_detail_name_image.xml b/res/layout/contact_detail_name_image.xml
index 31ff2ca..365260d 100644
--- a/res/layout/contact_detail_name_image.xml
+++ b/res/layout/contact_detail_name_image.xml
@@ -32,7 +32,7 @@
         <!-- Used to provide common margins and also allow for the textview to set its right margin
              to the width of the image to allow it to ellipsize.
         -->
-        <android.support.constraint.ConstraintLayout
+        <androidx.constraintlayout.widget.ConstraintLayout
             android:layout_width="match_parent"
             android:layout_height="@dimen/contact_detail_name_card_height"
             android:layout_marginLeft="@dimen/car_keyline_1"
@@ -61,7 +61,7 @@
                 app:layout_constraintStart_toStartOf="parent"
                 app:layout_constraintEnd_toEndOf="parent"
                 app:layout_constraintTop_toBottomOf="@+id/avatar"/>
-        </android.support.constraint.ConstraintLayout>
+        </androidx.constraintlayout.widget.ConstraintLayout>
         <View
             android:id="@+id/divider"
             android:layout_width="match_parent"
diff --git a/res/layout/contact_list_fragment.xml b/res/layout/contact_list_fragment.xml
index 1df07e2..67595aa 100644
--- a/res/layout/contact_list_fragment.xml
+++ b/res/layout/contact_list_fragment.xml
@@ -34,7 +34,7 @@
         android:layout_width="match_parent"
         android:layout_height="match_parent"
         android:visibility="gone">
-        <android.support.constraint.ConstraintLayout
+        <androidx.constraintlayout.widget.ConstraintLayout
             android:layout_width="match_parent"
             android:layout_height="@dimen/car_app_bar_height"
             android:background="@color/phone_theme_secondary">
@@ -49,7 +49,7 @@
                 app:layout_constraintStart_toStartOf="parent"
                 app:layout_constraintEnd_toEndOf="@+id/margin_guideline"
                 app:layout_constraintTop_toTopOf="parent"/>
-            <android.support.constraint.Guideline
+            <androidx.constraintlayout.widget.Guideline
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:id="@+id/margin_guideline"
@@ -63,7 +63,7 @@
                 app:layout_constraintBottom_toBottomOf="parent"
                 app:layout_constraintStart_toEndOf="@+id/back_button"
                 app:layout_constraintTop_toTopOf="parent"/>
-        </android.support.constraint.ConstraintLayout>
+        </androidx.constraintlayout.widget.ConstraintLayout>
         <FrameLayout
             android:id="@+id/contact_detail_fragment_container"
             android:layout_marginTop="@dimen/car_app_bar_height"
diff --git a/res/layout/dialer_fragment.xml b/res/layout/dialer_fragment.xml
index 495d4d3..9403310 100644
--- a/res/layout/dialer_fragment.xml
+++ b/res/layout/dialer_fragment.xml
@@ -23,7 +23,7 @@
     android:layout_height="match_parent"
     android:paddingTop="@dimen/car_app_bar_height">
 
-    <android.support.constraint.ConstraintLayout
+    <androidx.constraintlayout.widget.ConstraintLayout
         android:layout_width="match_parent"
         android:layout_height="match_parent">
 
@@ -59,5 +59,5 @@
             app:layout_constraintTop_toTopOf="@+id/dialpad_fragment_container">
             <include layout="@layout/dialer_info_fragment"/>
         </FrameLayout>
-    </android.support.constraint.ConstraintLayout>
+    </androidx.constraintlayout.widget.ConstraintLayout>
 </FrameLayout>
diff --git a/res/layout/dialer_info_fragment.xml b/res/layout/dialer_info_fragment.xml
index 1f900f6..8a03249 100644
--- a/res/layout/dialer_info_fragment.xml
+++ b/res/layout/dialer_info_fragment.xml
@@ -13,7 +13,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:layout_width="match_parent"
@@ -88,4 +88,4 @@
         app:layout_constraintBottom_toBottomOf="parent"
         app:layout_constraintEnd_toEndOf="parent"
         app:layout_constraintStart_toEndOf="@+id/end_call_button"/>
-</android.support.constraint.ConstraintLayout>
\ No newline at end of file
+</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
diff --git a/res/layout/in_call_fragment.xml b/res/layout/in_call_fragment.xml
index 08a39be..0b26936 100644
--- a/res/layout/in_call_fragment.xml
+++ b/res/layout/in_call_fragment.xml
@@ -37,7 +37,7 @@
         <include layout="@layout/user_profile_large"/>
     </FrameLayout>
 
-    <android.support.v7.widget.CardView
+    <androidx.cardview.widget.CardView
         android:id="@+id/controller_bar_container"
         android:layout_width="match_parent"
         android:layout_height="@dimen/car_action_bar_height"
diff --git a/res/layout/on_going_call_controller_bar_fragment.xml b/res/layout/on_going_call_controller_bar_fragment.xml
index 62a430b..4afe545 100644
--- a/res/layout/on_going_call_controller_bar_fragment.xml
+++ b/res/layout/on_going_call_controller_bar_fragment.xml
@@ -13,7 +13,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"
@@ -97,4 +97,4 @@
         app:layout_constraintEnd_toEndOf="parent"
         app:layout_constraintTop_toTopOf="parent"
         tools:src="@color/contact_badge"/>
-</android.support.constraint.ConstraintLayout>
+</androidx.constraintlayout.widget.ConstraintLayout>
diff --git a/res/layout/ongoing_call.xml b/res/layout/ongoing_call.xml
index 5d8db5a..8527e65 100644
--- a/res/layout/ongoing_call.xml
+++ b/res/layout/ongoing_call.xml
@@ -67,7 +67,7 @@
     </RelativeLayout>
 
     <!-- In call dialpad -->
-    <android.support.v7.widget.CardView
+    <androidx.cardview.widget.CardView
         android:id="@+id/dialpad_container"
         android:layout_width="@dimen/in_call_card_dialpad_width"
         android:layout_height="match_parent"
@@ -78,7 +78,7 @@
         app:cardElevation="@dimen/in_call_card_elevation"
         android:visibility="gone" >
         <include layout="@layout/dialpad" />
-    </android.support.v7.widget.CardView>
+    </androidx.cardview.widget.CardView>
 
     <!-- In call card -->
     <FrameLayout
diff --git a/res/layout/ringing_call_controller_bar_fragment.xml b/res/layout/ringing_call_controller_bar_fragment.xml
index 8278980..4613020 100644
--- a/res/layout/ringing_call_controller_bar_fragment.xml
+++ b/res/layout/ringing_call_controller_bar_fragment.xml
@@ -13,7 +13,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:layout_width="match_parent"
@@ -46,7 +46,7 @@
         app:layout_constraintEnd_toStartOf="@+id/mid_line"
         app:layout_constraintTop_toTopOf="parent"/>
 
-    <android.support.constraint.Guideline
+    <androidx.constraintlayout.widget.Guideline
         android:id="@+id/mid_line"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
@@ -77,4 +77,4 @@
         app:layout_constraintStart_toEndOf="@+id/end_call_button"
         app:layout_constraintEnd_toEndOf="parent"
         app:layout_constraintTop_toTopOf="parent"/>
-</android.support.constraint.ConstraintLayout>
+</androidx.constraintlayout.widget.ConstraintLayout>
diff --git a/res/menu/options_menu.xml b/res/menu/options_menu.xml
index 9557c6d..66b644e 100644
--- a/res/menu/options_menu.xml
+++ b/res/menu/options_menu.xml
@@ -18,6 +18,6 @@
     <item android:id="@+id/search"
           android:title="@string/search_title"
           android:icon="@drawable/ic_search"
-          app:actionViewClass="android.support.v7.widget.SearchView"
+          app:actionViewClass="androidx.appcompat.widget.SearchView"
           app:showAsAction="always|collapseActionView" />
 </menu>
diff --git a/src/com/android/car/dialer/BitmapWorkerTask.java b/src/com/android/car/dialer/BitmapWorkerTask.java
index 4010152..04adfe1 100644
--- a/src/com/android/car/dialer/BitmapWorkerTask.java
+++ b/src/com/android/car/dialer/BitmapWorkerTask.java
@@ -15,13 +15,13 @@
  */
 package com.android.car.dialer;
 
-import com.android.car.dialer.telecom.TelecomUtils;
-
 import android.content.ContentResolver;
 import android.graphics.Bitmap;
 import android.os.AsyncTask;
 import android.widget.ImageView;
 
+import com.android.car.dialer.telecom.TelecomUtils;
+
 import java.lang.ref.WeakReference;
 
 /**
diff --git a/src/com/android/car/dialer/CallLogViewHolder.java b/src/com/android/car/dialer/CallLogViewHolder.java
index fa575ae..1ef8ad0 100644
--- a/src/com/android/car/dialer/CallLogViewHolder.java
+++ b/src/com/android/car/dialer/CallLogViewHolder.java
@@ -15,7 +15,6 @@
  */
 package com.android.car.dialer;
 
-import android.support.v7.widget.RecyclerView;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.FrameLayout;
@@ -23,8 +22,10 @@
 import android.widget.LinearLayout;
 import android.widget.TextView;
 
+import androidx.recyclerview.widget.RecyclerView;
+
 /**
- * A {@link android.support.v7.widget.RecyclerView.ViewHolder} that will hold layouts that
+ * A {@link androidx.recyclerview.widget.RecyclerView.ViewHolder} that will hold layouts that
  * are inflated by {@link StrequentsAdapter}.
  */
 public class CallLogViewHolder extends RecyclerView.ViewHolder {
diff --git a/src/com/android/car/dialer/ContactDetailsFragment.java b/src/com/android/car/dialer/ContactDetailsFragment.java
index bb3b1b5..72de11d 100644
--- a/src/com/android/car/dialer/ContactDetailsFragment.java
+++ b/src/com/android/car/dialer/ContactDetailsFragment.java
@@ -20,13 +20,6 @@
 import android.net.Uri;
 import android.os.Bundle;
 import android.provider.ContactsContract;
-import android.support.annotation.ColorInt;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
-import android.support.v4.app.LoaderManager;
-import android.support.v4.content.CursorLoader;
-import android.support.v4.content.Loader;
-import android.support.v7.widget.RecyclerView;
 import android.util.Log;
 import android.util.Pair;
 import android.view.LayoutInflater;
@@ -40,9 +33,16 @@
 import java.util.ArrayList;
 import java.util.List;
 
+import androidx.annotation.ColorInt;
+import androidx.annotation.Nullable;
 import androidx.car.utils.ListItemBackgroundResolver;
 import androidx.car.widget.DayNightStyle;
 import androidx.car.widget.PagedListView;
+import androidx.fragment.app.Fragment;
+import androidx.loader.app.LoaderManager;
+import androidx.loader.content.CursorLoader;
+import androidx.loader.content.Loader;
+import androidx.recyclerview.widget.RecyclerView;
 
 /**
  * A fragment that shows the name of the contact, the photo and all listed phone numbers. It is
@@ -109,7 +109,7 @@
     }
 
     /**
-     * Adds a {@link android.support.v7.widget.RecyclerView.OnScrollListener} to be notified when
+     * Adds a {@link androidx.recyclerview.widget.RecyclerView.OnScrollListener} to be notified when
      * the contact details are scrolled.
      *
      * @see RecyclerView#addOnScrollListener(RecyclerView.OnScrollListener)
diff --git a/src/com/android/car/dialer/ContactEntry.java b/src/com/android/car/dialer/ContactEntry.java
index 27e4377..aa3d337 100644
--- a/src/com/android/car/dialer/ContactEntry.java
+++ b/src/com/android/car/dialer/ContactEntry.java
@@ -18,13 +18,13 @@
 import android.content.Context;
 import android.database.Cursor;
 import android.provider.ContactsContract;
-import android.support.annotation.Nullable;
 import android.text.TextUtils;
-import android.util.Log;
 
 import com.android.car.dialer.telecom.PhoneLoader;
 import com.android.car.dialer.telecom.TelecomUtils;
 
+import androidx.annotation.Nullable;
+
 /**
  * Encapsulates data about a phone Contact entry. Typically loaded from the local Contact store.
  */
diff --git a/src/com/android/car/dialer/ContactResultViewHolder.java b/src/com/android/car/dialer/ContactResultViewHolder.java
index 00766e1..8b78cba 100644
--- a/src/com/android/car/dialer/ContactResultViewHolder.java
+++ b/src/com/android/car/dialer/ContactResultViewHolder.java
@@ -21,22 +21,22 @@
 import android.graphics.Bitmap;
 import android.graphics.BitmapFactory;
 import android.net.Uri;
-import android.support.annotation.Nullable;
-import android.support.v7.widget.RecyclerView;
 import android.view.View;
 import android.widget.ImageView;
 import android.widget.TextView;
 
-import androidx.car.utils.ListItemBackgroundResolver;
-
 import com.android.car.apps.common.LetterTileDrawable;
 import com.android.car.dialer.ui.CircleBitmapDrawable;
 
 import java.io.FileNotFoundException;
 import java.io.InputStream;
 
+import androidx.annotation.Nullable;
+import androidx.car.utils.ListItemBackgroundResolver;
+import androidx.recyclerview.widget.RecyclerView;
+
 /**
- * A {@link android.support.v7.widget.RecyclerView.ViewHolder} that will parse relevant
+ * A {@link androidx.recyclerview.widget.RecyclerView.ViewHolder} that will parse relevant
  * views out of a {@code contact_result} layout.
  */
 public class ContactResultViewHolder extends RecyclerView.ViewHolder {
diff --git a/src/com/android/car/dialer/ContactResultsAdapter.java b/src/com/android/car/dialer/ContactResultsAdapter.java
index 07c6351..20fa2c8 100644
--- a/src/com/android/car/dialer/ContactResultsAdapter.java
+++ b/src/com/android/car/dialer/ContactResultsAdapter.java
@@ -19,7 +19,6 @@
 import android.database.Cursor;
 import android.net.Uri;
 import android.provider.ContactsContract.Contacts;
-import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
@@ -28,6 +27,7 @@
 import java.util.List;
 
 import androidx.car.widget.PagedListView;
+import androidx.recyclerview.widget.RecyclerView;
 
 /**
  *  An adapter that will parse a list of contacts given by a {@link Cursor} that display the
diff --git a/src/com/android/car/dialer/ContactResultsFragment.java b/src/com/android/car/dialer/ContactResultsFragment.java
index 417581d..03728ad 100644
--- a/src/com/android/car/dialer/ContactResultsFragment.java
+++ b/src/com/android/car/dialer/ContactResultsFragment.java
@@ -17,26 +17,26 @@
 package com.android.car.dialer;
 
 import android.database.Cursor;
+import android.net.Uri;
 import android.os.Bundle;
 import android.provider.ContactsContract.Contacts;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
-import android.support.v4.app.LoaderManager;
-import android.support.v4.content.CursorLoader;
-import android.support.v4.content.Loader;
-import android.support.v7.widget.RecyclerView;
 import android.text.TextUtils;
 import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
-import android.net.Uri;
 
 import java.util.ArrayList;
 import java.util.List;
 
+import androidx.annotation.Nullable;
 import androidx.car.widget.DayNightStyle;
 import androidx.car.widget.PagedListView;
+import androidx.fragment.app.Fragment;
+import androidx.loader.app.LoaderManager;
+import androidx.loader.content.CursorLoader;
+import androidx.loader.content.Loader;
+import androidx.recyclerview.widget.RecyclerView;
 
 /**
  * A fragment that will take a search query, look up contacts that match and display those
@@ -92,7 +92,7 @@
     }
 
     /**
-     * Adds a {@link android.support.v7.widget.RecyclerView.OnScrollListener} to be notified when
+     * Adds a {@link androidx.recyclerview.widget.RecyclerView.OnScrollListener} to be notified when
      * the contact list is scrolled.
      *
      * @see RecyclerView#addOnScrollListener(RecyclerView.OnScrollListener)
diff --git a/src/com/android/car/dialer/ContactSearchActivity.java b/src/com/android/car/dialer/ContactSearchActivity.java
index 03243f3..4dcc877 100644
--- a/src/com/android/car/dialer/ContactSearchActivity.java
+++ b/src/com/android/car/dialer/ContactSearchActivity.java
@@ -23,17 +23,18 @@
 import android.net.Uri;
 import android.os.Bundle;
 import android.os.Handler;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
-import android.support.v4.app.FragmentActivity;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
 import android.text.Editable;
 import android.text.TextWatcher;
 import android.view.View;
 import android.view.inputmethod.InputMethodManager;
 import android.widget.EditText;
 
+import androidx.annotation.Nullable;
+import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentActivity;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+
 /**
  * An activity that manages contact searching. This activity will display the result of a search
  * as well as show the details of a contact when that contact is clicked.
diff --git a/src/com/android/car/dialer/DialerFragment.java b/src/com/android/car/dialer/DialerFragment.java
index 86bd97f..f0b416d 100644
--- a/src/com/android/car/dialer/DialerFragment.java
+++ b/src/com/android/car/dialer/DialerFragment.java
@@ -16,8 +16,6 @@
 package com.android.car.dialer;
 
 import android.os.Bundle;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
 import android.text.TextUtils;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -28,6 +26,9 @@
 import com.android.car.dialer.ui.DialerInfoController;
 import com.android.car.dialer.ui.DialpadFragment;
 
+import androidx.annotation.Nullable;
+import androidx.fragment.app.Fragment;
+
 /**
  * Fragment that controls the dialpad.
  */
diff --git a/src/com/android/car/dialer/NoHfpFragment.java b/src/com/android/car/dialer/NoHfpFragment.java
index 295b474..6bf197b 100644
--- a/src/com/android/car/dialer/NoHfpFragment.java
+++ b/src/com/android/car/dialer/NoHfpFragment.java
@@ -16,13 +16,14 @@
 package com.android.car.dialer;
 
 import android.os.Bundle;
-import android.support.v4.app.Fragment;
 import android.text.TextUtils;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.TextView;
 
+import androidx.fragment.app.Fragment;
+
 /**
  * A fragment that informs the user that there is no bluetooth device attached that can make
  * phone calls.
diff --git a/src/com/android/car/dialer/OngoingCallFragment.java b/src/com/android/car/dialer/OngoingCallFragment.java
index 1c6445a..6a1ce28 100644
--- a/src/com/android/car/dialer/OngoingCallFragment.java
+++ b/src/com/android/car/dialer/OngoingCallFragment.java
@@ -21,7 +21,6 @@
 import android.graphics.Color;
 import android.os.Bundle;
 import android.os.Handler;
-import android.support.v4.app.Fragment;
 import android.telecom.Call;
 import android.telecom.CallAudioState;
 import android.text.TextUtils;
@@ -50,6 +49,8 @@
 import java.util.List;
 import java.util.Objects;
 
+import androidx.fragment.app.Fragment;
+
 /**
  * A fragment that displays information about an on-going call with options to hang up.
  */
diff --git a/src/com/android/car/dialer/StrequentsAdapter.java b/src/com/android/car/dialer/StrequentsAdapter.java
index da07b23..647be2f 100644
--- a/src/com/android/car/dialer/StrequentsAdapter.java
+++ b/src/com/android/car/dialer/StrequentsAdapter.java
@@ -21,16 +21,12 @@
 import android.graphics.PorterDuff;
 import android.os.Handler;
 import android.provider.CallLog;
-import android.support.annotation.Nullable;
-import android.support.v7.widget.RecyclerView;
 import android.text.TextUtils;
 import android.text.format.DateUtils;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 
-import androidx.car.widget.PagedListView;
-
 import com.android.car.dialer.telecom.PhoneLoader;
 import com.android.car.dialer.telecom.TelecomUtils;
 import com.android.car.dialer.telecom.UiCallManager;
@@ -40,6 +36,10 @@
 import java.util.HashMap;
 import java.util.List;
 
+import androidx.annotation.Nullable;
+import androidx.car.widget.PagedListView;
+import androidx.recyclerview.widget.RecyclerView;
+
 /**
  * Adapter class for populating Contact data as loaded from the DB to an AA GroupingRecyclerView.
  * It handles two types of contacts:
diff --git a/src/com/android/car/dialer/StrequentsFragment.java b/src/com/android/car/dialer/StrequentsFragment.java
index 7bd8d4a..06141ed 100644
--- a/src/com/android/car/dialer/StrequentsFragment.java
+++ b/src/com/android/car/dialer/StrequentsFragment.java
@@ -24,22 +24,21 @@
 import android.net.Uri;
 import android.os.Bundle;
 import android.os.Handler;
-import android.support.annotation.NonNull;
-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.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 
-import androidx.car.widget.DayNightStyle;
-import androidx.car.widget.PagedListView;
-
 import com.android.car.dialer.telecom.PhoneLoader;
 import com.android.car.dialer.telecom.UiCallManager;
 
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.car.widget.PagedListView;
+import androidx.fragment.app.Fragment;
+import androidx.recyclerview.widget.GridLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+
 /**
  * Contains a list of contacts. The call types can be any of the CALL_TYPE_* fields from
  * {@link PhoneLoader}.
diff --git a/src/com/android/car/dialer/TelecomActivity.java b/src/com/android/car/dialer/TelecomActivity.java
index 5ec5493..08e5451 100644
--- a/src/com/android/car/dialer/TelecomActivity.java
+++ b/src/com/android/car/dialer/TelecomActivity.java
@@ -21,17 +21,10 @@
 import android.graphics.PorterDuff;
 import android.graphics.drawable.Drawable;
 import android.os.Bundle;
-import android.support.annotation.Nullable;
-import android.support.annotation.StringRes;
-import android.support.v4.app.Fragment;
 import android.telecom.Call;
 import android.telephony.PhoneNumberUtils;
 import android.util.Log;
 
-import androidx.car.drawer.CarDrawerActivity;
-import androidx.car.drawer.CarDrawerAdapter;
-import androidx.car.drawer.DrawerItemViewHolder;
-
 import com.android.car.dialer.telecom.InMemoryPhoneBook;
 import com.android.car.dialer.telecom.PhoneLoader;
 import com.android.car.dialer.telecom.UiCall;
@@ -42,6 +35,13 @@
 
 import java.util.stream.Stream;
 
+import androidx.annotation.Nullable;
+import androidx.annotation.StringRes;
+import androidx.car.drawer.CarDrawerActivity;
+import androidx.car.drawer.CarDrawerAdapter;
+import androidx.car.drawer.DrawerItemViewHolder;
+import androidx.fragment.app.Fragment;
+
 /**
  * Main activity for the Dialer app. Displays different fragments depending on call and
  * connectivity status:
@@ -69,7 +69,7 @@
 
     /**
      * Whether or not it is safe to make transactions on the
-     * {@link android.support.v4.app.FragmentManager}. This variable prevents a possible exception
+     * {@link androidx.fragment.app.FragmentManager}. This variable prevents a possible exception
      * when calling commit() on the FragmentManager.
      *
      * <p>The default value is {@code true} because it is only after
diff --git a/src/com/android/car/dialer/livedata/CallHistoryLiveData.java b/src/com/android/car/dialer/livedata/CallHistoryLiveData.java
index ea093fa..fd34c03 100644
--- a/src/com/android/car/dialer/livedata/CallHistoryLiveData.java
+++ b/src/com/android/car/dialer/livedata/CallHistoryLiveData.java
@@ -15,7 +15,6 @@
  */
 package com.android.car.dialer.livedata;
 
-import android.arch.lifecycle.LiveData;
 import android.content.ContentResolver;
 import android.content.Context;
 import android.content.CursorLoader;
@@ -28,6 +27,8 @@
 
 import java.util.List;
 
+import androidx.lifecycle.LiveData;
+
 /**
  * Live data which loads call history.
  */
diff --git a/src/com/android/car/dialer/telecom/ContactBitmapWorker.java b/src/com/android/car/dialer/telecom/ContactBitmapWorker.java
index 548fb30..b57179e 100644
--- a/src/com/android/car/dialer/telecom/ContactBitmapWorker.java
+++ b/src/com/android/car/dialer/telecom/ContactBitmapWorker.java
@@ -18,12 +18,13 @@
 import android.content.ContentResolver;
 import android.graphics.Bitmap;
 import android.os.AsyncTask;
-import android.support.annotation.MainThread;
-import android.support.annotation.Nullable;
 import android.widget.ImageView;
 
 import java.lang.ref.WeakReference;
 
+import androidx.annotation.MainThread;
+import androidx.annotation.Nullable;
+
 /**
  * Helper task that retrieves a Contact photo from the local Contacts store. The loading task
  * is tied to an ImageView that allows a lightweight management of the task upon update of the view.
diff --git a/src/com/android/car/dialer/telecom/InMemoryPhoneBook.java b/src/com/android/car/dialer/telecom/InMemoryPhoneBook.java
index 3aaa21f..a5fd34f 100644
--- a/src/com/android/car/dialer/telecom/InMemoryPhoneBook.java
+++ b/src/com/android/car/dialer/telecom/InMemoryPhoneBook.java
@@ -3,10 +3,6 @@
 import android.content.Context;
 import android.database.Cursor;
 import android.provider.ContactsContract;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.content.CursorLoader;
-import android.support.v4.content.Loader;
 import android.telephony.PhoneNumberUtils;
 
 import com.android.car.dialer.ContactEntry;
@@ -16,6 +12,11 @@
 import java.util.List;
 import java.util.Map;
 
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.loader.content.CursorLoader;
+import androidx.loader.content.Loader;
+
 /**
  * A singleton statically accessible helper class which pre-loads contacts list into memory so
  * that they can be accessed more easily and quickly.
diff --git a/src/com/android/car/dialer/telecom/PhoneLoader.java b/src/com/android/car/dialer/telecom/PhoneLoader.java
index 6ac5c6e..8d55d9b 100644
--- a/src/com/android/car/dialer/telecom/PhoneLoader.java
+++ b/src/com/android/car/dialer/telecom/PhoneLoader.java
@@ -24,7 +24,6 @@
 import android.provider.BaseColumns;
 import android.provider.CallLog;
 import android.provider.ContactsContract;
-import android.support.annotation.IntDef;
 import android.text.TextUtils;
 import android.util.Log;
 
@@ -32,6 +31,8 @@
 import java.util.HashMap;
 import java.util.List;
 
+import androidx.annotation.IntDef;
+
 /**
  * Manages loading different types of call logs.
  * Currently supports:
diff --git a/src/com/android/car/dialer/telecom/TelecomUtils.java b/src/com/android/car/dialer/telecom/TelecomUtils.java
index a0bd4d8..b5f058f 100644
--- a/src/com/android/car/dialer/telecom/TelecomUtils.java
+++ b/src/com/android/car/dialer/telecom/TelecomUtils.java
@@ -29,8 +29,6 @@
 import android.provider.ContactsContract.CommonDataKinds.Phone;
 import android.provider.ContactsContract.PhoneLookup;
 import android.provider.Settings;
-import android.support.annotation.Nullable;
-import android.support.annotation.WorkerThread;
 import android.telecom.Call;
 import android.telephony.PhoneNumberUtils;
 import android.telephony.TelephonyManager;
@@ -46,6 +44,9 @@
 import java.io.InputStream;
 import java.util.Locale;
 
+import androidx.annotation.Nullable;
+import androidx.annotation.WorkerThread;
+
 public class TelecomUtils {
     private final static String TAG = "Em.TelecomUtils";
 
diff --git a/src/com/android/car/dialer/ui/CallHistoryFragment.java b/src/com/android/car/dialer/ui/CallHistoryFragment.java
index d5f8e5d..e44e6b2 100644
--- a/src/com/android/car/dialer/ui/CallHistoryFragment.java
+++ b/src/com/android/car/dialer/ui/CallHistoryFragment.java
@@ -15,25 +15,25 @@
  */
 package com.android.car.dialer.ui;
 
-import android.arch.lifecycle.LiveData;
-import android.arch.lifecycle.ViewModelProviders;
 import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 
-import androidx.car.widget.ListItemAdapter;
-import androidx.car.widget.PagedListView;
-
 import com.android.car.dialer.R;
 import com.android.car.dialer.telecom.PhoneLoader;
 import com.android.car.dialer.ui.viewmodel.CallHistoryViewModel;
 
 import java.util.List;
 
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.car.widget.ListItemAdapter;
+import androidx.car.widget.PagedListView;
+import androidx.fragment.app.Fragment;
+import androidx.lifecycle.LiveData;
+import androidx.lifecycle.ViewModelProviders;
+
 public class CallHistoryFragment extends Fragment {
     public static final String CALL_TYPE_KEY = "CALL_TYPE_KEY";
 
diff --git a/src/com/android/car/dialer/ui/CallHistoryListItemProvider.java b/src/com/android/car/dialer/ui/CallHistoryListItemProvider.java
index 2eaff9f..adfa655 100644
--- a/src/com/android/car/dialer/ui/CallHistoryListItemProvider.java
+++ b/src/com/android/car/dialer/ui/CallHistoryListItemProvider.java
@@ -18,16 +18,16 @@
 import android.content.Context;
 import android.graphics.drawable.BitmapDrawable;
 
-import androidx.car.widget.ListItem;
-import androidx.car.widget.ListItemProvider;
-import androidx.car.widget.TextListItem;
-
 import com.android.car.dialer.telecom.UiCallManager;
 import com.android.car.dialer.ui.listitem.CallLogListItem;
 
 import java.util.ArrayList;
 import java.util.List;
 
+import androidx.car.widget.ListItem;
+import androidx.car.widget.ListItemProvider;
+import androidx.car.widget.TextListItem;
+
 public class CallHistoryListItemProvider extends ListItemProvider {
 
     private List<TextListItem> mItems = new ArrayList<>();
diff --git a/src/com/android/car/dialer/ui/CallLogListingTask.java b/src/com/android/car/dialer/ui/CallLogListingTask.java
index 5a73d1b..8f8e06c 100644
--- a/src/com/android/car/dialer/ui/CallLogListingTask.java
+++ b/src/com/android/car/dialer/ui/CallLogListingTask.java
@@ -22,7 +22,6 @@
 import android.graphics.Bitmap;
 import android.os.AsyncTask;
 import android.provider.CallLog;
-import android.support.annotation.NonNull;
 import android.telephony.PhoneNumberUtils;
 import android.text.TextUtils;
 import android.text.format.DateUtils;
@@ -36,6 +35,8 @@
 import java.util.ArrayList;
 import java.util.List;
 
+import androidx.annotation.NonNull;
+
 /**
  * Async task which loads call history.
  */
diff --git a/src/com/android/car/dialer/ui/CircleBitmapDrawable.java b/src/com/android/car/dialer/ui/CircleBitmapDrawable.java
index 1d35726..857c942 100644
--- a/src/com/android/car/dialer/ui/CircleBitmapDrawable.java
+++ b/src/com/android/car/dialer/ui/CircleBitmapDrawable.java
@@ -22,9 +22,10 @@
 import android.graphics.PixelFormat;
 import android.graphics.Rect;
 import android.graphics.drawable.Drawable;
-import android.support.annotation.NonNull;
-import android.support.v4.graphics.drawable.RoundedBitmapDrawable;
-import android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory;
+
+import androidx.annotation.NonNull;
+import androidx.core.graphics.drawable.RoundedBitmapDrawable;
+import androidx.core.graphics.drawable.RoundedBitmapDrawableFactory;
 
 
 /**
diff --git a/src/com/android/car/dialer/ui/ContactListFragment.java b/src/com/android/car/dialer/ui/ContactListFragment.java
index 21e2613..93f3acd 100644
--- a/src/com/android/car/dialer/ui/ContactListFragment.java
+++ b/src/com/android/car/dialer/ui/ContactListFragment.java
@@ -21,31 +21,30 @@
 import android.net.Uri;
 import android.os.Bundle;
 import android.provider.ContactsContract;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
-import android.support.v4.app.LoaderManager;
-import android.support.v4.content.CursorLoader;
-import android.support.v4.content.Loader;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.TextView;
 
-import androidx.car.widget.AlphaJumpBucketer;
-import androidx.car.widget.IAlphaJumpAdapter;
-import androidx.car.widget.ListItemAdapter;
-import androidx.car.widget.PagedListView;
-
 import com.android.car.dialer.ContactDetailsFragment;
 import com.android.car.dialer.R;
 import com.android.car.dialer.telecom.PhoneLoader;
-import com.android.car.dialer.telecom.TelecomUtils;
 
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.car.widget.AlphaJumpBucketer;
+import androidx.car.widget.IAlphaJumpAdapter;
+import androidx.car.widget.ListItemAdapter;
+import androidx.car.widget.PagedListView;
+import androidx.fragment.app.Fragment;
+import androidx.loader.app.LoaderManager;
+import androidx.loader.content.CursorLoader;
+import androidx.loader.content.Loader;
+
 /**
  * Contact Fragment.
  */
diff --git a/src/com/android/car/dialer/ui/ContactListItemProvider.java b/src/com/android/car/dialer/ui/ContactListItemProvider.java
index 7ad56c4..7feb4f2 100644
--- a/src/com/android/car/dialer/ui/ContactListItemProvider.java
+++ b/src/com/android/car/dialer/ui/ContactListItemProvider.java
@@ -19,16 +19,16 @@
 import android.graphics.drawable.BitmapDrawable;
 import android.graphics.drawable.Drawable;
 
-import androidx.car.widget.ListItem;
-import androidx.car.widget.ListItemProvider;
-import androidx.car.widget.TextListItem;
+import com.android.car.dialer.R;
+import com.android.car.dialer.telecom.UiCallManager;
+import com.android.car.dialer.ui.listitem.ContactListItem;
 
 import java.util.ArrayList;
 import java.util.List;
 
-import com.android.car.dialer.R;
-import com.android.car.dialer.telecom.UiCallManager;
-import com.android.car.dialer.ui.listitem.ContactListItem;
+import androidx.car.widget.ListItem;
+import androidx.car.widget.ListItemProvider;
+import androidx.car.widget.TextListItem;
 
 /**
  * Provides ListItem for contact list.
diff --git a/src/com/android/car/dialer/ui/DialerInfoController.java b/src/com/android/car/dialer/ui/DialerInfoController.java
index 239c491..37c98f4 100644
--- a/src/com/android/car/dialer/ui/DialerInfoController.java
+++ b/src/com/android/car/dialer/ui/DialerInfoController.java
@@ -20,7 +20,6 @@
 import android.text.TextUtils;
 import android.view.View;
 import android.widget.ImageButton;
-import android.widget.ImageView;
 import android.widget.TextView;
 
 import com.android.car.apps.common.FabDrawable;
diff --git a/src/com/android/car/dialer/ui/DialpadFragment.java b/src/com/android/car/dialer/ui/DialpadFragment.java
index 863f740..7cbd6a3 100644
--- a/src/com/android/car/dialer/ui/DialpadFragment.java
+++ b/src/com/android/car/dialer/ui/DialpadFragment.java
@@ -18,9 +18,6 @@
 import android.media.AudioManager;
 import android.media.ToneGenerator;
 import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
 import android.util.SparseArray;
 import android.util.SparseIntArray;
 import android.view.KeyEvent;
@@ -32,6 +29,10 @@
 import com.android.car.dialer.R;
 import com.android.car.dialer.telecom.UiCallManager;
 
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.fragment.app.Fragment;
+
 /**
  * Dialpad Fragment which displays a dialpad.
  */
diff --git a/src/com/android/car/dialer/ui/InCallFragment.java b/src/com/android/car/dialer/ui/InCallFragment.java
index ff0e2ff..166e5a1 100644
--- a/src/com/android/car/dialer/ui/InCallFragment.java
+++ b/src/com/android/car/dialer/ui/InCallFragment.java
@@ -15,17 +15,11 @@
  */
 package com.android.car.dialer.ui;
 
-import static android.telecom.Call.STATE_RINGING;
-
 import android.os.Bundle;
 import android.os.Handler;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
 import android.telecom.Call;
 import android.text.TextUtils;
 import android.text.format.DateUtils;
-import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
@@ -39,6 +33,10 @@
 import com.android.car.dialer.telecom.UiCall;
 import com.android.car.dialer.telecom.UiCallManager;
 
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.fragment.app.Fragment;
+
 /**
  * A fragment that displays information about an on-going call with options to hang up.
  */
diff --git a/src/com/android/car/dialer/ui/OnGoingCallControllerBarFragment.java b/src/com/android/car/dialer/ui/OnGoingCallControllerBarFragment.java
index 7eeedae..bb6468a 100644
--- a/src/com/android/car/dialer/ui/OnGoingCallControllerBarFragment.java
+++ b/src/com/android/car/dialer/ui/OnGoingCallControllerBarFragment.java
@@ -18,10 +18,6 @@
 import android.app.AlertDialog;
 import android.content.Context;
 import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
-import android.support.v7.widget.RecyclerView;
 import android.telecom.CallAudioState;
 import android.telecom.CallAudioState.CallAudioRoute;
 import android.view.LayoutInflater;
@@ -30,8 +26,6 @@
 import android.widget.ImageView;
 import android.widget.TextView;
 
-import androidx.car.widget.PagedListView;
-
 import com.android.car.apps.common.FabDrawable;
 import com.android.car.dialer.R;
 import com.android.car.dialer.log.L;
@@ -40,6 +34,12 @@
 
 import java.util.List;
 
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.car.widget.PagedListView;
+import androidx.fragment.app.Fragment;
+import androidx.recyclerview.widget.RecyclerView;
+
 /**
  * A Fragment of the bar which controls on going call. Its host or parent Fragment is expected to
  * implement {@link OnGoingCallControllerBarCallback}.
diff --git a/src/com/android/car/dialer/ui/RingingCallControllerBarFragment.java b/src/com/android/car/dialer/ui/RingingCallControllerBarFragment.java
index 7b315b9..239c5a3 100644
--- a/src/com/android/car/dialer/ui/RingingCallControllerBarFragment.java
+++ b/src/com/android/car/dialer/ui/RingingCallControllerBarFragment.java
@@ -1,19 +1,18 @@
 package com.android.car.dialer.ui;
 
 import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v4.app.Fragment;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
-import android.widget.ImageView;
 
-import com.android.car.apps.common.FabDrawable;
 import com.android.car.dialer.R;
 import com.android.car.dialer.telecom.UiCall;
 import com.android.car.dialer.telecom.UiCallManager;
 
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.fragment.app.Fragment;
+
 public class RingingCallControllerBarFragment extends Fragment {
 
     public static RingingCallControllerBarFragment newInstance() {
diff --git a/src/com/android/car/dialer/ui/listitem/CallLogListItem.java b/src/com/android/car/dialer/ui/listitem/CallLogListItem.java
index e48e92d..af8081b 100644
--- a/src/com/android/car/dialer/ui/listitem/CallLogListItem.java
+++ b/src/com/android/car/dialer/ui/listitem/CallLogListItem.java
@@ -20,18 +20,16 @@
 import android.graphics.Bitmap;
 import android.graphics.drawable.BitmapDrawable;
 import android.graphics.drawable.Drawable;
-import android.graphics.drawable.ScaleDrawable;
-import android.view.ViewGroup;
 import android.widget.ImageView;
 
-import androidx.car.widget.TextListItem;
-
 import com.android.car.apps.common.LetterTileDrawable;
+import com.android.car.dialer.R;
 import com.android.car.dialer.telecom.ContactBitmapWorker;
 import com.android.car.dialer.ui.CallHistoryListItemProvider;
 import com.android.car.dialer.ui.CallLogListingTask;
 import com.android.car.dialer.ui.CircleBitmapDrawable;
-import com.android.car.dialer.R;
+
+import androidx.car.widget.TextListItem;
 
 /**
  * List item which is created by {@link CallHistoryListItemProvider} binds a call list item to a
diff --git a/src/com/android/car/dialer/ui/listitem/ContactListItem.java b/src/com/android/car/dialer/ui/listitem/ContactListItem.java
index 8a7b344..7e5792f 100644
--- a/src/com/android/car/dialer/ui/listitem/ContactListItem.java
+++ b/src/com/android/car/dialer/ui/listitem/ContactListItem.java
@@ -22,14 +22,14 @@
 import android.graphics.drawable.Drawable;
 import android.widget.ImageView;
 
-import androidx.car.widget.TextListItem;
-
 import com.android.car.apps.common.LetterTileDrawable;
 import com.android.car.dialer.R;
 import com.android.car.dialer.telecom.ContactBitmapWorker;
 import com.android.car.dialer.ui.CircleBitmapDrawable;
 import com.android.car.dialer.ui.ContactListFragment;
 
+import androidx.car.widget.TextListItem;
+
 /**
  * ListItem for contact.
  */
diff --git a/src/com/android/car/dialer/ui/viewmodel/CallHistoryViewModel.java b/src/com/android/car/dialer/ui/viewmodel/CallHistoryViewModel.java
index 8afe0ef..3a8f6c8 100644
--- a/src/com/android/car/dialer/ui/viewmodel/CallHistoryViewModel.java
+++ b/src/com/android/car/dialer/ui/viewmodel/CallHistoryViewModel.java
@@ -14,11 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 import android.app.Application;
-import android.arch.lifecycle.AndroidViewModel;
-import android.arch.lifecycle.LiveData;
 import android.content.Context;
-import android.support.annotation.NonNull;
 
 import com.android.car.dialer.livedata.CallHistoryLiveData;
 import com.android.car.dialer.livedata.MissedCallHistoryLiveData;
@@ -26,6 +24,10 @@
 
 import java.util.List;
 
+import androidx.annotation.NonNull;
+import androidx.lifecycle.AndroidViewModel;
+import androidx.lifecycle.LiveData;
+
 /**
  * View model for CallHistoryFragment which provides call history live data.
  */
