Merge "Don't hard code the colors of media button" into qt-qpr1-dev am: 6445eaf5a0

Change-Id: If91d75b2d42d8604914dd98b3ccabf34e9c1f3b3
diff --git a/EncryptionRunner/AndroidManifest.xml b/EncryptionRunner/AndroidManifest.xml
deleted file mode 100644
index 3ebdf42..0000000
--- a/EncryptionRunner/AndroidManifest.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2019 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
-        package="android.car.encryptionrunner" >
-    <uses-sdk android:minSdkVersion="23" android:targetSdkVersion="23" />
-</manifest>
diff --git a/EncryptionRunner/src/android/car/encryptionrunner/DummyEncryptionRunner.java b/EncryptionRunner/src/android/car/encryptionrunner/DummyEncryptionRunner.java
deleted file mode 100644
index 5b63dbc..0000000
--- a/EncryptionRunner/src/android/car/encryptionrunner/DummyEncryptionRunner.java
+++ /dev/null
@@ -1,199 +0,0 @@
-/*
- * Copyright (C) 2019 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.car.encryptionrunner;
-
-import android.annotation.IntDef;
-
-import com.android.internal.annotations.VisibleForTesting;
-
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-/**
- * An encryption runner that doesn't actually do encryption. Useful for debugging. Do not use in
- * production environments.
- */
-@VisibleForTesting
-public class DummyEncryptionRunner implements EncryptionRunner {
-
-    private static final String KEY = "key";
-    private static final byte[] DUMMY_MESSAGE = "Dummy Message".getBytes();
-    @VisibleForTesting
-    public static final String INIT = "init";
-    @VisibleForTesting
-    public static final String INIT_RESPONSE = "initResponse";
-    @VisibleForTesting
-    public static final String CLIENT_RESPONSE = "clientResponse";
-    public static final String VERIFICATION_CODE = "1234";
-
-    @Retention(RetentionPolicy.SOURCE)
-    @IntDef({Mode.UNKNOWN, Mode.CLIENT, Mode.SERVER})
-    private @interface Mode {
-
-        int UNKNOWN = 0;
-        int CLIENT = 1;
-        int SERVER = 2;
-    }
-
-    private boolean mIsReconnect;
-    private boolean mInitReconnectVerification;
-    private Key mCurrentDummyKey;
-    @Mode
-    private int mMode;
-    @HandshakeMessage.HandshakeState
-    private int mState;
-
-    @Override
-    public HandshakeMessage initHandshake() {
-        checkRunnerIsNew();
-        mMode = Mode.CLIENT;
-        mState = HandshakeMessage.HandshakeState.IN_PROGRESS;
-        return HandshakeMessage.newBuilder()
-                .setHandshakeState(mState)
-                .setNextMessage(INIT.getBytes())
-                .build();
-    }
-
-    @Override
-    public HandshakeMessage respondToInitRequest(byte[] initializationRequest)
-            throws HandshakeException {
-        checkRunnerIsNew();
-        mMode = Mode.SERVER;
-        if (!new String(initializationRequest).equals(INIT)) {
-            throw new HandshakeException("Unexpected initialization request");
-        }
-        mState = HandshakeMessage.HandshakeState.IN_PROGRESS;
-        return HandshakeMessage.newBuilder()
-                .setHandshakeState(HandshakeMessage.HandshakeState.IN_PROGRESS)
-                .setNextMessage(INIT_RESPONSE.getBytes())
-                .build();
-    }
-
-    private void checkRunnerIsNew() {
-        if (mState != HandshakeMessage.HandshakeState.UNKNOWN) {
-            throw new IllegalStateException("runner already initialized.");
-        }
-    }
-
-    @Override
-    public HandshakeMessage continueHandshake(byte[] response) throws HandshakeException {
-        if (mState != HandshakeMessage.HandshakeState.IN_PROGRESS) {
-            throw new HandshakeException("not waiting for response but got one");
-        }
-        switch (mMode) {
-            case Mode.SERVER:
-                if (!CLIENT_RESPONSE.equals(new String(response))) {
-                    throw new HandshakeException("unexpected response: " + new String(response));
-                }
-                mState = HandshakeMessage.HandshakeState.VERIFICATION_NEEDED;
-                if (mIsReconnect) {
-                    verifyPin();
-                    mState = HandshakeMessage.HandshakeState.RESUMING_SESSION;
-                }
-                return HandshakeMessage.newBuilder()
-                        .setVerificationCode(VERIFICATION_CODE)
-                        .setHandshakeState(mState)
-                        .build();
-            case Mode.CLIENT:
-                if (!INIT_RESPONSE.equals(new String(response))) {
-                    throw new HandshakeException("unexpected response: " + new String(response));
-                }
-                mState = HandshakeMessage.HandshakeState.VERIFICATION_NEEDED;
-                if (mIsReconnect) {
-                    verifyPin();
-                    mState = HandshakeMessage.HandshakeState.RESUMING_SESSION;
-                }
-                return HandshakeMessage.newBuilder()
-                        .setHandshakeState(mState)
-                        .setNextMessage(CLIENT_RESPONSE.getBytes())
-                        .setVerificationCode(VERIFICATION_CODE)
-                        .build();
-            default:
-                throw new IllegalStateException("unexpected role: " + mMode);
-        }
-    }
-
-    @Override
-    public HandshakeMessage authenticateReconnection(byte[] message, byte[] previousKey)
-            throws HandshakeException {
-        mCurrentDummyKey = new DummyKey();
-        // Blindly verify the reconnection because this is a dummy encryption runner.
-        return HandshakeMessage.newBuilder()
-                .setHandshakeState(HandshakeMessage.HandshakeState.FINISHED)
-                .setKey(mCurrentDummyKey)
-                .setNextMessage(mInitReconnectVerification ? null : DUMMY_MESSAGE)
-                .build();
-    }
-
-    @Override
-    public HandshakeMessage initReconnectAuthentication(byte[] previousKey)
-            throws HandshakeException {
-        mInitReconnectVerification = true;
-        mState = HandshakeMessage.HandshakeState.RESUMING_SESSION;
-        return HandshakeMessage.newBuilder()
-                .setHandshakeState(mState)
-                .setNextMessage(DUMMY_MESSAGE)
-                .build();
-    }
-
-    @Override
-    public Key keyOf(byte[] serialized) {
-        return new DummyKey();
-    }
-
-    @Override
-    public HandshakeMessage verifyPin() throws HandshakeException {
-        if (mState != HandshakeMessage.HandshakeState.VERIFICATION_NEEDED) {
-            throw new IllegalStateException("asking to verify pin, state = " + mState);
-        }
-        mState = HandshakeMessage.HandshakeState.FINISHED;
-        return HandshakeMessage.newBuilder().setKey(new DummyKey()).setHandshakeState(
-                mState).build();
-    }
-
-    @Override
-    public void invalidPin() {
-        mState = HandshakeMessage.HandshakeState.INVALID;
-    }
-
-    @Override
-    public void setIsReconnect(boolean isReconnect) {
-        mIsReconnect = isReconnect;
-    }
-
-    private class DummyKey implements Key {
-        @Override
-        public byte[] asBytes() {
-            return KEY.getBytes();
-        }
-
-        @Override
-        public byte[] encryptData(byte[] data) {
-            return data;
-        }
-
-        @Override
-        public byte[] decryptData(byte[] encryptedData) {
-            return encryptedData;
-        }
-
-        @Override
-        public byte[] getUniqueSession() {
-            return KEY.getBytes();
-        }
-    }
-}
diff --git a/EncryptionRunner/src/android/car/encryptionrunner/EncryptionRunner.java b/EncryptionRunner/src/android/car/encryptionrunner/EncryptionRunner.java
deleted file mode 100644
index f0a34b2..0000000
--- a/EncryptionRunner/src/android/car/encryptionrunner/EncryptionRunner.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/*
- * Copyright (C) 2019 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.car.encryptionrunner;
-
-import android.annotation.NonNull;
-
-/**
- * A generalized interface that allows for generating shared secrets as well as encrypting
- * messages.
- *
- * To use this interface:
- *
- * <p>1. As a client.
- *
- * {@code
- * HandshakeMessage initialClientMessage = clientRunner.initHandshake();
- * sendToServer(initialClientMessage.getNextMessage());
- * byte message = getServerResponse();
- * HandshakeMessage message = clientRunner.continueHandshake(message);
- * }
- *
- * <p>If it is a first-time connection,
- *
- * {@code message.getHandshakeState()} should be VERIFICATION_NEEDED, show user the verification
- * code and ask to verify.
- * After user confirmed, {@code HandshakeMessage lastMessage = clientRunner.verifyPin();} otherwise
- * {@code clientRunner.invalidPin(); }
- *
- * Use {@code lastMessage.getKey()} to get the key for encryption.
- *
- * <p>If it is a reconnection,
- *
- * {@code message.getHandshakeState()} should be RESUMING_SESSION, PIN has been verified blindly,
- * send the authentication message over to server, then authenticate the message from server.
- *
- * {@code
- * clientMessage = clientRunner.initReconnectAuthentication(previousKey)
- * sendToServer(clientMessage.getNextMessage());
- * HandshakeMessage lastMessage = clientRunner.authenticateReconnection(previousKey, message)
- * }
- *
- * {@code lastMessage.getHandshakeState()} should be FINISHED if reconnection handshake is done.
- *
- * <p>2. As a server.
- *
- * {@code
- * byte[] initialMessage = getClientMessageBytes();
- * HandshakeMessage message = serverRunner.respondToInitRequest(initialMessage);
- * sendToClient(message.getNextMessage());
- * byte[] clientMessage = getClientResponse();
- * HandshakeMessage message = serverRunner.continueHandshake(clientMessage);}
- *
- * <p>if it is a first-time connection,
- *
- * {@code message.getHandshakeState()} should be VERIFICATION_NEEDED, show user the verification
- * code and ask to verify.
- * After PIN is confirmed, {@code HandshakeMessage lastMessage = serverRunner.verifyPin}, otherwise
- * {@code clientRunner.invalidPin(); }
- * Use {@code lastMessage.getKey()} to get the key for encryption.
- *
- * <p>If it is a reconnection,
- *
- * {@code message.getHandshakeState()} should be RESUMING_SESSION,PIN has been verified blindly,
- * waiting for client message.
- * After client message been received,
- * {@code serverMessage = serverRunner.authenticateReconnection(previousKey, message);
- * sendToClient(serverMessage.getNextMessage());}
- * {@code serverMessage.getHandshakeState()} should be FINISHED if reconnection handshake is done.
- *
- * Also see {@link EncryptionRunnerTest} for examples.
- */
-public interface EncryptionRunner {
-
-    String TAG = "EncryptionRunner";
-
-    /**
-     * Starts an encryption handshake.
-     *
-     * @return A handshake message with information about the handshake that is started.
-     */
-    @NonNull
-    HandshakeMessage initHandshake();
-
-    /**
-     * Starts an encryption handshake where the device that is being communicated with already
-     * initiated the request.
-     *
-     * @param initializationRequest the bytes that the other device sent over.
-     * @return a handshake message with information about the handshake.
-     * @throws HandshakeException if initialization request is invalid.
-     */
-    @NonNull
-    HandshakeMessage respondToInitRequest(@NonNull byte[] initializationRequest)
-            throws HandshakeException;
-
-    /**
-     * Continues a handshake after receiving another response from the connected device.
-     *
-     * @param response the response from the other device.
-     * @return a message that can be used to continue the handshake.
-     * @throws HandshakeException if unexpected bytes in response.
-     */
-    @NonNull
-    HandshakeMessage continueHandshake(@NonNull byte[] response) throws HandshakeException;
-
-    /**
-     * Verifies the pin shown to the user. The result is the next handshake message and will
-     * typically contain an encryption key.
-     *
-     * @throws HandshakeException if not in state to verify pin.
-     */
-    @NonNull
-    HandshakeMessage verifyPin() throws HandshakeException;
-
-    /**
-     * Notifies the encryption runner that the user failed to validate the pin. After calling this
-     * method the runner should not be used, and will throw exceptions.
-     */
-    void invalidPin();
-
-    /**
-     * Verifies the reconnection message.
-     *
-     * <p>The message passed to this method should have been generated by
-     * {@link #initReconnectAuthentication(byte[] previousKey)}.
-     *
-     * <p>If the message is valid, then a {@link HandshakeMessage} will be returned that contains
-     * the encryption key and a handshake message which can be used to verify the other side of the
-     * connection.
-     *
-     * @param previousKey previously stored key.
-     * @param message     message from the client
-     * @return a handshake message with an encryption key if verification succeed.
-     * @throws HandshakeException if the message does not match.
-     */
-    @NonNull
-    HandshakeMessage authenticateReconnection(@NonNull byte[] message, @NonNull byte[] previousKey)
-            throws HandshakeException;
-
-    /**
-     * Initiates the reconnection verification by generating a message that should be sent to the
-     * device that is being reconnected to.
-     *
-     * @param previousKey previously stored key.
-     * @return a handshake message with client's message which will be sent to server.
-     * @throws HandshakeException when get encryption key's unique session fail.
-     */
-    @NonNull
-    HandshakeMessage initReconnectAuthentication(@NonNull byte[] previousKey)
-            throws HandshakeException;
-
-    /**
-     * De-serializes a previously serialized key generated by an instance of this encryption runner.
-     *
-     * @param serialized the serialized bytes of the key.
-     * @return the Key object used for encryption.
-     */
-    @NonNull
-    Key keyOf(@NonNull byte[] serialized);
-
-    /**
-     * Set the signal if it is a reconnection process.
-     *
-     * @param isReconnect {@code true} if it is a reconnect.
-     */
-    void setIsReconnect(boolean isReconnect);
-}
diff --git a/EncryptionRunner/src/android/car/encryptionrunner/EncryptionRunnerFactory.java b/EncryptionRunner/src/android/car/encryptionrunner/EncryptionRunnerFactory.java
deleted file mode 100644
index 156abd8..0000000
--- a/EncryptionRunner/src/android/car/encryptionrunner/EncryptionRunnerFactory.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright (C) 2019 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.car.encryptionrunner;
-
-import com.android.internal.annotations.VisibleForTesting;
-
-/**
- * Factory that creates encryption runner.
- */
-public class EncryptionRunnerFactory {
-
-    private EncryptionRunnerFactory() {
-        // prevent instantiation.
-    }
-
-    /**
-     * Creates a new {@link EncryptionRunner}.
-     */
-    public static EncryptionRunner newRunner() {
-        return new Ukey2EncryptionRunner();
-    }
-
-    /**
-     * Creates a new {@link EncryptionRunner} one that doesn't actually do encryption but is useful
-     * for testing.
-     */
-    @VisibleForTesting
-    public static EncryptionRunner newDummyRunner() {
-        return new DummyEncryptionRunner();
-    }
-}
diff --git a/EncryptionRunner/src/android/car/encryptionrunner/HandshakeException.java b/EncryptionRunner/src/android/car/encryptionrunner/HandshakeException.java
deleted file mode 100644
index 185a21c..0000000
--- a/EncryptionRunner/src/android/car/encryptionrunner/HandshakeException.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright (C) 2019 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.car.encryptionrunner;
-
-/**
- * Exception indicating an error during a Handshake of EncryptionRunner.
- */
-public class HandshakeException extends Exception {
-
-    HandshakeException(String message) {
-        super(message);
-    }
-
-    HandshakeException(Exception e) {
-        super(e);
-    }
-}
diff --git a/EncryptionRunner/src/android/car/encryptionrunner/HandshakeMessage.java b/EncryptionRunner/src/android/car/encryptionrunner/HandshakeMessage.java
deleted file mode 100644
index fa6705d..0000000
--- a/EncryptionRunner/src/android/car/encryptionrunner/HandshakeMessage.java
+++ /dev/null
@@ -1,164 +0,0 @@
-/*
- * Copyright (C) 2019 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.car.encryptionrunner;
-
-import android.annotation.IntDef;
-import android.annotation.Nullable;
-import android.text.TextUtils;
-
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-/**
- * During an {@link EncryptionRunner} handshake process, these are the messages returned as part
- * of each step.
- */
-public class HandshakeMessage {
-
-    /**
-     * States for handshake progress.
-     */
-    @Retention(RetentionPolicy.SOURCE)
-    @IntDef({HandshakeState.UNKNOWN, HandshakeState.IN_PROGRESS, HandshakeState.VERIFICATION_NEEDED,
-            HandshakeState.FINISHED, HandshakeState.INVALID, HandshakeState.RESUMING_SESSION,})
-    public @interface HandshakeState {
-        /**
-         * The initial state, this value is not expected to be returned.
-         */
-        int UNKNOWN = 0;
-        /**
-         * The handshake is in progress.
-         */
-        int IN_PROGRESS = 1;
-        /**
-         * The handshake is complete, but verification of the code is needed.
-         */
-        int VERIFICATION_NEEDED = 2;
-        /**
-         * The handshake is complete.
-         */
-        int FINISHED = 3;
-        /**
-         * The handshake is complete and not successful.
-         */
-        int INVALID = 4;
-        /**
-         * The handshake is complete, but extra verification is needed.
-         */
-        int RESUMING_SESSION = 5;
-    }
-
-    @HandshakeState
-    private final int mHandshakeState;
-    private final Key mKey;
-    private final byte[] mNextMessage;
-    private final String mVerificationCode;
-
-    /**
-     * @return Returns a builder for {@link HandshakeMessage}.
-     */
-    public static Builder newBuilder() {
-        return new Builder();
-    }
-
-    /**
-     * Use the builder;
-     */
-    private HandshakeMessage(
-            @HandshakeState int handshakeState,
-            @Nullable Key key,
-            @Nullable byte[] nextMessage,
-            @Nullable String verificationCode) {
-        mHandshakeState = handshakeState;
-        mKey = key;
-        mNextMessage = nextMessage;
-        mVerificationCode = verificationCode;
-    }
-
-    /**
-     * Returns the next message to send in a handshake.
-     */
-    @Nullable
-    public byte[] getNextMessage() {
-        return mNextMessage == null ? null : mNextMessage.clone();
-    }
-
-    /**
-     * Returns the state of the handshake.
-     */
-    @HandshakeState
-    public int getHandshakeState() {
-        return mHandshakeState;
-    }
-
-    /**
-     * Returns the encryption key that can be used to encrypt data.
-     */
-    @Nullable
-    public Key getKey() {
-        return mKey;
-    }
-
-    /**
-     * Returns a verification code to show to the user.
-     */
-    @Nullable
-    public String getVerificationCode() {
-        return mVerificationCode;
-    }
-
-    static class Builder {
-        @HandshakeState
-        int mHandshakeState;
-        Key mKey;
-        byte[] mNextMessage;
-        String mVerificationCode;
-
-        Builder setHandshakeState(@HandshakeState int handshakeState) {
-            mHandshakeState = handshakeState;
-            return this;
-        }
-
-        Builder setKey(@Nullable Key key) {
-            mKey = key;
-            return this;
-        }
-
-        Builder setNextMessage(@Nullable byte[] nextMessage) {
-            mNextMessage = nextMessage == null ? null : nextMessage.clone();
-            return this;
-        }
-
-        Builder setVerificationCode(@Nullable String verificationCode) {
-            mVerificationCode = verificationCode;
-            return this;
-        }
-
-        HandshakeMessage build() {
-            if (mHandshakeState == HandshakeState.UNKNOWN) {
-                throw new IllegalStateException("must set handshake state before calling build");
-            }
-            if (mHandshakeState == HandshakeState.VERIFICATION_NEEDED
-                    && TextUtils.isEmpty(mVerificationCode)) {
-                throw new IllegalStateException(
-                        "if state is verification needed, must have verification code");
-            }
-            return new HandshakeMessage(mHandshakeState, mKey, mNextMessage, mVerificationCode);
-        }
-
-    }
-}
diff --git a/EncryptionRunner/src/android/car/encryptionrunner/Key.java b/EncryptionRunner/src/android/car/encryptionrunner/Key.java
deleted file mode 100644
index 2e32858..0000000
--- a/EncryptionRunner/src/android/car/encryptionrunner/Key.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright (C) 2019 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.car.encryptionrunner;
-
-import android.annotation.NonNull;
-
-import java.security.NoSuchAlgorithmException;
-import java.security.SignatureException;
-
-/**
- * Represents a serializable encryption key.
- */
-public interface Key {
-    /**
-     * Returns a serialized encryption key.
-     */
-    @NonNull
-    byte[] asBytes();
-
-    /**
-     * Encrypts data using this key.
-     *
-     * @param data the data to be encrypted
-     * @return the encrypted data.
-     */
-    @NonNull
-    byte[] encryptData(@NonNull byte[] data);
-
-    /**
-     * Decrypts data using this key.
-     *
-     * @param encryptedData The encrypted data.
-     * @return decrypted data.
-     * @throws SignatureException if encrypted data is not properly signed.
-     */
-    @NonNull
-    byte[] decryptData(@NonNull byte[] encryptedData) throws SignatureException;
-
-    /**
-     * Returns a cryptographic digest of the key.
-     *
-     * @throws NoSuchAlgorithmException when a unique session can not be created.
-     */
-    @NonNull
-    byte[] getUniqueSession() throws NoSuchAlgorithmException;
-}
diff --git a/EncryptionRunner/src/android/car/encryptionrunner/Ukey2EncryptionRunner.java b/EncryptionRunner/src/android/car/encryptionrunner/Ukey2EncryptionRunner.java
deleted file mode 100644
index 904d5c2..0000000
--- a/EncryptionRunner/src/android/car/encryptionrunner/Ukey2EncryptionRunner.java
+++ /dev/null
@@ -1,397 +0,0 @@
-/*
- * Copyright (C) 2019 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.car.encryptionrunner;
-
-import android.annotation.IntDef;
-import android.annotation.NonNull;
-import android.annotation.Nullable;
-import android.util.Log;
-
-import com.android.internal.annotations.VisibleForTesting;
-
-import com.google.security.cryptauth.lib.securegcm.D2DConnectionContext;
-import com.google.security.cryptauth.lib.securegcm.Ukey2Handshake;
-import com.google.security.cryptauth.lib.securemessage.CryptoOps;
-
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.security.InvalidKeyException;
-import java.security.MessageDigest;
-import java.security.NoSuchAlgorithmException;
-import java.security.SignatureException;
-
-import javax.crypto.spec.SecretKeySpec;
-
-/**
- * An {@link EncryptionRunner} that uses Ukey2 as the underlying implementation.
- */
-public class Ukey2EncryptionRunner implements EncryptionRunner {
-
-    private static final Ukey2Handshake.HandshakeCipher CIPHER =
-            Ukey2Handshake.HandshakeCipher.P256_SHA512;
-    private static final int RESUME_HMAC_LENGTH = 32;
-    private static final byte[] RESUME = "RESUME".getBytes();
-    private static final byte[] SERVER = "SERVER".getBytes();
-    private static final byte[] CLIENT = "CLIENT".getBytes();
-    private static final int AUTH_STRING_LENGTH = 6;
-
-    @IntDef({Mode.UNKNOWN, Mode.CLIENT, Mode.SERVER})
-    private @interface Mode {
-        int UNKNOWN = 0;
-        int CLIENT = 1;
-        int SERVER = 2;
-    }
-
-    private Ukey2Handshake mUkey2client;
-    private boolean mRunnerIsInvalid;
-    private Key mCurrentKey;
-    private byte[] mCurrentUniqueSesion;
-    private byte[] mPrevUniqueSesion;
-    private boolean mIsReconnect;
-    private boolean mInitReconnectionVerification;
-    @Mode
-    private int mMode = Mode.UNKNOWN;
-
-    @Override
-    public HandshakeMessage initHandshake() {
-        checkRunnerIsNew();
-        mMode = Mode.CLIENT;
-        try {
-            mUkey2client = Ukey2Handshake.forInitiator(CIPHER);
-            return HandshakeMessage.newBuilder()
-                    .setHandshakeState(getHandshakeState())
-                    .setNextMessage(mUkey2client.getNextHandshakeMessage())
-                    .build();
-        } catch (com.google.security.cryptauth.lib.securegcm.HandshakeException e) {
-            Log.e(TAG, "unexpected exception", e);
-            throw new RuntimeException(e);
-        }
-
-    }
-
-    @Override
-    public void setIsReconnect(boolean isReconnect) {
-        mIsReconnect = isReconnect;
-    }
-
-    @Override
-    public HandshakeMessage respondToInitRequest(byte[] initializationRequest)
-            throws HandshakeException {
-        checkRunnerIsNew();
-        mMode = Mode.SERVER;
-        try {
-            if (mUkey2client != null) {
-                throw new IllegalStateException("Cannot reuse encryption runners, "
-                        + "this one is already initialized");
-            }
-            mUkey2client = Ukey2Handshake.forResponder(CIPHER);
-            mUkey2client.parseHandshakeMessage(initializationRequest);
-            return HandshakeMessage.newBuilder()
-                    .setHandshakeState(getHandshakeState())
-                    .setNextMessage(mUkey2client.getNextHandshakeMessage())
-                    .build();
-
-        } catch (com.google.security.cryptauth.lib.securegcm.HandshakeException
-                | Ukey2Handshake.AlertException e) {
-            throw new HandshakeException(e);
-        }
-    }
-
-    private void checkRunnerIsNew() {
-        if (mUkey2client != null) {
-            throw new IllegalStateException("This runner is already initialized.");
-        }
-    }
-
-
-    @Override
-    public HandshakeMessage continueHandshake(byte[] response) throws HandshakeException {
-        checkInitialized();
-        try {
-            if (mUkey2client.getHandshakeState() != Ukey2Handshake.State.IN_PROGRESS) {
-                throw new IllegalStateException("handshake is not in progress, state ="
-                        + mUkey2client.getHandshakeState());
-            }
-            mUkey2client.parseHandshakeMessage(response);
-
-            // Not obvious from ukey2 api, but getting the next message can change the state.
-            // calling getNext message might go from in progress to verification needed, on
-            // the assumption that we already send this message to the peer.
-            byte[] nextMessage = null;
-            if (mUkey2client.getHandshakeState() == Ukey2Handshake.State.IN_PROGRESS) {
-                nextMessage = mUkey2client.getNextHandshakeMessage();
-            }
-            String verificationCode = null;
-            if (mUkey2client.getHandshakeState() == Ukey2Handshake.State.VERIFICATION_NEEDED) {
-                // getVerificationString() needs to be called before verifyPin().
-                verificationCode = generateReadablePairingCode(
-                        mUkey2client.getVerificationString(AUTH_STRING_LENGTH));
-                if (mIsReconnect) {
-                    HandshakeMessage handshakeMessage = verifyPin();
-                    return HandshakeMessage.newBuilder()
-                            .setHandshakeState(handshakeMessage.getHandshakeState())
-                            .setNextMessage(nextMessage)
-                            .build();
-                }
-            }
-            return HandshakeMessage.newBuilder()
-                    .setHandshakeState(getHandshakeState())
-                    .setNextMessage(nextMessage)
-                    .setVerificationCode(verificationCode)
-                    .build();
-        } catch (com.google.security.cryptauth.lib.securegcm.HandshakeException
-                | Ukey2Handshake.AlertException e) {
-            throw new HandshakeException(e);
-        }
-    }
-
-    /**
-     * Returns a human-readable pairing code string generated from the verification bytes. Converts
-     * each byte into a digit with a simple modulo.
-     *
-     * <p>This should match the implementation in the iOS and Android client libraries.
-     */
-    @VisibleForTesting
-    String generateReadablePairingCode(byte[] verificationCode) {
-        StringBuilder outString = new StringBuilder();
-        for (byte b : verificationCode) {
-            int unsignedInt = Byte.toUnsignedInt(b);
-            int digit = unsignedInt % 10;
-            outString.append(digit);
-        }
-
-        return outString.toString();
-    }
-
-    private static class UKey2Key implements Key {
-
-        private final D2DConnectionContext mConnectionContext;
-
-        UKey2Key(@NonNull D2DConnectionContext connectionContext) {
-            this.mConnectionContext = connectionContext;
-        }
-
-        @Override
-        public byte[] asBytes() {
-            return mConnectionContext.saveSession();
-        }
-
-        @Override
-        public byte[] encryptData(byte[] data) {
-            return mConnectionContext.encodeMessageToPeer(data);
-        }
-
-        @Override
-        public byte[] decryptData(byte[] encryptedData) throws SignatureException {
-            return mConnectionContext.decodeMessageFromPeer(encryptedData);
-        }
-
-        @Override
-        public byte[] getUniqueSession() throws NoSuchAlgorithmException {
-            return mConnectionContext.getSessionUnique();
-        }
-    }
-
-    @Override
-    public HandshakeMessage verifyPin() throws HandshakeException {
-        checkInitialized();
-        mUkey2client.verifyHandshake();
-        int state = getHandshakeState();
-        try {
-            mCurrentKey = new UKey2Key(mUkey2client.toConnectionContext());
-        } catch (com.google.security.cryptauth.lib.securegcm.HandshakeException e) {
-            throw new HandshakeException(e);
-        }
-        return HandshakeMessage.newBuilder()
-                .setHandshakeState(state)
-                .setKey(mCurrentKey)
-                .build();
-    }
-
-    /**
-     * <p>After getting message from the other device, authenticate the message with the previous
-     * stored key.
-     *
-     * If current device inits the reconnection authentication by calling {@code
-     * initReconnectAuthentication} and sends the message to the other device, the other device
-     * will call {@code authenticateReconnection()} with the received message and send its own
-     * message back to the init device. The init device will call {@code
-     * authenticateReconnection()} on the received message, but do not need to set the next
-     * message.
-     */
-    @Override
-    public HandshakeMessage authenticateReconnection(byte[] message, byte[] previousKey)
-            throws HandshakeException {
-        if (!mIsReconnect) {
-            throw new HandshakeException(
-                    "Reconnection authentication requires setIsReconnect(true)");
-        }
-        if (mCurrentKey == null) {
-            throw new HandshakeException("Current key is null, make sure verifyPin() is called.");
-        }
-        if (message.length != RESUME_HMAC_LENGTH) {
-            mRunnerIsInvalid = true;
-            throw new HandshakeException("Failing because (message.length =" + message.length
-                    + ") is not equal to " + RESUME_HMAC_LENGTH);
-        }
-        try {
-            mCurrentUniqueSesion = mCurrentKey.getUniqueSession();
-            mPrevUniqueSesion = keyOf(previousKey).getUniqueSession();
-        } catch (NoSuchAlgorithmException e) {
-            throw new HandshakeException(e);
-        }
-        switch (mMode) {
-            case Mode.SERVER:
-                if (!MessageDigest.isEqual(
-                        message, computeMAC(mPrevUniqueSesion, mCurrentUniqueSesion, CLIENT))) {
-                    mRunnerIsInvalid = true;
-                    throw new HandshakeException("Reconnection authentication failed.");
-                }
-                return HandshakeMessage.newBuilder()
-                        .setHandshakeState(HandshakeMessage.HandshakeState.FINISHED)
-                        .setKey(mCurrentKey)
-                        .setNextMessage(mInitReconnectionVerification ? null
-                                : computeMAC(mPrevUniqueSesion, mCurrentUniqueSesion, SERVER))
-                        .build();
-            case Mode.CLIENT:
-                if (!MessageDigest.isEqual(
-                        message, computeMAC(mPrevUniqueSesion, mCurrentUniqueSesion, SERVER))) {
-                    mRunnerIsInvalid = true;
-                    throw new HandshakeException("Reconnection authentication failed.");
-                }
-                return HandshakeMessage.newBuilder()
-                        .setHandshakeState(HandshakeMessage.HandshakeState.FINISHED)
-                        .setKey(mCurrentKey)
-                        .setNextMessage(mInitReconnectionVerification ? null
-                                : computeMAC(mPrevUniqueSesion, mCurrentUniqueSesion, CLIENT))
-                        .build();
-            default:
-                throw new IllegalStateException(
-                        "Encountered unexpected role during authenticateReconnection: " + mMode);
-        }
-    }
-
-    /**
-     * Both client and server can call this method to send authentication message to the other
-     * device.
-     */
-    @Override
-    public HandshakeMessage initReconnectAuthentication(byte[] previousKey)
-            throws HandshakeException {
-        if (!mIsReconnect) {
-            throw new HandshakeException(
-                    "Reconnection authentication requires setIsReconnect(true).");
-        }
-        if (mCurrentKey == null) {
-            throw new HandshakeException("Current key is null, make sure verifyPin() is called.");
-        }
-        mInitReconnectionVerification = true;
-        try {
-            mCurrentUniqueSesion = mCurrentKey.getUniqueSession();
-            mPrevUniqueSesion = keyOf(previousKey).getUniqueSession();
-        } catch (NoSuchAlgorithmException e) {
-            throw new HandshakeException(e);
-        }
-        switch (mMode) {
-            case Mode.SERVER:
-                return HandshakeMessage.newBuilder()
-                        .setHandshakeState(HandshakeMessage.HandshakeState.RESUMING_SESSION)
-                        .setNextMessage(computeMAC(mPrevUniqueSesion, mCurrentUniqueSesion, SERVER))
-                        .build();
-            case Mode.CLIENT:
-                return HandshakeMessage.newBuilder()
-                        .setHandshakeState(HandshakeMessage.HandshakeState.RESUMING_SESSION)
-                        .setNextMessage(computeMAC(mPrevUniqueSesion, mCurrentUniqueSesion, CLIENT))
-                        .build();
-            default:
-                throw new IllegalStateException(
-                        "Encountered unexpected role during authenticateReconnection: " + mMode);
-        }
-    }
-
-    @HandshakeMessage.HandshakeState
-    private int getHandshakeState() {
-        checkInitialized();
-        switch (mUkey2client.getHandshakeState()) {
-            case ALREADY_USED:
-            case ERROR:
-                throw new IllegalStateException("unexpected error state");
-            case FINISHED:
-                if (mIsReconnect) {
-                    return HandshakeMessage.HandshakeState.RESUMING_SESSION;
-                }
-                return HandshakeMessage.HandshakeState.FINISHED;
-            case IN_PROGRESS:
-                return HandshakeMessage.HandshakeState.IN_PROGRESS;
-            case VERIFICATION_IN_PROGRESS:
-            case VERIFICATION_NEEDED:
-                return HandshakeMessage.HandshakeState.VERIFICATION_NEEDED;
-            default:
-                throw new IllegalStateException("unexpected handshake state");
-        }
-    }
-
-    @Override
-    public Key keyOf(byte[] serialized) {
-        return new UKey2Key(D2DConnectionContext.fromSavedSession(serialized));
-    }
-
-    @Override
-    public void invalidPin() {
-        mRunnerIsInvalid = true;
-    }
-
-    private UKey2Key checkIsUkey2Key(Key key) {
-        if (!(key instanceof UKey2Key)) {
-            throw new IllegalArgumentException("wrong key type");
-        }
-        return (UKey2Key) key;
-    }
-
-    private void checkInitialized() {
-        if (mUkey2client == null) {
-            throw new IllegalStateException("runner not initialized");
-        }
-        if (mRunnerIsInvalid) {
-            throw new IllegalStateException("runner has been invalidated");
-        }
-    }
-
-    @Nullable
-    private byte[] computeMAC(byte[] previous, byte[] next, byte[] info) {
-        try {
-            SecretKeySpec inputKeyMaterial = new SecretKeySpec(
-                    concatByteArrays(previous, next), "" /* key type is just plain raw bytes */);
-            return CryptoOps.hkdf(inputKeyMaterial, RESUME, info);
-        } catch (NoSuchAlgorithmException | InvalidKeyException e) {
-            // Does not happen in practice
-            Log.e(TAG, "Compute MAC failed");
-            return null;
-        }
-    }
-
-    private static byte[] concatByteArrays(@NonNull byte[] a, @NonNull byte[] b) {
-        ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
-        try {
-            outputStream.write(a);
-            outputStream.write(b);
-        } catch (IOException e) {
-            return new byte[0];
-        }
-        return outputStream.toByteArray();
-    }
-}
diff --git a/PREUPLOAD.cfg b/PREUPLOAD.cfg
index a810f8e..f8d8dac 100644
--- a/PREUPLOAD.cfg
+++ b/PREUPLOAD.cfg
@@ -2,7 +2,7 @@
 checkstyle_hook = ${REPO_ROOT}/prebuilts/checkstyle/checkstyle.py --sha ${PREUPLOAD_COMMIT}
 ktlint_hook = ${REPO_ROOT}/prebuilts/ktlint/ktlint.py -f ${PREUPLOAD_FILES}
 chassis_current_hook = car-ui-lib/tests/apitest/auto-generate-resources.py --sha ${PREUPLOAD_COMMIT} --compare
-chassis_findviewbyid_check = car-ui-lib/findviewbyid-preupload-hook.sh
+
 [Builtin Hooks]
 commit_msg_changeid_field = true
 commit_msg_test_field = true
diff --git a/android-car-lib/Android.mk b/android-car-lib/Android.mk
deleted file mode 100644
index a7cd0b3..0000000
--- a/android-car-lib/Android.mk
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright (C) 2015 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-#
-
-LOCAL_PATH:= $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_AAPT2_ONLY := true
-
-LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := \
-        android-car:android-car.aar
-
-include $(BUILD_MULTI_PREBUILT)
diff --git a/android-car-lib/android-car-lib.mk b/android-car-lib/android-car-lib.mk
deleted file mode 100644
index 419daab..0000000
--- a/android-car-lib/android-car-lib.mk
+++ /dev/null
@@ -1,53 +0,0 @@
-#
-# Include this make file to build your application with car ui.
-# This only applied to app which is not CarActivity based but wants to use car-ui.
-#
-# Make sure to include it after you've set all your desired LOCAL variables.
-# Note that you must explicitly set your LOCAL_RESOURCE_DIR before including this file.
-#
-# For example:
-#
-#   LOCAL_RESOURCE_DIR := \
-#        $(LOCAL_PATH)/res
-#
-#   In your .mk file, include the items in the following order, to ensure the prebuilt
-#   static libraries are included in the correct order.
-#
-#   include vendor/auto/embedded/prebuilts/android-car-lib/car-lib.mk
-#   include $(BUILD_PACKAGE)
-#   include vendor/auto/embedded/prebuilts/android-car-lib/Android.mk
-
-# Check that LOCAL_RESOURCE_DIR is defined
-ifeq (,$(LOCAL_RESOURCE_DIR))
-$(error LOCAL_RESOURCE_DIR must be defined)
-endif
-
-LOCAL_STATIC_JAVA_AAR_LIBRARIES += android-car
-
-# Work around limitations of AAR prebuilts
-LOCAL_RESOURCE_DIR += packages/apps/Car/libs/android-car-lib/res
-
-# Include support-v7-appcompat, if not already included
-ifeq (,$(findstring android-support-v7-appcompat,$(LOCAL_STATIC_JAVA_LIBRARIES)))
-LOCAL_STATIC_ANDROID_LIBRARIES += android-support-v7-appcompat
-endif
-
-# Include support-v7-recyclerview, if not already included
-ifeq (,$(findstring android-support-v7-recyclerview,$(LOCAL_STATIC_JAVA_LIBRARIES)))
-LOCAL_STATIC_ANDROID_LIBRARIES += android-support-v7-recyclerview
-endif
-
-# Include support-v7-cardview, if not already included
-ifeq (,$(findstring android-support-v7-cardview,$(LOCAL_STATIC_JAVA_LIBRARIES)))
-LOCAL_STATIC_ANDROID_LIBRARIES += android-support-v7-cardview
-endif
-
-# Include support-design, if not already included
-ifeq (,$(findstring android-support-design,$(LOCAL_STATIC_JAVA_LIBRARIES)))
-LOCAL_STATIC_ANDROID_LIBRARIES += android-support-design
-endif
-
-# Include support-v4, if not already included
-ifeq (,$(findstring android-support-v4,$(LOCAL_STATIC_JAVA_LIBRARIES)))
-LOCAL_STATIC_ANDROID_LIBRARIES += android-support-v4
-endif
diff --git a/android-car-lib/android-car.aar b/android-car-lib/android-car.aar
deleted file mode 100644
index ff03a9c..0000000
--- a/android-car-lib/android-car.aar
+++ /dev/null
Binary files differ
diff --git a/android-car-lib/car-release.aar b/android-car-lib/car-release.aar
deleted file mode 100644
index ff03a9c..0000000
--- a/android-car-lib/car-release.aar
+++ /dev/null
Binary files differ
diff --git a/android-car-lib/res/anim/fade_in_trans_left.xml b/android-car-lib/res/anim/fade_in_trans_left.xml
deleted file mode 100644
index 2d6bab5..0000000
--- a/android-car-lib/res/anim/fade_in_trans_left.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<set xmlns:android="http://schemas.android.com/apk/res/android"
-     android:duration="@android:integer/config_shortAnimTime">
-    <translate
-        android:interpolator="@android:interpolator/decelerate_quint"
-        android:fromXDelta="-10%p"
-        android:toXDelta="0" />
-
-    <alpha
-        android:fromAlpha="0.2"
-        android:toAlpha="1"
-        android:interpolator="@android:interpolator/decelerate_quint" />
-</set>
diff --git a/android-car-lib/res/anim/fade_in_trans_left_layout_anim.xml b/android-car-lib/res/anim/fade_in_trans_left_layout_anim.xml
deleted file mode 100644
index e7660db..0000000
--- a/android-car-lib/res/anim/fade_in_trans_left_layout_anim.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<layoutAnimation
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:animation="@anim/fade_in_trans_left"
-    android:delay="0%"
-    android:animationOrder="normal" />
diff --git a/android-car-lib/res/anim/fade_in_trans_right.xml b/android-car-lib/res/anim/fade_in_trans_right.xml
deleted file mode 100644
index 5cbeb59..0000000
--- a/android-car-lib/res/anim/fade_in_trans_right.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<set xmlns:android="http://schemas.android.com/apk/res/android"
-     android:duration="@android:integer/config_shortAnimTime">
-    <translate
-        android:interpolator="@android:interpolator/decelerate_quint"
-        android:fromXDelta="10%p"
-        android:toXDelta="0" />
-
-    <alpha
-        android:fromAlpha="0.2"
-        android:toAlpha="1"
-        android:interpolator="@android:interpolator/decelerate_quint" />
-</set>
diff --git a/android-car-lib/res/anim/fade_in_trans_right_layout_anim.xml b/android-car-lib/res/anim/fade_in_trans_right_layout_anim.xml
deleted file mode 100644
index b76de23..0000000
--- a/android-car-lib/res/anim/fade_in_trans_right_layout_anim.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<layoutAnimation
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:animation="@anim/fade_in_trans_right"
-    android:delay="0%"
-    android:animationOrder="normal" />
diff --git a/android-car-lib/res/anim/lock_out_message_bar.xml b/android-car-lib/res/anim/lock_out_message_bar.xml
deleted file mode 100644
index e70a4ef..0000000
--- a/android-car-lib/res/anim/lock_out_message_bar.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<set
-    xmlns:android="http://schemas.android.com/apk/res/android" >
-    <objectAnimator
-        android:duration="@integer/speed_bump_lock_out_duration_ms"
-        android:propertyName="pathData"
-        android:valueFrom="M 96.5,48.5 c 0.0,26.5096740723 -21.4903259277,48.0 -48.0,48.0 c 0.0,0.0 -384.0,0.0 -384.0,0.0 c -26.5096740723,0.0 -48.0,-21.4903259277 -48.0,-48.0 c 0.0,-26.5096740723 21.4903259277,-48.0 48.0,-48.0 c 0.0,0.0 384.0,0.0 384.0,0.0 c 26.5096740723,0.0 48.0,21.4903411865 48.0,48.0 Z"
-        android:valueTo="M 480.5,48.5 c 0.0,26.5096740723 -21.4903259277,48.0 -48.0,48.0 c 0.0,0.0 -384.0,0.0 -384.0,0.0 c -26.5096740723,0.0 -48.0,-21.4903259277 -48.0,-48.0 c 0.0,-26.5096740723 21.4903259277,-48.0 48.0,-48.0 c 0.0,0.0 384.0,0.0 384.0,0.0 c 26.5096740723,0.0 48.0,21.4903259277 48.0,48.0 Z"
-        android:valueType="pathType"
-        android:interpolator="@interpolator/speed_bump_interpolator" />
-</set>
diff --git a/android-car-lib/res/anim/lock_out_message_bg_color_change.xml b/android-car-lib/res/anim/lock_out_message_bg_color_change.xml
deleted file mode 100644
index 6d56ff4..0000000
--- a/android-car-lib/res/anim/lock_out_message_bg_color_change.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<set
-    xmlns:android="http://schemas.android.com/apk/res/android" >
-    <objectAnimator
-        android:startOffset="@integer/speed_bump_lock_out_color_change_start_delay_ms"
-        android:duration="@integer/speed_bump_lock_out_color_change_ms"
-        android:propertyName="fillColor"
-        android:valueFrom="#FF029AE5"
-        android:valueTo="#FF26994B"
-        android:interpolator="@android:interpolator/linear" />
-</set>
diff --git a/android-car-lib/res/anim/lock_out_message_in.xml b/android-car-lib/res/anim/lock_out_message_in.xml
deleted file mode 100644
index aae3d17..0000000
--- a/android-car-lib/res/anim/lock_out_message_in.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<set xmlns:android="http://schemas.android.com/apk/res/android">
-    <alpha
-        android:fromAlpha="0"
-        android:toAlpha="1.0"
-        android:fillEnabled="true"
-        android:fillBefore="true"
-        android:fillAfter="true"
-        android:interpolator="@android:interpolator/accelerate_quint"
-        android:duration="@integer/speed_bump_fade_duration_ms"/>
-    <translate
-        android:fromYDelta="100%"
-        android:toYDelta="0%"
-        android:fillEnabled="true"
-        android:fillBefore="true"
-        android:fillAfter="true"
-        android:interpolator="@android:interpolator/linear_out_slow_in"
-        android:duration="@integer/speed_bump_translate_y_duration_ms"/>
-</set>
diff --git a/android-car-lib/res/anim/lock_out_message_out.xml b/android-car-lib/res/anim/lock_out_message_out.xml
deleted file mode 100644
index 3044d0a..0000000
--- a/android-car-lib/res/anim/lock_out_message_out.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<set xmlns:android="http://schemas.android.com/apk/res/android">
-    <alpha
-        android:fromAlpha="1.0"
-        android:toAlpha="0"
-        android:fillEnabled="true"
-        android:fillBefore="true"
-        android:fillAfter="true"
-        android:interpolator="@android:interpolator/accelerate_quint"
-        android:duration="@integer/speed_bump_fade_duration_ms"/>
-</set>
diff --git a/android-car-lib/res/drawable/car_action_button_activated_ring_foreground.xml b/android-car-lib/res/drawable/car_action_button_activated_ring_foreground.xml
deleted file mode 100644
index cf9570b..0000000
--- a/android-car-lib/res/drawable/car_action_button_activated_ring_foreground.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<selector
-    xmlns:android="http://schemas.android.com/apk/res/android">
-  <item
-      android:state_activated="true">
-    <shape
-        xmlns:android="http://schemas.android.com/apk/res/android"
-        android:shape="oval">
-      <stroke
-          android:color="@color/car_tint"
-          android:width="@dimen/car_action_bar_activation_ring_stroke_width">
-      </stroke>
-      <size
-          android:height="@dimen/car_action_bar_activation_ring_radius"
-          android:width="@dimen/car_action_bar_activation_ring_radius"/>
-    </shape>
-  </item>
-  <!--Yes, this is a load-bearing invisible circle.-->
-  <!--Android doesn't remeasure foregrounds when state_activated changes, -->
-  <!--so we need a default drawable with the same size as the one we actually want to draw-->
-  <item>
-    <shape
-        xmlns:android="http://schemas.android.com/apk/res/android"
-        android:shape="oval">
-      <stroke
-          android:color="#00000000"
-          android:width="@dimen/car_action_bar_activation_ring_stroke_width">
-      </stroke>
-      <size
-          android:height="@dimen/car_action_bar_activation_ring_radius"
-          android:width="@dimen/car_action_bar_activation_ring_radius"/>
-    </shape>
-  </item>
-</selector>
diff --git a/android-car-lib/res/drawable/car_action_button_background.xml b/android-car-lib/res/drawable/car_action_button_background.xml
deleted file mode 100644
index 27e97e3..0000000
--- a/android-car-lib/res/drawable/car_action_button_background.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<inset xmlns:android="http://schemas.android.com/apk/res/android"
-    android:inset="@dimen/car_action_button_ripple_inset" >
-    <ripple android:color="@color/car_card_ripple_background" />
-</inset>
diff --git a/android-car-lib/res/drawable/car_borderless_button_text_color.xml b/android-car-lib/res/drawable/car_borderless_button_text_color.xml
deleted file mode 100644
index 27f79f0..0000000
--- a/android-car-lib/res/drawable/car_borderless_button_text_color.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-    Copyright (C) 2017 The Android Open Source Project
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<!-- Default text colors for car buttons when enabled/disabled. -->
-<selector xmlns:android="http://schemas.android.com/apk/res/android">
-    <item android:color="@color/car_grey_700" android:state_enabled="false"/>
-    <item android:color="?android:attr/colorButtonNormal"/>
-</selector>
diff --git a/android-car-lib/res/drawable/car_button_background.xml b/android-car-lib/res/drawable/car_button_background.xml
deleted file mode 100644
index 58aa739..0000000
--- a/android-car-lib/res/drawable/car_button_background.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-    Copyright (C) 2017 The Android Open Source Project
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<!-- Default background styles for car buttons when enabled/disabled. -->
-<selector xmlns:android="http://schemas.android.com/apk/res/android">
-    <item android:state_enabled="false">
-        <shape android:shape="rectangle">
-            <corners android:radius="@dimen/car_button_radius"/>
-            <solid android:color="@color/car_grey_300"/>
-        </shape>
-    </item>
-    <item>
-        <shape android:shape="rectangle">
-            <corners android:radius="@dimen/car_button_radius"/>
-            <solid android:color="?android:attr/colorButtonNormal"/>
-        </shape>
-    </item>
-</selector>
diff --git a/android-car-lib/res/drawable/car_button_text_color.xml b/android-car-lib/res/drawable/car_button_text_color.xml
deleted file mode 100644
index bb8c681..0000000
--- a/android-car-lib/res/drawable/car_button_text_color.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-    Copyright (C) 2017 The Android Open Source Project
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<!-- Default text colors for car buttons when enabled/disabled. -->
-<selector xmlns:android="http://schemas.android.com/apk/res/android">
-    <item android:color="@color/car_grey_700" android:state_enabled="false"/>
-    <item android:color="@color/car_action1"/>
-</selector>
diff --git a/android-car-lib/res/drawable/car_card_ripple_background.xml b/android-car-lib/res/drawable/car_card_ripple_background.xml
deleted file mode 100644
index ca20e0f..0000000
--- a/android-car-lib/res/drawable/car_card_ripple_background.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2017 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License.
-  -->
-<ripple
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:color="@color/car_card_ripple_background">
-    <item
-        android:id="@android:id/mask"
-        android:drawable="@android:color/white" />
-</ripple>
diff --git a/android-car-lib/res/drawable/car_card_ripple_background_day.xml b/android-car-lib/res/drawable/car_card_ripple_background_day.xml
deleted file mode 100644
index 880ff7a..0000000
--- a/android-car-lib/res/drawable/car_card_ripple_background_day.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2017 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License.
-  -->
-<ripple
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:color="@color/car_card_ripple_background_dark">
-    <item
-        android:id="@android:id/mask"
-        android:drawable="@android:color/white" />
-</ripple>
diff --git a/android-car-lib/res/drawable/car_card_ripple_background_inverse.xml b/android-car-lib/res/drawable/car_card_ripple_background_inverse.xml
deleted file mode 100644
index e063e2c..0000000
--- a/android-car-lib/res/drawable/car_card_ripple_background_inverse.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2017 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License.
-  -->
-<ripple
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:color="@color/car_card_ripple_background_inverse" >
-    <item
-        android:id="@android:id/mask"
-        android:drawable="@android:color/white" />
-</ripple>
diff --git a/android-car-lib/res/drawable/car_card_ripple_background_night.xml b/android-car-lib/res/drawable/car_card_ripple_background_night.xml
deleted file mode 100644
index 5d4f2c6..0000000
--- a/android-car-lib/res/drawable/car_card_ripple_background_night.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2017 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License.
-  -->
-<ripple
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:color="@color/car_card_ripple_background_light">
-    <item
-        android:id="@android:id/mask"
-        android:drawable="@android:color/white" />
-</ripple>
diff --git a/android-car-lib/res/drawable/car_card_rounded_background.xml b/android-car-lib/res/drawable/car_card_rounded_background.xml
deleted file mode 100644
index 594705b..0000000
--- a/android-car-lib/res/drawable/car_card_rounded_background.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2017 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License.
-  -->
-<shape xmlns:android="http://schemas.android.com/apk/res/android">
-    <solid android:color="@color/car_card"/>
-    <corners
-        android:radius="@dimen/car_radius_3"/>
-</shape>
\ No newline at end of file
diff --git a/android-car-lib/res/drawable/car_card_rounded_bottom_background.xml b/android-car-lib/res/drawable/car_card_rounded_bottom_background.xml
deleted file mode 100644
index 35dba13..0000000
--- a/android-car-lib/res/drawable/car_card_rounded_bottom_background.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2017 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License.
-  -->
-<shape xmlns:android="http://schemas.android.com/apk/res/android">
-    <solid android:color="@color/car_card"/>
-    <corners
-        android:bottomRightRadius="@dimen/car_radius_3"
-        android:bottomLeftRadius="@dimen/car_radius_3"/>
-</shape>
\ No newline at end of file
diff --git a/android-car-lib/res/drawable/car_card_rounded_top_background.xml b/android-car-lib/res/drawable/car_card_rounded_top_background.xml
deleted file mode 100644
index dfb5622..0000000
--- a/android-car-lib/res/drawable/car_card_rounded_top_background.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2017 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License.
-  -->
-<shape xmlns:android="http://schemas.android.com/apk/res/android">
-    <solid android:color="@color/car_card"/>
-    <corners
-        android:topRightRadius="@dimen/car_radius_3"
-        android:topLeftRadius="@dimen/car_radius_3"/>
-</shape>
\ No newline at end of file
diff --git a/android-car-lib/res/drawable/car_drawer_list_item_background.xml b/android-car-lib/res/drawable/car_drawer_list_item_background.xml
deleted file mode 100644
index c5fc36b..0000000
--- a/android-car-lib/res/drawable/car_drawer_list_item_background.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2017 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License.
-  -->
-<ripple xmlns:android="http://schemas.android.com/apk/res/android"
-    android:color="@color/car_card_ripple_background">
-    <item android:id="@android:id/mask">
-        <color android:color="#ffffffff" />
-    </item>
-</ripple>
diff --git a/android-car-lib/res/drawable/car_list_divider.xml b/android-car-lib/res/drawable/car_list_divider.xml
deleted file mode 100644
index 14a5ce1..0000000
--- a/android-car-lib/res/drawable/car_list_divider.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2014 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<!-- Drawable of dividers used in lists -->
-<shape xmlns:android="http://schemas.android.com/apk/res/android">
-    <size android:height="@dimen/car_list_divider_height"/>
-    <solid android:color="@color/car_list_divider"/>
-</shape>
\ No newline at end of file
diff --git a/android-car-lib/res/drawable/car_list_divider_dark.xml b/android-car-lib/res/drawable/car_list_divider_dark.xml
deleted file mode 100644
index 4760623..0000000
--- a/android-car-lib/res/drawable/car_list_divider_dark.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<!-- Drawable of dividers used in lists -->
-<shape xmlns:android="http://schemas.android.com/apk/res/android">
-  <size android:height="@dimen/car_list_divider_height"/>
-  <solid android:color="@color/car_list_divider_dark"/>
-</shape>
diff --git a/android-car-lib/res/drawable/car_list_divider_light.xml b/android-car-lib/res/drawable/car_list_divider_light.xml
deleted file mode 100644
index 07b52dd..0000000
--- a/android-car-lib/res/drawable/car_list_divider_light.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<!-- Drawable of dividers used in lists -->
-<shape xmlns:android="http://schemas.android.com/apk/res/android">
-  <size android:height="@dimen/car_list_divider_height"/>
-  <solid android:color="@color/car_list_divider_light"/>
-</shape>
diff --git a/android-car-lib/res/drawable/car_scrollbar_thumb.xml b/android-car-lib/res/drawable/car_scrollbar_thumb.xml
deleted file mode 100644
index 42aaebf..0000000
--- a/android-car-lib/res/drawable/car_scrollbar_thumb.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2018 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License
-  -->
-
-<shape
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:shape="rectangle">
-    <solid android:color="@color/car_scrollbar_thumb" />
-    <corners android:radius="@dimen/car_radius_5"/>
-</shape>
diff --git a/android-car-lib/res/drawable/car_seekbar_thumb.xml b/android-car-lib/res/drawable/car_seekbar_thumb.xml
deleted file mode 100644
index a5c4910..0000000
--- a/android-car-lib/res/drawable/car_seekbar_thumb.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2018 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License
-  -->
-
-<shape
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:shape="oval">
-    <solid android:color="@color/car_accent" />
-    <size
-        android:width="@dimen/car_seekbar_thumb_size"
-        android:height="@dimen/car_seekbar_thumb_size" />
-</shape>
\ No newline at end of file
diff --git a/android-car-lib/res/drawable/car_seekbar_track.xml b/android-car-lib/res/drawable/car_seekbar_track.xml
deleted file mode 100644
index 05700c2..0000000
--- a/android-car-lib/res/drawable/car_seekbar_track.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2018 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License
-  -->
-
-<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
-    <item android:id="@android:id/background">
-        <shape android:shape="line">
-            <stroke
-                android:width="@dimen/car_seekbar_height"
-                android:color="@color/car_seekbar_track_background" />
-        </shape>
-    </item>
-    <item android:id="@android:id/progress">
-        <clip>
-            <shape android:shape="line">
-                <stroke
-                    android:width="@dimen/car_seekbar_height"
-                    android:color="@color/car_accent" />
-            </shape>
-        </clip>
-    </item>
-</layer-list>
\ No newline at end of file
diff --git a/android-car-lib/res/drawable/ic_down.xml b/android-car-lib/res/drawable/ic_down.xml
deleted file mode 100644
index cd486c1..0000000
--- a/android-car-lib/res/drawable/ic_down.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2018 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License.
-  -->
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-        android:width="76dp"
-        android:height="76dp"
-        android:viewportWidth="76.0"
-        android:viewportHeight="76.0">
-    <path
-        android:pathData="M38,0.96C17.01,0.96 0,17.75 0,38.47C0,59.18 17.01,75.97 38,75.97C58.99,75.97 76,59.18 76,38.47C76,17.75 58.99,0.96 38,0.96M38,3.3C57.64,3.3 73.62,19.08 73.62,38.47C73.62,57.85 57.64,73.63 38,73.63C18.36,73.63 2.38,57.86 2.38,38.47C2.38,19.08 18.36,3.3 38,3.3"
-        android:strokeColor="#00000000"
-        android:fillColor="#212121"
-        android:strokeWidth="1"/>
-    <path
-        android:pathData="M26.63,31.09l11.37,11.08l11.37,-11.08l3.5,3.42l-14.87,14.5l-14.87,-14.5z"
-        android:strokeColor="#00000000"
-        android:fillColor="#212121"
-        android:strokeWidth="1"/>
-</vector>
diff --git a/android-car-lib/res/drawable/ic_list_view_disable.xml b/android-car-lib/res/drawable/ic_list_view_disable.xml
deleted file mode 100644
index 8649423..0000000
--- a/android-car-lib/res/drawable/ic_list_view_disable.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-        android:width="176dp"
-        android:height="176dp"
-        android:viewportWidth="176.0"
-        android:viewportHeight="176.0">
-    <path
-        android:pathData="M88.99,55.55l15.71,15.71l46.13,0l0,-15.71z"
-        android:fillColor="#212121"/>
-    <path
-        android:pathData="M25.19,119.06h66.5v15.71h-66.5z"
-        android:fillColor="#212121"/>
-    <path
-        android:pathData="M114.58,103.35l-15.71,-15.71l-0.12,0l-16.38,-16.38l0.12,0l-15.71,-15.71l-0.12,0l-30.29,-30.29l-11.11,11.11l19.19,19.18l-19.28,0l0,15.71l34.98,0l16.39,16.38l-51.37,0l0,15.71l67.08,0l47.38,47.39l11.11,-11.11l-36.28,-36.28z"
-        android:fillColor="#212121"/>
-    <path
-        android:pathData="M136.79,103.35l14.04,0l0,-15.71l-29.74,0z"
-        android:fillColor="#212121"/>
-</vector>
diff --git a/android-car-lib/res/drawable/ic_overflow.xml b/android-car-lib/res/drawable/ic_overflow.xml
deleted file mode 100644
index eda306c..0000000
--- a/android-car-lib/res/drawable/ic_overflow.xml
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="56dp"
-    android:height="56dp"
-    android:viewportWidth="24"
-    android:viewportHeight="24">
-
-    <group
-            android:translateX="-0.750000"
-            android:translateY="-0.750000">
-        <path
-            android:strokeWidth="1"
-            android:pathData="M 0.75 24.75 L 24.75 24.75 L 24.75 0.75 L 0.75 0.75 Z" />
-        <path
-            android:fillColor="#000000"
-            android:strokeWidth="1"
-            android:pathData="M12.75,10.1666667 C13.4604167,10.1666667 14.0416667,9.58541667 14.0416667,8.875
-C14.0416667,8.16458333 13.4604167,7.58333333 12.75,7.58333333
-C12.0395833,7.58333333 11.4583333,8.16458333 11.4583333,8.875
-C11.4583333,9.58541667 12.0395833,10.1666667 12.75,10.1666667 L12.75,10.1666667
-Z M12.75,11.4583333 C12.0395833,11.4583333 11.4583333,12.0395833
-11.4583333,12.75 C11.4583333,13.4604167 12.0395833,14.0416667 12.75,14.0416667
-C13.4604167,14.0416667 14.0416667,13.4604167 14.0416667,12.75
-C14.0416667,12.0395833 13.4604167,11.4583333 12.75,11.4583333 L12.75,11.4583333
-Z M12.75,15.3333333 C12.0395833,15.3333333 11.4583333,15.9145833
-11.4583333,16.625 C11.4583333,17.3354167 12.0395833,17.9166667 12.75,17.9166667
-C13.4604167,17.9166667 14.0416667,17.3354167 14.0416667,16.625
-C14.0416667,15.9145833 13.4604167,15.3333333 12.75,15.3333333 L12.75,15.3333333
-Z" />
-    </group>
-</vector>
diff --git a/android-car-lib/res/drawable/ic_up.xml b/android-car-lib/res/drawable/ic_up.xml
deleted file mode 100644
index ec18410..0000000
--- a/android-car-lib/res/drawable/ic_up.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2018 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License.
-  -->
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
-        android:width="76dp"
-        android:height="76dp"
-        android:viewportWidth="76.0"
-        android:viewportHeight="76.0">
-    <path
-        android:pathData="M38,75.04C58.99,75.04 76,58.27 76,37.57C76,16.88 58.99,0.11 38,0.11C17.01,0.11 0,16.88 0,37.57C0,58.27 17.01,75.04 38,75.04M38,72.7C18.36,72.7 2.38,56.94 2.38,37.57C2.38,18.21 18.36,2.45 38,2.45C57.64,2.45 73.62,18.21 73.62,37.57C73.62,56.94 57.64,72.7 38,72.7"
-        android:strokeColor="#00000000"
-        android:fillColor="#212121"
-        android:strokeWidth="1"/>
-    <path
-        android:pathData="M49.37,44.9l-11.37,-11.08l-11.37,11.08l-3.5,-3.42l14.87,-14.5l14.87,14.5z"
-        android:strokeColor="#00000000"
-        android:fillColor="#212121"
-        android:strokeWidth="1"/>
-</vector>
diff --git a/android-car-lib/res/drawable/lock_out_message_animation.xml b/android-car-lib/res/drawable/lock_out_message_animation.xml
deleted file mode 100644
index 42cea41..0000000
--- a/android-car-lib/res/drawable/lock_out_message_animation.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<animated-vector
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:drawable="@drawable/lock_out_message_background" >
-    <target
-        android:name="bar_mask"
-        android:animation="@anim/lock_out_message_bar" />
-    <target
-        android:name="bar_path"
-        android:animation="@anim/lock_out_message_bg_color_change" />
-</animated-vector>
diff --git a/android-car-lib/res/drawable/lock_out_message_background.xml b/android-car-lib/res/drawable/lock_out_message_background.xml
deleted file mode 100644
index 26b559b..0000000
--- a/android-car-lib/res/drawable/lock_out_message_background.xml
+++ /dev/null
@@ -1,62 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<vector
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="480dp"
-    android:viewportWidth="480"
-    android:height="96dp"
-    android:viewportHeight="96" >
-    <group
-        android:name="base"
-        android:translateX="240"
-        android:translateY="48"
-        android:scaleX="0.994"
-        android:scaleY="0.994" >
-        <group
-            android:name="base_pivot"
-            android:translateX="-240"
-            android:translateY="-47" >
-            <group
-                android:name="base"
-                android:scaleY="0.99" >
-                <path
-                    android:name="base_path"
-                    android:pathData="M 480.0,48.0 c 0.0,26.5096740723 -21.4903259277,48.0 -48.0,48.0 c 0.0,0.0 -384.0,0.0 -384.0,0.0 c -26.5096740723,0.0 -48.0,-21.4903259277 -48.0,-48.0 c 0.0,-26.5096740723 21.4903259277,-48.0 48.0,-48.0 c 0.0,0.0 384.0,0.0 384.0,0.0 c 26.5096740723,0.0 48.0,21.4903259277 48.0,48.0 Z"
-                    android:fillColor="@color/speed_bump_background" />
-            </group>
-        </group>
-    </group>
-    <group
-        android:name="bar"
-        android:translateX="240"
-        android:translateY="48" >
-        <group
-            android:name="bar_pivot"
-            android:translateX="-240"
-            android:translateY="-48" >
-            <clip-path
-                android:name="bar_mask"
-                android:pathData="M 96.5,48.5 c 0.0,26.5096740723 -21.4903259277,48.0 -48.0,48.0 c 0.0,0.0 -384.0,0.0 -384.0,0.0 c -26.5096740723,0.0 -48.0,-21.4903259277 -48.0,-48.0 c 0.0,-26.5096740723 21.4903259277,-48.0 48.0,-48.0 c 0.0,0.0 384.0,0.0 384.0,0.0 c 26.5096740723,0.0 48.0,21.4903411865 48.0,48.0 Z" />
-            <group
-                android:name="base" >
-                <path
-                    android:name="bar_path"
-                    android:pathData="M 480.0,48.0 c 0.0,26.5096740723 -21.4903259277,48.0 -48.0,48.0 c 0.0,0.0 -384.0,0.0 -384.0,0.0 c -26.5096740723,0.0 -48.0,-21.4903259277 -48.0,-48.0 c 0.0,-26.5096740723 21.4903259277,-48.0 48.0,-48.0 c 0.0,0.0 384.0,0.0 384.0,0.0 c 26.5096740723,0.0 48.0,21.4903259277 48.0,48.0 Z"
-                    android:fillColor="#FF029AE5" />
-            </group>
-        </group>
-    </group>
-</vector>
diff --git a/android-car-lib/res/drawable/speed_bump_scrim.xml b/android-car-lib/res/drawable/speed_bump_scrim.xml
deleted file mode 100644
index aacea49..0000000
--- a/android-car-lib/res/drawable/speed_bump_scrim.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<shape xmlns:android="http://schemas.android.com/apk/res/android"
-       android:shape="rectangle" >
-    <gradient
-        android:type="linear"
-        android:startColor="@android:color/transparent"
-        android:endColor="#8d000000"
-        android:angle="270"/>
-</shape>
diff --git a/android-car-lib/res/interpolator/speed_bump_interpolator.xml b/android-car-lib/res/interpolator/speed_bump_interpolator.xml
deleted file mode 100644
index ec7e694..0000000
--- a/android-car-lib/res/interpolator/speed_bump_interpolator.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<pathInterpolator
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:pathData="M 0.0,0.0 c 1.0,0.535553908162 0.961348094524,0.999999995867 1.0,1.0" />
diff --git a/android-car-lib/res/layout/action_bar.xml b/android-car-lib/res/layout/action_bar.xml
deleted file mode 100644
index 431a2a8..0000000
--- a/android-car-lib/res/layout/action_bar.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<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/action_bar_wrapper"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:elevation="@dimen/car_action_bar_elevation"
-    app:cardCornerRadius="@dimen/car_radius_3">
-
-    <LinearLayout
-        android:id="@+id/rows_container"
-        android:orientation="vertical"
-        android:animateLayoutChanges="true"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content">
-
-        <LinearLayout
-            android:orientation="horizontal"
-            android:visibility="gone"
-            android:clipChildren="false"
-            android:layout_width="match_parent"
-            android:layout_height="@dimen/car_action_bar_height">
-        </LinearLayout>
-
-        <LinearLayout
-            android:orientation="horizontal"
-            android:clipChildren="false"
-            android:layout_width="match_parent"
-            android:layout_height="@dimen/car_action_bar_height">
-        </LinearLayout>
-
-    </LinearLayout>
-
-</androidx.cardview.widget.CardView>
\ No newline at end of file
diff --git a/android-car-lib/res/layout/action_bar_button.xml b/android-car-lib/res/layout/action_bar_button.xml
deleted file mode 100644
index e9d2370..0000000
--- a/android-car-lib/res/layout/action_bar_button.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<ImageButton style="@style/Widget.Car.Button.ActionBar" />
diff --git a/android-car-lib/res/layout/action_bar_slot.xml b/android-car-lib/res/layout/action_bar_slot.xml
deleted file mode 100644
index 804e356..0000000
--- a/android-car-lib/res/layout/action_bar_slot.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<FrameLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="0dp"
-    android:layout_height="@dimen/car_action_bar_button_height"
-    android:layout_weight="1"
-    android:visibility="visible"
-    android:foregroundGravity="center"
-    android:clipChildren="false"
-    android:foreground="@drawable/car_action_button_activated_ring_foreground">
-</FrameLayout>
\ No newline at end of file
diff --git a/android-car-lib/res/layout/car_alert_dialog.xml b/android-car-lib/res/layout/car_alert_dialog.xml
deleted file mode 100644
index d9b52a5..0000000
--- a/android-car-lib/res/layout/car_alert_dialog.xml
+++ /dev/null
@@ -1,83 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-
-<!-- Note: the width is 0dp because ColumnCardView will automatically set a width based
-     on the number of columns it should take up. See ColumnCardView for more details. -->
-<androidx.car.widget.ColumnCardView
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:app="http://schemas.android.com/apk/res-auto"
-    android:layout_gravity="center"
-    android:layout_width="0dp"
-    android:layout_height="wrap_content"
-    android:elevation="@dimen/car_dialog_elevation"
-    app:cardBackgroundColor="?attr/dialogBackgroundColor"
-    app:cardCornerRadius="@dimen/car_radius_3">
-
-    <LinearLayout
-        android:id="@+id/content_view"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:layout_marginStart="@dimen/car_keyline_1"
-        android:layout_marginEnd="@dimen/car_keyline_1"
-        android:paddingTop="@dimen/car_padding_4"
-        android:paddingBottom="@dimen/car_padding_4"
-        android:orientation="vertical">
-
-        <TextView
-            android:id="@+id/title"
-            android:layout_width="wrap_content"
-            android:layout_height="@dimen/car_dialog_header_height"
-            android:gravity="center_vertical|start"
-            android:visibility="gone"
-            style="?attr/dialogTitleStyle" />
-
-        <TextView
-            android:id="@+id/body"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:visibility="gone"
-            style="?attr/dialogBodyStyle" />
-
-        <LinearLayout
-            android:id="@+id/button_panel"
-            android:layout_width="match_parent"
-            android:layout_height="@dimen/car_dialog_action_bar_height"
-            android:layout_marginTop="@dimen/car_padding_2"
-            android:gravity="center_vertical"
-            android:orientation="horizontal"
-            android:visibility="gone">
-
-            <Button
-                android:id="@+id/positive_button"
-                android:layout_marginEnd="@dimen/car_padding_4"
-                android:layout_width="wrap_content"
-                android:minWidth="0dp"
-                android:padding="0dp"
-                android:textColor="@color/car_accent"
-                android:visibility="gone"
-                style="?attr/dialogButtonStyle" />
-
-            <Button
-                android:id="@+id/negative_button"
-                android:layout_width="wrap_content"
-                android:minWidth="0dp"
-                android:padding="0dp"
-                android:textColor="@color/car_accent"
-                android:visibility="gone"
-                style="?attr/dialogButtonStyle" />
-        </LinearLayout>
-    </LinearLayout>
-</androidx.car.widget.ColumnCardView>
diff --git a/android-car-lib/res/layout/car_drawer.xml b/android-car-lib/res/layout/car_drawer.xml
deleted file mode 100644
index 0629862..0000000
--- a/android-car-lib/res/layout/car_drawer.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<androidx.car.moderator.SpeedBumpView
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:app="http://schemas.android.com/apk/res-auto"
-    android:id="@+id/drawer_content"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:layout_marginEnd="@dimen/car_drawer_margin_end"
-    android:background="?attr/drawerBackgroundColor"
-    android:paddingTop="@dimen/car_app_bar_height" >
-
-  <androidx.car.widget.PagedListView
-      android:id="@+id/drawer_list"
-      android:layout_width="match_parent"
-      android:layout_height="match_parent"
-      app:listEndMargin="@dimen/car_drawer_margin_end"
-      app:gutter="start"
-      style="?attr/drawerListStyle" />
-
-  <ProgressBar
-      android:id="@+id/drawer_progress"
-      android:layout_width="@dimen/car_drawer_progress_bar_size"
-      android:layout_height="@dimen/car_drawer_progress_bar_size"
-      android:layout_gravity="center"
-      android:indeterminate="true"
-      android:visibility="gone" />
-</androidx.car.moderator.SpeedBumpView>
diff --git a/android-car-lib/res/layout/car_drawer_activity.xml b/android-car-lib/res/layout/car_drawer_activity.xml
deleted file mode 100644
index 1648d09..0000000
--- a/android-car-lib/res/layout/car_drawer_activity.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<androidx.coordinatorlayout.widget.CoordinatorLayout
-    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">
-
-    <androidx.drawerlayout.widget.DrawerLayout
-        android:id="@+id/drawer_layout"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent">
-
-        <!-- The main content view. Fragments will be added here. -->
-      <androidx.car.moderator.SpeedBumpView
-            android:id="@+id/content_frame"
-            android:layout_width="match_parent"
-            android:layout_height="match_parent"
-            app:layout_behavior="@string/appbar_scrolling_view_behavior" />
-
-        <include
-            android:layout_width="match_parent"
-            android:layout_height="match_parent"
-            android:layout_gravity="start"
-            layout="@layout/car_drawer" />
-    </androidx.drawerlayout.widget.DrawerLayout>
-
-    <android.support.design.widget.AppBarLayout
-        android:id="@+id/appbar"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:fitsSystemWindows="true">
-        <!-- The min height of the Toolbar needs to be set to ensure that the icons in it
-             are vertically centered. -->
-        <androidx.car.widget.ClickThroughToolbar
-            android:id="@+id/car_toolbar"
-            android:layout_width="match_parent"
-            android:layout_height="@dimen/car_app_bar_height"
-            android:layout_gravity="center_vertical"
-            android:minHeight="@dimen/car_app_bar_height"
-            style="@style/Widget.Car.Toolbar" />
-    </android.support.design.widget.AppBarLayout>
-</androidx.coordinatorlayout.widget.CoordinatorLayout>
diff --git a/android-car-lib/res/layout/car_drawer_list_item_empty.xml b/android-car-lib/res/layout/car_drawer_list_item_empty.xml
deleted file mode 100644
index d078a32..0000000
--- a/android-car-lib/res/layout/car_drawer_list_item_empty.xml
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<LinearLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/container"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:layout_marginStart="16dp"
-    android:focusable="false"
-    android:orientation="vertical"
-    android:background="@drawable/car_drawer_list_item_background" >
-    <FrameLayout
-        android:id="@+id/icon_container"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:visibility="visible">
-        <ImageView
-            android:id="@+id/icon"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_gravity="center_horizontal"
-            android:layout_marginTop="48dp"
-            android:layout_marginBottom="22dp" />
-    </FrameLayout>
-    <TextView
-        android:id="@+id/title"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_marginEnd="16dp"
-        android:gravity="center"
-        android:textAppearance="?attr/drawerItemTitleTextAppearance" />
-</LinearLayout>
diff --git a/android-car-lib/res/layout/car_drawer_list_item_normal.xml b/android-car-lib/res/layout/car_drawer_list_item_normal.xml
deleted file mode 100644
index a400c5a..0000000
--- a/android-car-lib/res/layout/car_drawer_list_item_normal.xml
+++ /dev/null
@@ -1,59 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<LinearLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="@dimen/car_double_line_list_item_height"
-    android:focusable="true"
-    android:orientation="horizontal"
-    android:background="@drawable/car_drawer_list_item_background" >
-    <ImageView
-        android:id="@+id/icon"
-        android:layout_width="@dimen/car_drawer_list_item_icon_size"
-        android:layout_height="@dimen/car_drawer_list_item_icon_size"
-        android:layout_marginEnd="@dimen/car_drawer_list_item_icon_end_margin"
-        android:layout_gravity="center_vertical"
-        android:scaleType="centerCrop" />
-    <LinearLayout
-        android:id="@+id/text_container"
-        android:layout_width="0dp"
-        android:layout_height="wrap_content"
-        android:layout_weight="1"
-        android:layout_gravity="center_vertical"
-        android:orientation="vertical" >
-        <TextView
-            android:id="@+id/title"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_marginBottom="@dimen/car_text_vertical_margin"
-            android:maxLines="1"
-            android:textAppearance="?attr/drawerItemTitleTextAppearance" />
-        <TextView
-            android:id="@+id/text"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:ellipsize="end"
-            android:maxLines="1"
-            android:textAppearance="?attr/drawerItemBodyTextAppearance" />
-    </LinearLayout>
-    <ImageView
-        android:id="@+id/end_icon"
-        android:layout_width="@dimen/car_drawer_list_item_end_icon_size"
-        android:layout_height="@dimen/car_drawer_list_item_end_icon_size"
-        android:scaleType="fitCenter"
-        android:layout_marginEnd="@dimen/car_drawer_list_item_end_margin"
-        android:layout_gravity="center_vertical" />
-</LinearLayout>
diff --git a/android-car-lib/res/layout/car_drawer_list_item_small.xml b/android-car-lib/res/layout/car_drawer_list_item_small.xml
deleted file mode 100644
index 7ccf72b..0000000
--- a/android-car-lib/res/layout/car_drawer_list_item_small.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<LinearLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="@dimen/car_single_line_list_item_height"
-    android:focusable="true"
-    android:orientation="horizontal"
-    android:background="@drawable/car_drawer_list_item_background" >
-    <ImageView
-        android:id="@+id/icon"
-        android:layout_width="@dimen/car_drawer_list_item_small_icon_size"
-        android:layout_height="@dimen/car_drawer_list_item_small_icon_size"
-        android:layout_marginEnd="@dimen/car_drawer_list_item_icon_end_margin"
-        android:layout_gravity="center_vertical"
-        android:scaleType="centerCrop" />
-    <TextView
-        android:id="@+id/title"
-        android:layout_width="0dp"
-        android:layout_height="wrap_content"
-        android:layout_weight="1"
-        android:layout_gravity="center_vertical"
-        android:layout_marginBottom="@dimen/car_text_vertical_margin"
-        android:maxLines="1"
-        android:textAppearance="?attr/drawerItemTitleTextAppearance" />
-    <ImageView
-        android:id="@+id/end_icon"
-        android:layout_width="@dimen/car_drawer_list_item_end_icon_size"
-        android:layout_height="@dimen/car_drawer_list_item_end_icon_size"
-        android:scaleType="fitCenter"
-        android:layout_marginEnd="@dimen/car_drawer_list_item_end_margin"
-        android:layout_gravity="center_vertical"/>
-</LinearLayout>
diff --git a/android-car-lib/res/layout/car_list_dialog.xml b/android-car-lib/res/layout/car_list_dialog.xml
deleted file mode 100644
index c3ff1bf..0000000
--- a/android-car-lib/res/layout/car_list_dialog.xml
+++ /dev/null
@@ -1,62 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-
-<FrameLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:app="http://schemas.android.com/apk/res-auto"
-    android:id="@+id/container"
-    android:background="@android:color/transparent"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent" >
-
-    <!-- Note: the width is 0dp because ColumnCardView will automatically set a width based
-         on the number of columns it should take up. See ColumnCardView for more details. -->
-    <androidx.car.widget.ColumnCardView
-        android:layout_gravity="center"
-        android:layout_width="0dp"
-        android:layout_height="wrap_content"
-        android:layout_marginTop="@dimen/car_padding_4"
-        android:layout_marginBottom="@dimen/car_padding_4"
-        android:elevation="@dimen/car_dialog_elevation"
-        app:cardBackgroundColor="?attr/dialogBackgroundColor"
-        app:cardCornerRadius="@dimen/car_radius_3">
-
-        <!-- Hide the scrollbar for this PagedListView because it will be implemented by
-             @id/scrollbar. -->
-        <androidx.car.widget.PagedListView
-            android:id="@+id/list"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:theme="?attr/dialogListTheme"
-            app:gutter="none"
-            app:dividerStartMargin="@dimen/car_keyline_1"
-            app:dividerEndMargin="@dimen/car_keyline_1"
-            app:showPagedListViewDivider="true"
-            app:scrollBarEnabled="false" />
-    </androidx.car.widget.ColumnCardView>
-
-    <!-- Putting this as the last child for highest z-index. It is also clickable to reduce
-         the chance of clicks on the buttons accidentally dismissing the dialog. -->
-    <androidx.car.widget.PagedScrollBarView
-        android:id="@+id/scrollbar"
-        android:layout_width="@dimen/car_margin"
-        android:layout_height="match_parent"
-        android:layout_marginTop="@dimen/car_padding_4"
-        android:layout_marginBottom="@dimen/car_padding_4"
-        android:layout_gravity="start|top"
-        android:clickable="true"
-        android:visibility="invisible" />
-</FrameLayout>
diff --git a/android-car-lib/res/layout/car_list_item_seekbar_content.xml b/android-car-lib/res/layout/car_list_item_seekbar_content.xml
deleted file mode 100644
index 2e3b165..0000000
--- a/android-car-lib/res/layout/car_list_item_seekbar_content.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2018 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License.
-  -->
-<RelativeLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/container"
-    android:layout_width="wrap_content"
-    android:layout_height="match_parent">
-
-    <!-- This layout should only be used by class SeekbarListItem, as it requires layout params
-         being set programmatically depending on item data/view configuration. -->
-
-    <!-- Primary Action. -->
-    <ImageView
-        android:id="@+id/primary_icon"
-        android:layout_width="@dimen/car_single_line_list_item_height"
-        android:layout_height="@dimen/car_single_line_list_item_height"/>
-
-    <!-- Slider and text. -->
-    <LinearLayout
-        android:id="@+id/seek_bar_container"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:orientation="vertical">
-        <TextView
-            android:id="@+id/text"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"/>
-        <SeekBar
-            android:id="@+id/seek_bar"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:splitTrack="false"
-            style="@style/Widget.Car.SeekBar"/>
-    </LinearLayout>
-
-    <!-- Supplemental action. -->
-    <ImageView
-        android:id="@+id/supplemental_icon"
-        android:layout_width="@dimen/car_primary_icon_size"
-        android:layout_height="@dimen/car_primary_icon_size"
-        android:scaleType="fitCenter"/>
-    <View
-        android:id="@+id/supplemental_icon_divider"
-        android:layout_width="@dimen/car_vertical_line_divider_width"
-        android:layout_height="@dimen/car_vertical_line_divider_height"
-        android:background="@color/car_list_divider"/>
-</RelativeLayout>
diff --git a/android-car-lib/res/layout/car_list_item_text_content.xml b/android-car-lib/res/layout/car_list_item_text_content.xml
deleted file mode 100644
index a85a31e..0000000
--- a/android-car-lib/res/layout/car_list_item_text_content.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2017 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License.
-  -->
-<RelativeLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/container"
-    android:layout_width="wrap_content"
-    android:layout_height="match_parent"
-    android:foreground="@drawable/car_card_ripple_background">
-    <!-- Primary Action. -->
-    <ImageView
-        android:id="@+id/primary_icon"
-        android:layout_width="@dimen/car_single_line_list_item_height"
-        android:layout_height="@dimen/car_single_line_list_item_height"/>
-
-    <!-- Text. -->
-    <TextView
-        android:id="@+id/title"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:singleLine="true"
-        android:ellipsize="end"/>
-    <TextView
-        android:id="@+id/body"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"/>
-
-    <!-- Supplemental action(s) - only one of the following groups should be visible. -->
-    <!-- End icon with divider. -->
-    <View
-        android:id="@+id/supplemental_icon_divider"
-        android:layout_centerVertical="true"
-        android:layout_toStartOf="@id/supplemental_icon"
-        android:layout_marginEnd="@dimen/car_padding_4"
-        style="@style/CarListVerticalDivider"/>
-    <ImageView
-        android:id="@+id/supplemental_icon"
-        android:layout_centerVertical="true"
-        android:layout_width="@dimen/car_primary_icon_size"
-        android:layout_height="@dimen/car_primary_icon_size"
-        android:layout_alignParentEnd="true"
-        android:layout_marginEnd="@dimen/car_keyline_1"
-        android:scaleType="fitCenter"/>
-
-    <!-- Switch with divider. -->
-    <View
-        android:id="@+id/switch_divider"
-        android:layout_centerVertical="true"
-        android:layout_toStartOf="@id/switch_widget"
-        android:layout_marginEnd="@dimen/car_padding_4"
-        style="@style/CarListVerticalDivider"/>
-    <Switch
-        android:id="@+id/switch_widget"
-        android:layout_centerVertical="true"
-        android:layout_width="@dimen/car_primary_icon_size"
-        android:layout_height="@dimen/car_primary_icon_size"
-        android:layout_alignParentEnd="true"
-        android:layout_marginEnd="@dimen/car_keyline_1"
-        style="@android:style/Widget.Material.CompoundButton.Switch"/>
-
-    <!-- Up to 2 action buttons with dividers. -->
-    <View
-        android:id="@+id/action2_divider"
-        android:layout_centerVertical="true"
-        android:layout_toStartOf="@id/action2"
-        android:layout_marginEnd="@dimen/car_padding_4"
-        style="@style/CarListVerticalDivider"/>
-    <Button
-        android:id="@+id/action2"
-        android:layout_centerVertical="true"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:layout_toStartOf="@id/action1_divider"
-        android:layout_marginEnd="@dimen/car_padding_4"
-        android:ellipsize="end"
-        android:maxLength="@integer/car_borderless_button_text_length_limit"
-        android:maxLines="1"
-        android:background="@color/car_card"
-        android:foreground="@drawable/car_card_ripple_background"
-        style="?android:attr/borderlessButtonStyle"/>
-    <View
-        android:id="@+id/action1_divider"
-        android:layout_centerVertical="true"
-        android:layout_toStartOf="@id/action1"
-        android:layout_marginEnd="@dimen/car_padding_4"
-        style="@style/CarListVerticalDivider"/>
-    <Button
-        android:id="@+id/action1"
-        android:layout_centerVertical="true"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:layout_alignParentEnd="true"
-        android:layout_marginEnd="@dimen/car_keyline_1"
-        android:ellipsize="end"
-        android:maxLength="@integer/car_borderless_button_text_length_limit"
-        android:maxLines="1"
-        android:background="@color/car_card"
-        android:foreground="@drawable/car_card_ripple_background"
-        style="?android:attr/borderlessButtonStyle"/>
-</RelativeLayout>
diff --git a/android-car-lib/res/layout/car_paged_recycler_view.xml b/android-car-lib/res/layout/car_paged_recycler_view.xml
deleted file mode 100644
index 360d9a2..0000000
--- a/android-car-lib/res/layout/car_paged_recycler_view.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2017 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License.
-  -->
-<FrameLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent">
-
-    <androidx.recyclerview.widget.RecyclerView
-        android:id="@+id/recycler_view"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent" />
-
-    <!-- Putting this as the last child so that it can intercept any touch events on the
-         scroll buttons. -->
-    <androidx.car.widget.PagedScrollBarView
-        android:id="@+id/paged_scroll_view"
-        android:layout_width="@dimen/car_margin"
-        android:layout_height="match_parent"
-        android:paddingBottom="@dimen/car_padding_4"
-        android:paddingTop="@dimen/car_padding_4"
-        android:visibility="invisible" />
-</FrameLayout>
diff --git a/android-car-lib/res/layout/car_paged_scrollbar_buttons.xml b/android-car-lib/res/layout/car_paged_scrollbar_buttons.xml
deleted file mode 100644
index b126b48..0000000
--- a/android-car-lib/res/layout/car_paged_scrollbar_buttons.xml
+++ /dev/null
@@ -1,58 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2017 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License.
-  -->
-<LinearLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:layout_gravity="center"
-    android:gravity="center"
-    android:orientation="vertical">
-
-    <ImageView
-        android:id="@+id/page_up"
-        android:layout_width="@dimen/car_scroll_bar_button_size"
-        android:layout_height="@dimen/car_scroll_bar_button_size"
-        android:background="@drawable/car_card_ripple_background"
-        android:focusable="false"
-        android:hapticFeedbackEnabled="false"
-        android:src="@drawable/ic_up" />
-
-    <FrameLayout
-        android:id="@+id/filler"
-        android:layout_width="match_parent"
-        android:layout_height="0dp"
-        android:layout_weight="1"
-        android:layout_marginBottom="@dimen/car_padding_2"
-        android:layout_marginTop="@dimen/car_padding_2" >
-
-        <View
-            android:id="@+id/scrollbar_thumb"
-            android:layout_width="@dimen/car_scroll_bar_thumb_width"
-            android:layout_height="0dp"
-            android:layout_gravity="center_horizontal"
-            android:background="@drawable/car_scrollbar_thumb" />
-    </FrameLayout>
-
-    <ImageView
-        android:id="@+id/page_down"
-        android:layout_width="@dimen/car_scroll_bar_button_size"
-        android:layout_height="@dimen/car_scroll_bar_button_size"
-        android:background="@drawable/car_card_ripple_background"
-        android:focusable="false"
-        android:hapticFeedbackEnabled="false"
-        android:src="@drawable/ic_down" />
-</LinearLayout>
diff --git a/android-car-lib/res/layout/car_toolbar.xml b/android-car-lib/res/layout/car_toolbar.xml
deleted file mode 100644
index 3926896..0000000
--- a/android-car-lib/res/layout/car_toolbar.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<FrameLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="@dimen/car_app_bar_height">
-    <androidx.appcompat.widget.Toolbar
-        android:id="@+id/car_toolbar"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_gravity="center_vertical"
-        style="@style/Widget.Car.Toolbar" />
-</FrameLayout>
diff --git a/android-car-lib/res/layout/lock_out_message.xml b/android-car-lib/res/layout/lock_out_message.xml
deleted file mode 100644
index 220e1f3..0000000
--- a/android-car-lib/res/layout/lock_out_message.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 The Android Open Source Project
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<RelativeLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/lock_out_message_container"
-    android:background="@drawable/speed_bump_scrim"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:layout_gravity="bottom"
-    android:visibility="gone">
-
-    <ImageView
-        android:id="@+id/lock_out_drawable"
-        android:layout_width="wrap_content"
-        android:layout_height="@dimen/speed_bump_lock_out_message_height"
-        android:layout_gravity="center"
-        android:layout_marginBottom="@dimen/speed_bump_lock_out_drawable_margin_bottom"
-        android:layout_alignParentBottom="true"
-        android:layout_centerHorizontal="true"
-        android:src="@drawable/lock_out_message_animation"/>
-
-    <!-- Align this TextView against the lock_out_drawable to ensure that the latter will wrap
-         this TextView. -->
-    <TextView
-        android:id="@+id/lock_out_text"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:textAppearance="@style/TextAppearance.Car.Body1"
-        android:layout_alignStart="@id/lock_out_drawable"
-        android:layout_alignEnd="@id/lock_out_drawable"
-        android:layout_alignTop="@id/lock_out_drawable"
-        android:layout_alignBottom="@id/lock_out_drawable"
-        android:gravity="center"
-        android:text="@string/speed_bump_lockout_message"/>
-</RelativeLayout>
diff --git a/android-car-lib/res/values-af/values-af.xml b/android-car-lib/res/values-af/values-af.xml
deleted file mode 100644
index ed25d1d..0000000
--- a/android-car-lib/res/values-af/values-af.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Konsentreer op die pad"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-af/values.xml b/android-car-lib/res/values-af/values.xml
deleted file mode 100644
index 7990a8e..0000000
--- a/android-car-lib/res/values-af/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Vou knoppie in/uit"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Konsentreer op die pad"</string>
-</resources>
diff --git a/android-car-lib/res/values-am/values-am.xml b/android-car-lib/res/values-am/values-am.xml
deleted file mode 100644
index 529a04e..0000000
--- a/android-car-lib/res/values-am/values-am.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"መንገዱ ላይ ያተኩሩ"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-am/values.xml b/android-car-lib/res/values-am/values.xml
deleted file mode 100644
index 8bd9ce9..0000000
--- a/android-car-lib/res/values-am/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"አዝራርን ዘርጋ/ሰብስብ"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"መንገዱ ላይ ያተኩሩ"</string>
-</resources>
diff --git a/android-car-lib/res/values-ar/values-ar.xml b/android-car-lib/res/values-ar/values-ar.xml
deleted file mode 100644
index 3d64213..0000000
--- a/android-car-lib/res/values-ar/values-ar.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"ركِّز في الطريق"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-ar/values.xml b/android-car-lib/res/values-ar/values.xml
deleted file mode 100644
index a05692c..0000000
--- a/android-car-lib/res/values-ar/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"زر التوسيع/التصغير"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"ركِّز في الطريق."</string>
-</resources>
diff --git a/android-car-lib/res/values-as/values.xml b/android-car-lib/res/values-as/values.xml
deleted file mode 100644
index db2bb2f..0000000
--- a/android-car-lib/res/values-as/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"সম্প্ৰসাৰণ/সংকোচন বুটাম"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"মনোযোগেৰে গাড়ী চলাওক"</string>
-</resources>
diff --git a/android-car-lib/res/values-az/values-az.xml b/android-car-lib/res/values-az/values-az.xml
deleted file mode 100644
index b5b0f12..0000000
--- a/android-car-lib/res/values-az/values-az.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Diqqətinizi yola yönəldin"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-az/values.xml b/android-car-lib/res/values-az/values.xml
deleted file mode 100644
index 822f446..0000000
--- a/android-car-lib/res/values-az/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Düyməni genişləndirin/yığcamlaşdırın"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Diqqətinizi yola yönəldin"</string>
-</resources>
diff --git a/android-car-lib/res/values-b+sr+Latn/values-b+sr+Latn.xml b/android-car-lib/res/values-b+sr+Latn/values-b+sr+Latn.xml
deleted file mode 100644
index 97332eb..0000000
--- a/android-car-lib/res/values-b+sr+Latn/values-b+sr+Latn.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Fokusirajte se na put"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-b+sr+Latn/values.xml b/android-car-lib/res/values-b+sr+Latn/values.xml
deleted file mode 100644
index 1da562a..0000000
--- a/android-car-lib/res/values-b+sr+Latn/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Dugme Proširi/skupi"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Fokusirajte se na put"</string>
-</resources>
diff --git a/android-car-lib/res/values-be/values-be.xml b/android-car-lib/res/values-be/values-be.xml
deleted file mode 100644
index cd54ef9..0000000
--- a/android-car-lib/res/values-be/values-be.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Увага на дарогу"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-be/values.xml b/android-car-lib/res/values-be/values.xml
deleted file mode 100644
index a33ac9b..0000000
--- a/android-car-lib/res/values-be/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Кнопка \"Разгарнуць/згарнуць\""</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Увага на дарогу"</string>
-</resources>
diff --git a/android-car-lib/res/values-bg/values-bg.xml b/android-car-lib/res/values-bg/values-bg.xml
deleted file mode 100644
index 90f73ad..0000000
--- a/android-car-lib/res/values-bg/values-bg.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Съсредоточете се върху пътя"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-bg/values.xml b/android-car-lib/res/values-bg/values.xml
deleted file mode 100644
index 18a283d..0000000
--- a/android-car-lib/res/values-bg/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Бутон за разгъване/свиване"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Съсредоточете се върху пътя"</string>
-</resources>
diff --git a/android-car-lib/res/values-bn/values-bn.xml b/android-car-lib/res/values-bn/values-bn.xml
deleted file mode 100644
index 8a7d235..0000000
--- a/android-car-lib/res/values-bn/values-bn.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"মনোযোগ দিয়ে গাড়ি চালান"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-bn/values.xml b/android-car-lib/res/values-bn/values.xml
deleted file mode 100644
index ad4f5a0..0000000
--- a/android-car-lib/res/values-bn/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"বোতামটি বড় করুন/আড়াল করুন"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"মনোযোগ দিয়ে গাড়ি চালান"</string>
-</resources>
diff --git a/android-car-lib/res/values-bs/values-bs.xml b/android-car-lib/res/values-bs/values-bs.xml
deleted file mode 100644
index 5cb1759..0000000
--- a/android-car-lib/res/values-bs/values-bs.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Fokusirajte se na cestu"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-bs/values.xml b/android-car-lib/res/values-bs/values.xml
deleted file mode 100644
index f9b4431..0000000
--- a/android-car-lib/res/values-bs/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Dugme proširi/suzi"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Fokusirajte se na cestu"</string>
-</resources>
diff --git a/android-car-lib/res/values-ca/values-ca.xml b/android-car-lib/res/values-ca/values-ca.xml
deleted file mode 100644
index 2c1c31a..0000000
--- a/android-car-lib/res/values-ca/values-ca.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Concentra\'t en la carretera"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-ca/values.xml b/android-car-lib/res/values-ca/values.xml
deleted file mode 100644
index c9133a5..0000000
--- a/android-car-lib/res/values-ca/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Botó per desplegar o replegar"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Concentra\'t en la carretera"</string>
-</resources>
diff --git a/android-car-lib/res/values-cs/values-cs.xml b/android-car-lib/res/values-cs/values-cs.xml
deleted file mode 100644
index 7bd877c..0000000
--- a/android-car-lib/res/values-cs/values-cs.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Soustřeďte se na silnici"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-cs/values.xml b/android-car-lib/res/values-cs/values.xml
deleted file mode 100644
index aad6789..0000000
--- a/android-car-lib/res/values-cs/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Tlačítko rozbalení/sbalení"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Soustřeďte se na silnici"</string>
-</resources>
diff --git a/android-car-lib/res/values-da/values-da.xml b/android-car-lib/res/values-da/values-da.xml
deleted file mode 100644
index 54f7632..0000000
--- a/android-car-lib/res/values-da/values-da.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Hold øjnene på vejen"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-da/values.xml b/android-car-lib/res/values-da/values.xml
deleted file mode 100644
index fb82413..0000000
--- a/android-car-lib/res/values-da/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Knappen Udvid/skjul"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Hold øjnene på vejen"</string>
-</resources>
diff --git a/android-car-lib/res/values-de/values-de.xml b/android-car-lib/res/values-de/values-de.xml
deleted file mode 100644
index d0a35b5..0000000
--- a/android-car-lib/res/values-de/values-de.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Achte auf den Verkehr"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-de/values.xml b/android-car-lib/res/values-de/values.xml
deleted file mode 100644
index fb8e1c5..0000000
--- a/android-car-lib/res/values-de/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Schaltfläche zum Maximieren/Minimieren"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Achte auf den Verkehr"</string>
-</resources>
diff --git a/android-car-lib/res/values-el/values-el.xml b/android-car-lib/res/values-el/values-el.xml
deleted file mode 100644
index 52758b1..0000000
--- a/android-car-lib/res/values-el/values-el.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Επικεντρωθείτε στον δρόμο"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-el/values.xml b/android-car-lib/res/values-el/values.xml
deleted file mode 100644
index e17e8f4..0000000
--- a/android-car-lib/res/values-el/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Κουμπί ανάπτυξης/σύμπτυξης"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Επικεντρωθείτε στον δρόμο"</string>
-</resources>
diff --git a/android-car-lib/res/values-en-rAU/values-en-rAU.xml b/android-car-lib/res/values-en-rAU/values-en-rAU.xml
deleted file mode 100644
index 14ebe5f..0000000
--- a/android-car-lib/res/values-en-rAU/values-en-rAU.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Focus on the road"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-en-rAU/values.xml b/android-car-lib/res/values-en-rAU/values.xml
deleted file mode 100644
index b950788..0000000
--- a/android-car-lib/res/values-en-rAU/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Expand/collapse button"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Focus on the road"</string>
-</resources>
diff --git a/android-car-lib/res/values-en-rCA/values-en-rCA.xml b/android-car-lib/res/values-en-rCA/values-en-rCA.xml
deleted file mode 100644
index 14ebe5f..0000000
--- a/android-car-lib/res/values-en-rCA/values-en-rCA.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Focus on the road"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-en-rCA/values.xml b/android-car-lib/res/values-en-rCA/values.xml
deleted file mode 100644
index b950788..0000000
--- a/android-car-lib/res/values-en-rCA/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Expand/collapse button"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Focus on the road"</string>
-</resources>
diff --git a/android-car-lib/res/values-en-rGB/values-en-rGB.xml b/android-car-lib/res/values-en-rGB/values-en-rGB.xml
deleted file mode 100644
index 14ebe5f..0000000
--- a/android-car-lib/res/values-en-rGB/values-en-rGB.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Focus on the road"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-en-rGB/values.xml b/android-car-lib/res/values-en-rGB/values.xml
deleted file mode 100644
index b950788..0000000
--- a/android-car-lib/res/values-en-rGB/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Expand/collapse button"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Focus on the road"</string>
-</resources>
diff --git a/android-car-lib/res/values-en-rIN/values-en-rIN.xml b/android-car-lib/res/values-en-rIN/values-en-rIN.xml
deleted file mode 100644
index 14ebe5f..0000000
--- a/android-car-lib/res/values-en-rIN/values-en-rIN.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Focus on the road"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-en-rIN/values.xml b/android-car-lib/res/values-en-rIN/values.xml
deleted file mode 100644
index b950788..0000000
--- a/android-car-lib/res/values-en-rIN/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Expand/collapse button"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Focus on the road"</string>
-</resources>
diff --git a/android-car-lib/res/values-en-rXC/values-en-rXC.xml b/android-car-lib/res/values-en-rXC/values-en-rXC.xml
deleted file mode 100644
index 2644d8a..0000000
--- a/android-car-lib/res/values-en-rXC/values-en-rXC.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‎‏‎‏‏‎‎‎‎‎‏‎‎‏‏‏‎‎‏‎‏‎‏‏‏‏‏‎‎‎‏‎‏‎‎‏‏‏‏‏‏‏‏‏‏‎‎‏‏‏‎‎‏‎‏‎‎‏‏‏‏‎Focus on the road‎‏‎‎‏‎"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-en-rXC/values.xml b/android-car-lib/res/values-en-rXC/values.xml
deleted file mode 100644
index 1d1d116..0000000
--- a/android-car-lib/res/values-en-rXC/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‏‏‎‎‎‏‎‏‏‏‏‏‎‏‎‏‎‎‎‎‏‎‎‎‏‎‎‏‏‏‎‏‏‎‎‏‏‏‏‏‎‎‎‎‏‏‏‎‏‎‏‏‎‏‏‏‎‎‏‎‏‎‏‏‎‎‎‏‏‎‏‎‎‎‎‎Expand/collapse button‎‏‎‎‏‎"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‏‏‎‎‎‏‎‏‏‏‏‏‎‏‏‏‎‎‎‎‎‏‏‎‏‎‎‏‏‏‏‎‏‏‏‏‏‏‏‏‏‏‏‎‎‎‏‏‏‏‏‎‎‏‏‏‎‏‏‏‎‏‏‎‎‏‏‎‎‎‎‏‏‏‎‎Focus on the road‎‏‎‎‏‎"</string>
-</resources>
diff --git a/android-car-lib/res/values-es-rUS/values-es-rUS.xml b/android-car-lib/res/values-es-rUS/values-es-rUS.xml
deleted file mode 100644
index e5ecf44..0000000
--- a/android-car-lib/res/values-es-rUS/values-es-rUS.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Concéntrate en el camino"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-es-rUS/values.xml b/android-car-lib/res/values-es-rUS/values.xml
deleted file mode 100644
index 0a3e9a8..0000000
--- a/android-car-lib/res/values-es-rUS/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Botón Expandir/contraer"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Concéntrate en el camino"</string>
-</resources>
diff --git a/android-car-lib/res/values-es/values-es.xml b/android-car-lib/res/values-es/values-es.xml
deleted file mode 100644
index 2af260c..0000000
--- a/android-car-lib/res/values-es/values-es.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Céntrate en la carretera"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-es/values.xml b/android-car-lib/res/values-es/values.xml
deleted file mode 100644
index a175812..0000000
--- a/android-car-lib/res/values-es/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Botón para mostrar u ocultar"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Céntrate en la carretera"</string>
-</resources>
diff --git a/android-car-lib/res/values-et/values-et.xml b/android-car-lib/res/values-et/values-et.xml
deleted file mode 100644
index 30fce07..0000000
--- a/android-car-lib/res/values-et/values-et.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Keskenduge teele"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-et/values.xml b/android-car-lib/res/values-et/values.xml
deleted file mode 100644
index 18e9283..0000000
--- a/android-car-lib/res/values-et/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Nupp Laienda/Ahenda"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Keskenduge teele"</string>
-</resources>
diff --git a/android-car-lib/res/values-eu/values-eu.xml b/android-car-lib/res/values-eu/values-eu.xml
deleted file mode 100644
index 65513d4..0000000
--- a/android-car-lib/res/values-eu/values-eu.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Jarri arreta errepidean"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-eu/values.xml b/android-car-lib/res/values-eu/values.xml
deleted file mode 100644
index 4e2c741..0000000
--- a/android-car-lib/res/values-eu/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Zabaltzeko/Tolesteko botoia"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Jarri arreta errepidean"</string>
-</resources>
diff --git a/android-car-lib/res/values-fa/values-fa.xml b/android-car-lib/res/values-fa/values-fa.xml
deleted file mode 100644
index f683363..0000000
--- a/android-car-lib/res/values-fa/values-fa.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"روی جاده تمرکز داشته باشید"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-fa/values.xml b/android-car-lib/res/values-fa/values.xml
deleted file mode 100644
index 319b857..0000000
--- a/android-car-lib/res/values-fa/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"دکمه بزرگ کردن/کوچک کردن"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"روی جاده تمرکز داشته باشید"</string>
-</resources>
diff --git a/android-car-lib/res/values-fi/values-fi.xml b/android-car-lib/res/values-fi/values-fi.xml
deleted file mode 100644
index b7223be..0000000
--- a/android-car-lib/res/values-fi/values-fi.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Pidä katse tiessä"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-fi/values.xml b/android-car-lib/res/values-fi/values.xml
deleted file mode 100644
index 7e917d2..0000000
--- a/android-car-lib/res/values-fi/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Laajennus- ja tiivistyspainike"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Pidä katse tiessä"</string>
-</resources>
diff --git a/android-car-lib/res/values-fr-rCA/values-fr-rCA.xml b/android-car-lib/res/values-fr-rCA/values-fr-rCA.xml
deleted file mode 100644
index 79e44c5..0000000
--- a/android-car-lib/res/values-fr-rCA/values-fr-rCA.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Concentrez-vous sur la route"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-fr-rCA/values.xml b/android-car-lib/res/values-fr-rCA/values.xml
deleted file mode 100644
index e44d8cb..0000000
--- a/android-car-lib/res/values-fr-rCA/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Bouton Développer/Réduire"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Concentrez-vous sur la route"</string>
-</resources>
diff --git a/android-car-lib/res/values-fr/values-fr.xml b/android-car-lib/res/values-fr/values-fr.xml
deleted file mode 100644
index 79e44c5..0000000
--- a/android-car-lib/res/values-fr/values-fr.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Concentrez-vous sur la route"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-fr/values.xml b/android-car-lib/res/values-fr/values.xml
deleted file mode 100644
index e44d8cb..0000000
--- a/android-car-lib/res/values-fr/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Bouton Développer/Réduire"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Concentrez-vous sur la route"</string>
-</resources>
diff --git a/android-car-lib/res/values-gl/values-gl.xml b/android-car-lib/res/values-gl/values-gl.xml
deleted file mode 100644
index d024b93..0000000
--- a/android-car-lib/res/values-gl/values-gl.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Céntrate na estrada"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-gl/values.xml b/android-car-lib/res/values-gl/values.xml
deleted file mode 100644
index 9b09422..0000000
--- a/android-car-lib/res/values-gl/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Botón despregar/contraer"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Céntrate na estrada"</string>
-</resources>
diff --git a/android-car-lib/res/values-gu/values-gu.xml b/android-car-lib/res/values-gu/values-gu.xml
deleted file mode 100644
index 6b0f8d5..0000000
--- a/android-car-lib/res/values-gu/values-gu.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"રસ્તા પર ફોકસ કરો"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-gu/values.xml b/android-car-lib/res/values-gu/values.xml
deleted file mode 100644
index 8735563..0000000
--- a/android-car-lib/res/values-gu/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"વિસ્તાર કરો/સંકુચિત કરો બટન"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"રસ્તા પર ફોકસ કરો"</string>
-</resources>
diff --git a/android-car-lib/res/values-h1752dp-v13/values-h1752dp-v13.xml b/android-car-lib/res/values-h1752dp-v13/values-h1752dp-v13.xml
deleted file mode 100644
index 9eb87ed..0000000
--- a/android-car-lib/res/values-h1752dp-v13/values-h1752dp-v13.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <dimen name="car_action1_size">32sp</dimen>
-    <dimen name="car_app_bar_height">112dp</dimen>
-    <dimen name="car_avatar_size">96dp</dimen>
-    <dimen name="car_body1_size">40sp</dimen>
-    <dimen name="car_body2_size">32sp</dimen>
-    <dimen name="car_card_action_bar_height">96dp</dimen>
-    <dimen name="car_card_header_height">96dp</dimen>
-    <dimen name="car_headline1_size">56sp</dimen>
-    <dimen name="car_headline2_size">50sp</dimen>
-    <dimen name="car_label1_size">32sp</dimen>
-    <dimen name="car_primary_icon_size">56dp</dimen>
-    <dimen name="car_secondary_icon_size">36dp</dimen>
-    <dimen name="car_single_line_list_item_height">128dp</dimen>
-    <dimen name="car_slide_up_menu_initial_height">128dp</dimen>
-    <dimen name="car_sub_header_height">96dp</dimen>
-    <dimen name="car_title2_size">40sp</dimen>
-    <dimen name="car_touch_target_size">96dp</dimen>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-h668dp-v13/values-h668dp-v13.xml b/android-car-lib/res/values-h668dp-v13/values-h668dp-v13.xml
deleted file mode 100644
index 127e094..0000000
--- a/android-car-lib/res/values-h668dp-v13/values-h668dp-v13.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <dimen name="car_app_bar_height">96dp</dimen>
-    <dimen name="car_drawer_list_item_end_icon_size">56dp</dimen>
-    <dimen name="car_drawer_list_item_icon_size">108dp</dimen>
-    <dimen name="car_drawer_list_item_small_icon_size">56dp</dimen>
-    <dimen name="car_headline2_size">36sp</dimen>
-    <dimen name="car_padding_2">16dp</dimen>
-    <dimen name="car_padding_3">28dp</dimen>
-    <dimen name="car_padding_4">32dp</dimen>
-    <dimen name="car_padding_5">64dp</dimen>
-    <dimen name="car_padding_6">96dp</dimen>
-    <dimen name="car_scroll_bar_button_size">76dp</dimen>
-    <dimen name="car_single_line_list_item_height">116dp</dimen>
-    <dimen name="car_slide_up_menu_initial_height">116dp</dimen>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-hi/values-hi.xml b/android-car-lib/res/values-hi/values-hi.xml
deleted file mode 100644
index 5430f04..0000000
--- a/android-car-lib/res/values-hi/values-hi.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"सड़क पर ध्यान दें"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-hi/values.xml b/android-car-lib/res/values-hi/values.xml
deleted file mode 100644
index d2cb5f8..0000000
--- a/android-car-lib/res/values-hi/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"बड़ा/छोटा करने वाला बटन"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"सड़क पर ध्यान दें"</string>
-</resources>
diff --git a/android-car-lib/res/values-hr/values-hr.xml b/android-car-lib/res/values-hr/values-hr.xml
deleted file mode 100644
index dc7be15..0000000
--- a/android-car-lib/res/values-hr/values-hr.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Usredotočite se na cestu"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-hr/values.xml b/android-car-lib/res/values-hr/values.xml
deleted file mode 100644
index d279d04..0000000
--- a/android-car-lib/res/values-hr/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Gumb za proširivanje/sažimanje"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Usredotočite se na cestu"</string>
-</resources>
diff --git a/android-car-lib/res/values-hu/values-hu.xml b/android-car-lib/res/values-hu/values-hu.xml
deleted file mode 100644
index 1e7ff2c..0000000
--- a/android-car-lib/res/values-hu/values-hu.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Figyeljen az útra"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-hu/values.xml b/android-car-lib/res/values-hu/values.xml
deleted file mode 100644
index e009ab8..0000000
--- a/android-car-lib/res/values-hu/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Gomb kibontása/összecsukása"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Figyeljen az útra"</string>
-</resources>
diff --git a/android-car-lib/res/values-hy/values-hy.xml b/android-car-lib/res/values-hy/values-hy.xml
deleted file mode 100644
index 54ba33e..0000000
--- a/android-car-lib/res/values-hy/values-hy.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Հետևեք ճանապարհին"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-hy/values.xml b/android-car-lib/res/values-hy/values.xml
deleted file mode 100644
index 05a225d..0000000
--- a/android-car-lib/res/values-hy/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"«Ընդարձակել/ծալել» կոճակ"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Հետևեք ճանապարհին"</string>
-</resources>
diff --git a/android-car-lib/res/values-in/values-in.xml b/android-car-lib/res/values-in/values-in.xml
deleted file mode 100644
index 25b10ed..0000000
--- a/android-car-lib/res/values-in/values-in.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Konsentrasi saat mengemudi"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-in/values.xml b/android-car-lib/res/values-in/values.xml
deleted file mode 100644
index 33e98c8..0000000
--- a/android-car-lib/res/values-in/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Tombol luaskan/ciutkan"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Konsentrasi saat mengemudi"</string>
-</resources>
diff --git a/android-car-lib/res/values-is/values-is.xml b/android-car-lib/res/values-is/values-is.xml
deleted file mode 100644
index c48d73b..0000000
--- a/android-car-lib/res/values-is/values-is.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Einbeittu þér að akstrinum"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-is/values.xml b/android-car-lib/res/values-is/values.xml
deleted file mode 100644
index 8db74e8..0000000
--- a/android-car-lib/res/values-is/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Hnappur til að stækka/minnka"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Einbeittu þér að akstrinum"</string>
-</resources>
diff --git a/android-car-lib/res/values-it/values-it.xml b/android-car-lib/res/values-it/values-it.xml
deleted file mode 100644
index 64780ad..0000000
--- a/android-car-lib/res/values-it/values-it.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Concentrati sulla strada"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-it/values.xml b/android-car-lib/res/values-it/values.xml
deleted file mode 100644
index 42e9fb6..0000000
--- a/android-car-lib/res/values-it/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Pulsante Espandi/Comprimi"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Concentrati sulla strada"</string>
-</resources>
diff --git a/android-car-lib/res/values-iw/values-iw.xml b/android-car-lib/res/values-iw/values-iw.xml
deleted file mode 100644
index 3af92b7..0000000
--- a/android-car-lib/res/values-iw/values-iw.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"עליך להתמקד בכביש"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-iw/values.xml b/android-car-lib/res/values-iw/values.xml
deleted file mode 100644
index 9a5d0d9..0000000
--- a/android-car-lib/res/values-iw/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"לחצן הרחבה וכיווץ"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"עליך להתמקד בכביש"</string>
-</resources>
diff --git a/android-car-lib/res/values-ja/values-ja.xml b/android-car-lib/res/values-ja/values-ja.xml
deleted file mode 100644
index 598f61f..0000000
--- a/android-car-lib/res/values-ja/values-ja.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"運転に集中してください"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-ja/values.xml b/android-car-lib/res/values-ja/values.xml
deleted file mode 100644
index 004bc89..0000000
--- a/android-car-lib/res/values-ja/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"展開 / 折りたたみボタン"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"運転に集中してください"</string>
-</resources>
diff --git a/android-car-lib/res/values-ka/values-ka.xml b/android-car-lib/res/values-ka/values-ka.xml
deleted file mode 100644
index 0e5a161..0000000
--- a/android-car-lib/res/values-ka/values-ka.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"კონცენტრირდით გზაზე"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-ka/values.xml b/android-car-lib/res/values-ka/values.xml
deleted file mode 100644
index fa26c0c..0000000
--- a/android-car-lib/res/values-ka/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"ღილაკის გაშლა/ჩაკეცვა"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"კონცენტრირდით გზაზე"</string>
-</resources>
diff --git a/android-car-lib/res/values-kk/values-kk.xml b/android-car-lib/res/values-kk/values-kk.xml
deleted file mode 100644
index b70f1db..0000000
--- a/android-car-lib/res/values-kk/values-kk.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Жолға назар аударыңыз"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-kk/values.xml b/android-car-lib/res/values-kk/values.xml
deleted file mode 100644
index a90524b..0000000
--- a/android-car-lib/res/values-kk/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"\"Жаю/Жию\" түймесі"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Жолға назар аударыңыз"</string>
-</resources>
diff --git a/android-car-lib/res/values-km/values-km.xml b/android-car-lib/res/values-km/values-km.xml
deleted file mode 100644
index b550049..0000000
--- a/android-car-lib/res/values-km/values-km.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"ផ្តោតលើ​ការបើកបរ"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-km/values.xml b/android-car-lib/res/values-km/values.xml
deleted file mode 100644
index 8fc71c6..0000000
--- a/android-car-lib/res/values-km/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"ប៊ូតុង​ពង្រីក/បង្រួម"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"ផ្តោតលើ​ការបើកបរ"</string>
-</resources>
diff --git a/android-car-lib/res/values-kn/values-kn.xml b/android-car-lib/res/values-kn/values-kn.xml
deleted file mode 100644
index cf77bf0..0000000
--- a/android-car-lib/res/values-kn/values-kn.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"ರಸ್ತೆಯ ಮೇಲೆ ಗಮನಹರಿಸಿ"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-kn/values.xml b/android-car-lib/res/values-kn/values.xml
deleted file mode 100644
index dea965f..0000000
--- a/android-car-lib/res/values-kn/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"ವಿಸ್ತರಿಸಿ/ಕುಗ್ಗಿಸಿ ಬಟನ್"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"ರಸ್ತೆಯ ಮೇಲೆ ಗಮನಹರಿಸಿ"</string>
-</resources>
diff --git a/android-car-lib/res/values-ko/values-ko.xml b/android-car-lib/res/values-ko/values-ko.xml
deleted file mode 100644
index 5564a12..0000000
--- a/android-car-lib/res/values-ko/values-ko.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"도로 상황에 집중하세요."</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-ko/values.xml b/android-car-lib/res/values-ko/values.xml
deleted file mode 100644
index 62f39d1..0000000
--- a/android-car-lib/res/values-ko/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"펼치기/접기 버튼"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"도로 상황에 집중하세요."</string>
-</resources>
diff --git a/android-car-lib/res/values-ky/values-ky.xml b/android-car-lib/res/values-ky/values-ky.xml
deleted file mode 100644
index eb5b9dc..0000000
--- a/android-car-lib/res/values-ky/values-ky.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Жолго көңүл буруңуз"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-ky/values.xml b/android-car-lib/res/values-ky/values.xml
deleted file mode 100644
index 5a48f45..0000000
--- a/android-car-lib/res/values-ky/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Жайып көрсөтүү/жыйыштыруу баскычы"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Жолго көңүл буруңуз"</string>
-</resources>
diff --git a/android-car-lib/res/values-lo/values-lo.xml b/android-car-lib/res/values-lo/values-lo.xml
deleted file mode 100644
index 332f827..0000000
--- a/android-car-lib/res/values-lo/values-lo.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"ຕັ້ງໃຈຂັບລົດ"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-lo/values.xml b/android-car-lib/res/values-lo/values.xml
deleted file mode 100644
index 96a8c09..0000000
--- a/android-car-lib/res/values-lo/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"ປຸ່ມຂະຫຍາຍ/ຫຍໍ້ລົງ"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"ຕັ້ງໃຈຂັບລົດ"</string>
-</resources>
diff --git a/android-car-lib/res/values-lt/values-lt.xml b/android-car-lib/res/values-lt/values-lt.xml
deleted file mode 100644
index cad45a9..0000000
--- a/android-car-lib/res/values-lt/values-lt.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Sutelkite dėmesį į kelią"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-lt/values.xml b/android-car-lib/res/values-lt/values.xml
deleted file mode 100644
index d77e8b0..0000000
--- a/android-car-lib/res/values-lt/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Mygtukas „Išskleisti / sutraukti“"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Sutelkite dėmesį į kelią"</string>
-</resources>
diff --git a/android-car-lib/res/values-lv/values-lv.xml b/android-car-lib/res/values-lv/values-lv.xml
deleted file mode 100644
index fa8b02b..0000000
--- a/android-car-lib/res/values-lv/values-lv.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Pievērsieties autovadīšanai"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-lv/values.xml b/android-car-lib/res/values-lv/values.xml
deleted file mode 100644
index a29444b..0000000
--- a/android-car-lib/res/values-lv/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Izvēršanas/sakļaušanas poga"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Pievērsieties ceļam"</string>
-</resources>
diff --git a/android-car-lib/res/values-mk/values-mk.xml b/android-car-lib/res/values-mk/values-mk.xml
deleted file mode 100644
index a1fec3e..0000000
--- a/android-car-lib/res/values-mk/values-mk.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Фокусирајте се на патот"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-mk/values.xml b/android-car-lib/res/values-mk/values.xml
deleted file mode 100644
index ae4ceb5..0000000
--- a/android-car-lib/res/values-mk/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Копче за проширување/собирање"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Фокусирајте се на патот"</string>
-</resources>
diff --git a/android-car-lib/res/values-ml/values-ml.xml b/android-car-lib/res/values-ml/values-ml.xml
deleted file mode 100644
index 0301e61..0000000
--- a/android-car-lib/res/values-ml/values-ml.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"റോഡിൽ ശ്രദ്ധിക്കുക"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-ml/values.xml b/android-car-lib/res/values-ml/values.xml
deleted file mode 100644
index 5399293..0000000
--- a/android-car-lib/res/values-ml/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"വികസിപ്പിക്കുക/ചുരുക്കുക ബട്ടൺ"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"റോഡിൽ ശ്രദ്ധിക്കുക"</string>
-</resources>
diff --git a/android-car-lib/res/values-mn/values-mn.xml b/android-car-lib/res/values-mn/values-mn.xml
deleted file mode 100644
index 3d2a53f..0000000
--- a/android-car-lib/res/values-mn/values-mn.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Зам дээр төвлөрөх"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-mn/values.xml b/android-car-lib/res/values-mn/values.xml
deleted file mode 100644
index abe78f1..0000000
--- a/android-car-lib/res/values-mn/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Дэлгэх/буулгах товчлуур"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Зам дээр анхаарлаа төвлөрүүлэх"</string>
-</resources>
diff --git a/android-car-lib/res/values-mr/values-mr.xml b/android-car-lib/res/values-mr/values-mr.xml
deleted file mode 100644
index 9f9dfa7..0000000
--- a/android-car-lib/res/values-mr/values-mr.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"रस्त्यावर फोकस करा"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-mr/values.xml b/android-car-lib/res/values-mr/values.xml
deleted file mode 100644
index 77e890f..0000000
--- a/android-car-lib/res/values-mr/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"बटण विस्‍तृत करा/कोलॅप्‍स करा"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"रस्त्यावर फोकस करा"</string>
-</resources>
diff --git a/android-car-lib/res/values-ms/values-ms.xml b/android-car-lib/res/values-ms/values-ms.xml
deleted file mode 100644
index f5e24b5..0000000
--- a/android-car-lib/res/values-ms/values-ms.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Beri tumpuan pada jalan raya"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-ms/values.xml b/android-car-lib/res/values-ms/values.xml
deleted file mode 100644
index d04485b..0000000
--- a/android-car-lib/res/values-ms/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Butang kembangkan/runtuhkan"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Beri tumpuan pada jalan raya"</string>
-</resources>
diff --git a/android-car-lib/res/values-my/values-my.xml b/android-car-lib/res/values-my/values-my.xml
deleted file mode 100644
index 617468e..0000000
--- a/android-car-lib/res/values-my/values-my.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"လမ်းကို အာရုံစိုက်ရန်"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-my/values.xml b/android-car-lib/res/values-my/values.xml
deleted file mode 100644
index be8c9fc..0000000
--- a/android-car-lib/res/values-my/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"ချဲ့ရန်/လျှော့ပြရန် ခလုတ်"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"လမ်းပေါ်တွင် အာရုံစိုက်ပါ"</string>
-</resources>
diff --git a/android-car-lib/res/values-nb/values-nb.xml b/android-car-lib/res/values-nb/values-nb.xml
deleted file mode 100644
index 7f50f78..0000000
--- a/android-car-lib/res/values-nb/values-nb.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Fokuser på veien"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-nb/values.xml b/android-car-lib/res/values-nb/values.xml
deleted file mode 100644
index 5575a1a..0000000
--- a/android-car-lib/res/values-nb/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Vis/skjul-knapp"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Fokuser på veien"</string>
-</resources>
diff --git a/android-car-lib/res/values-ne/values-ne.xml b/android-car-lib/res/values-ne/values-ne.xml
deleted file mode 100644
index 91acb81..0000000
--- a/android-car-lib/res/values-ne/values-ne.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"सडकमा ध्यान केन्द्रित गर्नु…"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-ne/values.xml b/android-car-lib/res/values-ne/values.xml
deleted file mode 100644
index b366be2..0000000
--- a/android-car-lib/res/values-ne/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"विस्तृत/संक्षिप्त गर्ने बटन"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"सडकमा ध्यान केन्द्रित गर्नुहोस्"</string>
-</resources>
diff --git a/android-car-lib/res/values-night-v8/values-night-v8.xml b/android-car-lib/res/values-night-v8/values-night-v8.xml
deleted file mode 100644
index e9a243a..0000000
--- a/android-car-lib/res/values-night-v8/values-night-v8.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <color name="car_accent">@color/car_accent_light</color>
-    <color name="car_action1">@color/car_action1_light</color>
-    <color name="car_body1">@color/car_body1_light</color>
-    <color name="car_body2">@color/car_body2_light</color>
-    <color name="car_body3">@color/car_body3_light</color>
-    <color name="car_body4">@color/car_body4_light</color>
-    <color name="car_card">@color/car_card_dark</color>
-    <color name="car_card_inverse">@color/car_card_light</color>
-    <color name="car_card_ripple_background">@color/car_card_ripple_background_light</color>
-    <color name="car_card_ripple_background_inverse">@color/car_card_ripple_background_dark</color>
-    <color name="car_headline1">@color/car_headline1_light</color>
-    <color name="car_headline2">@color/car_headline2_light</color>
-    <color name="car_headline3">@color/car_headline3_light</color>
-    <color name="car_headline4">@color/car_headline4_light</color>
-    <color name="car_label1">@color/car_label1_light</color>
-    <color name="car_list_divider">@color/car_list_divider_light</color>
-    <color name="car_list_divider_inverse">@color/car_list_divider_dark</color>
-    <color name="car_scrollbar_thumb">@color/car_scrollbar_thumb_light</color>
-    <color name="car_scrollbar_thumb_inverse">@color/car_scrollbar_thumb_dark</color>
-    <color name="car_tint">@color/car_tint_light</color>
-    <color name="car_tint_inverse">@color/car_tint_dark</color>
-    <color name="car_title">@color/car_title_light</color>
-    <color name="car_title2">@color/car_title2_light</color>
-    <color name="speed_bump_background">#FF4C4C4C</color>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-nl/values-nl.xml b/android-car-lib/res/values-nl/values-nl.xml
deleted file mode 100644
index 756b53d..0000000
--- a/android-car-lib/res/values-nl/values-nl.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Houd je aandacht op de weg"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-nl/values.xml b/android-car-lib/res/values-nl/values.xml
deleted file mode 100644
index de8f173..0000000
--- a/android-car-lib/res/values-nl/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Knop voor uitvouwen/samenvouwen"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Houd je aandacht op de weg"</string>
-</resources>
diff --git a/android-car-lib/res/values-or/values.xml b/android-car-lib/res/values-or/values.xml
deleted file mode 100644
index 1836305..0000000
--- a/android-car-lib/res/values-or/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"ବିସ୍ତାର/ସଂକୋଚନ ବଟନ୍"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"ରାସ୍ତା ଉପରେ ଧ୍ୟାନରଖନ୍ତୁ"</string>
-</resources>
diff --git a/android-car-lib/res/values-pa/values-pa.xml b/android-car-lib/res/values-pa/values-pa.xml
deleted file mode 100644
index 8aec306..0000000
--- a/android-car-lib/res/values-pa/values-pa.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"ਸੜਕ \'ਤੇ ਧਿਆਨ ਦਿਓ"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-pa/values.xml b/android-car-lib/res/values-pa/values.xml
deleted file mode 100644
index c4369d3..0000000
--- a/android-car-lib/res/values-pa/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"ਵਿਸਤਾਰ ਕਰੋ ਜਾਂ ਸਮੇਟੋ ਬਟਨ"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"ਸੜਕ \'ਤੇ ਧਿਆਨ ਦਿਓ"</string>
-</resources>
diff --git a/android-car-lib/res/values-pl/values-pl.xml b/android-car-lib/res/values-pl/values-pl.xml
deleted file mode 100644
index 32a3af6..0000000
--- a/android-car-lib/res/values-pl/values-pl.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Skup się na drodze"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-pl/values.xml b/android-car-lib/res/values-pl/values.xml
deleted file mode 100644
index 0373349..0000000
--- a/android-car-lib/res/values-pl/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Przycisk zwijania/rozwijania"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Skup się na drodze"</string>
-</resources>
diff --git a/android-car-lib/res/values-pt-rBR/values-pt-rBR.xml b/android-car-lib/res/values-pt-rBR/values-pt-rBR.xml
deleted file mode 100644
index 01c5f31..0000000
--- a/android-car-lib/res/values-pt-rBR/values-pt-rBR.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Foco na estrada"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-pt-rPT/values-pt-rPT.xml b/android-car-lib/res/values-pt-rPT/values-pt-rPT.xml
deleted file mode 100644
index 9cc59bc..0000000
--- a/android-car-lib/res/values-pt-rPT/values-pt-rPT.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Concentre-se na estrada."</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-pt-rPT/values.xml b/android-car-lib/res/values-pt-rPT/values.xml
deleted file mode 100644
index 85c248a..0000000
--- a/android-car-lib/res/values-pt-rPT/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Botão Expandir/reduzir"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Concentre-se na estrada"</string>
-</resources>
diff --git a/android-car-lib/res/values-pt/values-pt.xml b/android-car-lib/res/values-pt/values-pt.xml
deleted file mode 100644
index 01c5f31..0000000
--- a/android-car-lib/res/values-pt/values-pt.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Foco na estrada"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-pt/values.xml b/android-car-lib/res/values-pt/values.xml
deleted file mode 100644
index 8d7071d..0000000
--- a/android-car-lib/res/values-pt/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Botão \"Expandir/Recolher\""</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Foco na estrada"</string>
-</resources>
diff --git a/android-car-lib/res/values-ro/values-ro.xml b/android-car-lib/res/values-ro/values-ro.xml
deleted file mode 100644
index 72b3ef7..0000000
--- a/android-car-lib/res/values-ro/values-ro.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Concentrați-vă asupra drumului"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-ro/values.xml b/android-car-lib/res/values-ro/values.xml
deleted file mode 100644
index 4a40973..0000000
--- a/android-car-lib/res/values-ro/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Butonul de extindere/restrângere"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Concentrați-vă asupra drumului"</string>
-</resources>
diff --git a/android-car-lib/res/values-ru/values-ru.xml b/android-car-lib/res/values-ru/values-ru.xml
deleted file mode 100644
index 96f1b8f..0000000
--- a/android-car-lib/res/values-ru/values-ru.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Следите за дорогой"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-ru/values.xml b/android-car-lib/res/values-ru/values.xml
deleted file mode 100644
index 82def43..0000000
--- a/android-car-lib/res/values-ru/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Кнопка \"Развернуть/свернуть\""</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Следите за дорогой"</string>
-</resources>
diff --git a/android-car-lib/res/values-si/values-si.xml b/android-car-lib/res/values-si/values-si.xml
deleted file mode 100644
index 53aeba6..0000000
--- a/android-car-lib/res/values-si/values-si.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"මාර්ගයට අවධානය යොමු කරන්න"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-si/values.xml b/android-car-lib/res/values-si/values.xml
deleted file mode 100644
index d841b61..0000000
--- a/android-car-lib/res/values-si/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"දිග හැරීමේ/හැකිළීමේ බොත්තම"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"මාර්ගයට අවධානය යොමු කරන්න"</string>
-</resources>
diff --git a/android-car-lib/res/values-sk/values-sk.xml b/android-car-lib/res/values-sk/values-sk.xml
deleted file mode 100644
index 20634da..0000000
--- a/android-car-lib/res/values-sk/values-sk.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Sústreďte sa na cestu"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-sk/values.xml b/android-car-lib/res/values-sk/values.xml
deleted file mode 100644
index cd78105..0000000
--- a/android-car-lib/res/values-sk/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Tlačidlo rozbalenia/zbalenia"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Sústreďte sa na cestu"</string>
-</resources>
diff --git a/android-car-lib/res/values-sl/values-sl.xml b/android-car-lib/res/values-sl/values-sl.xml
deleted file mode 100644
index 6a8dd70..0000000
--- a/android-car-lib/res/values-sl/values-sl.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Glejte na cesto"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-sl/values.xml b/android-car-lib/res/values-sl/values.xml
deleted file mode 100644
index db5e068..0000000
--- a/android-car-lib/res/values-sl/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Gumb za razširitev/strnitev"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Glejte na cesto"</string>
-</resources>
diff --git a/android-car-lib/res/values-sq/values-sq.xml b/android-car-lib/res/values-sq/values-sq.xml
deleted file mode 100644
index 2079f47..0000000
--- a/android-car-lib/res/values-sq/values-sq.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Përqendrohu te rruga"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-sq/values.xml b/android-car-lib/res/values-sq/values.xml
deleted file mode 100644
index e72a586..0000000
--- a/android-car-lib/res/values-sq/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Butoni i zgjerimit/palosjes"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Përqendrohu te rruga"</string>
-</resources>
diff --git a/android-car-lib/res/values-sr/values-sr.xml b/android-car-lib/res/values-sr/values-sr.xml
deleted file mode 100644
index 428dcc6..0000000
--- a/android-car-lib/res/values-sr/values-sr.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Фокусирајте се на пут"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-sr/values.xml b/android-car-lib/res/values-sr/values.xml
deleted file mode 100644
index 2c6b1ea..0000000
--- a/android-car-lib/res/values-sr/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Дугме Прошири/скупи"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Фокусирајте се на пут"</string>
-</resources>
diff --git a/android-car-lib/res/values-sv/values-sv.xml b/android-car-lib/res/values-sv/values-sv.xml
deleted file mode 100644
index b63afe6..0000000
--- a/android-car-lib/res/values-sv/values-sv.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Fokusera på körningen"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-sv/values.xml b/android-car-lib/res/values-sv/values.xml
deleted file mode 100644
index d7a7ca4..0000000
--- a/android-car-lib/res/values-sv/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Knappen Utöka/komprimera"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Fokusera på körningen"</string>
-</resources>
diff --git a/android-car-lib/res/values-sw/values-sw.xml b/android-car-lib/res/values-sw/values-sw.xml
deleted file mode 100644
index 4b3d68a..0000000
--- a/android-car-lib/res/values-sw/values-sw.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Tia makini barabarani"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-sw/values.xml b/android-car-lib/res/values-sw/values.xml
deleted file mode 100644
index dfb951c..0000000
--- a/android-car-lib/res/values-sw/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Kitufe cha kupanua/kukunja"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Makinika barabarani"</string>
-</resources>
diff --git a/android-car-lib/res/values-ta/values-ta.xml b/android-car-lib/res/values-ta/values-ta.xml
deleted file mode 100644
index 0718f29..0000000
--- a/android-car-lib/res/values-ta/values-ta.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"வாகனம் ஓட்டும்போது கவனம் தேவை"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-ta/values.xml b/android-car-lib/res/values-ta/values.xml
deleted file mode 100644
index 2a7bf98..0000000
--- a/android-car-lib/res/values-ta/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"விரிவாக்குவதற்கான/சுருக்குவதற்கான பட்டன்"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"வாகனம் ஓட்டும்போது கவனம் தேவை"</string>
-</resources>
diff --git a/android-car-lib/res/values-te/values-te.xml b/android-car-lib/res/values-te/values-te.xml
deleted file mode 100644
index c4d7d3e..0000000
--- a/android-car-lib/res/values-te/values-te.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"రహదారిపై దృష్టి ఉంచండి"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-te/values.xml b/android-car-lib/res/values-te/values.xml
deleted file mode 100644
index 082ee94..0000000
--- a/android-car-lib/res/values-te/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"విస్తరించు/కుదించు బటన్"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"రహదారిపై దృష్టి ఉంచండి"</string>
-</resources>
diff --git a/android-car-lib/res/values-th/values-th.xml b/android-car-lib/res/values-th/values-th.xml
deleted file mode 100644
index e3fb94f..0000000
--- a/android-car-lib/res/values-th/values-th.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"จดจ่อกับถนน"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-th/values.xml b/android-car-lib/res/values-th/values.xml
deleted file mode 100644
index 4c7f8ce..0000000
--- a/android-car-lib/res/values-th/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"ปุ่มขยาย/ยุบ"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"จดจ่อกับถนน"</string>
-</resources>
diff --git a/android-car-lib/res/values-tl/values-tl.xml b/android-car-lib/res/values-tl/values-tl.xml
deleted file mode 100644
index 332c15c..0000000
--- a/android-car-lib/res/values-tl/values-tl.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Tumuon sa kalsada"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-tl/values.xml b/android-car-lib/res/values-tl/values.xml
deleted file mode 100644
index 674ffb1..0000000
--- a/android-car-lib/res/values-tl/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Button na i-expand/i-collapse"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Tumuon sa kalsada"</string>
-</resources>
diff --git a/android-car-lib/res/values-tr/values-tr.xml b/android-car-lib/res/values-tr/values-tr.xml
deleted file mode 100644
index 5f66ef3..0000000
--- a/android-car-lib/res/values-tr/values-tr.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Dikkatinizi yola verin"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-tr/values.xml b/android-car-lib/res/values-tr/values.xml
deleted file mode 100644
index dde5e18..0000000
--- a/android-car-lib/res/values-tr/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Genişlet/daralt düğmesi"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Dikkatinizi yola verin"</string>
-</resources>
diff --git a/android-car-lib/res/values-uk/values-uk.xml b/android-car-lib/res/values-uk/values-uk.xml
deleted file mode 100644
index 472d178..0000000
--- a/android-car-lib/res/values-uk/values-uk.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Зосередьтеся на дорозі"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-uk/values.xml b/android-car-lib/res/values-uk/values.xml
deleted file mode 100644
index e277cc5..0000000
--- a/android-car-lib/res/values-uk/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Кнопка \"Розгорнути або згорнути\""</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Зосередьтеся на дорозі"</string>
-</resources>
diff --git a/android-car-lib/res/values-ur/values-ur.xml b/android-car-lib/res/values-ur/values-ur.xml
deleted file mode 100644
index 6f13ae2..0000000
--- a/android-car-lib/res/values-ur/values-ur.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"سڑک پر توجہ مرکوز کریں"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-ur/values.xml b/android-car-lib/res/values-ur/values.xml
deleted file mode 100644
index 70659bf..0000000
--- a/android-car-lib/res/values-ur/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"پھیلائیں/سکیڑیں بٹن"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"سڑک پر توجہ مرکوز کریں"</string>
-</resources>
diff --git a/android-car-lib/res/values-uz/values-uz.xml b/android-car-lib/res/values-uz/values-uz.xml
deleted file mode 100644
index cb5f3aa..0000000
--- a/android-car-lib/res/values-uz/values-uz.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Diqqatingizni yo‘lga qarating"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-uz/values.xml b/android-car-lib/res/values-uz/values.xml
deleted file mode 100644
index e9c7755..0000000
--- a/android-car-lib/res/values-uz/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Yoyish/yig‘ish tugmasi"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Diqqatingizni yo‘lga qarating"</string>
-</resources>
diff --git a/android-car-lib/res/values-vi/values-vi.xml b/android-car-lib/res/values-vi/values-vi.xml
deleted file mode 100644
index cecbeac..0000000
--- a/android-car-lib/res/values-vi/values-vi.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Tập trung vào đường đi"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-vi/values.xml b/android-car-lib/res/values-vi/values.xml
deleted file mode 100644
index 070849e..0000000
--- a/android-car-lib/res/values-vi/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Nút mở rộng/thu gọn"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Tập trung vào đường đi"</string>
-</resources>
diff --git a/android-car-lib/res/values-w1280dp-v13/values-w1280dp-v13.xml b/android-car-lib/res/values-w1280dp-v13/values-w1280dp-v13.xml
deleted file mode 100644
index e5d29e6..0000000
--- a/android-car-lib/res/values-w1280dp-v13/values-w1280dp-v13.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <dimen name="car_keyline_4">182dp</dimen>
-    <dimen name="car_keyline_4_neg">-182dp</dimen>
-    <dimen name="car_margin">148dp</dimen>
-    <integer name="car_dialog_column_number">8</integer>
-    <integer name="column_card_default_column_span">8</integer>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-w1920dp-v13/values-w1920dp-v13.xml b/android-car-lib/res/values-w1920dp-v13/values-w1920dp-v13.xml
deleted file mode 100644
index bcffcfa..0000000
--- a/android-car-lib/res/values-w1920dp-v13/values-w1920dp-v13.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <dimen name="car_gutter_size">32dp</dimen>
-    <dimen name="car_keyline_1">48dp</dimen>
-    <dimen name="car_keyline_1_keyline_3_diff">104dp</dimen>
-    <dimen name="car_keyline_1_neg">-48dp</dimen>
-    <dimen name="car_keyline_3">152dp</dimen>
-    <dimen name="car_keyline_3_neg">-152dp</dimen>
-    <dimen name="car_margin">192dp</dimen>
-    <integer name="car_column_number">16</integer>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-w690dp-v13/values-w690dp-v13.xml b/android-car-lib/res/values-w690dp-v13/values-w690dp-v13.xml
deleted file mode 100644
index 19864c5..0000000
--- a/android-car-lib/res/values-w690dp-v13/values-w690dp-v13.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <dimen name="car_margin">112dp</dimen>
-    <integer name="car_column_number">12</integer>
-    <integer name="car_dialog_column_number">10</integer>
-    <integer name="car_slide_up_menu_column_number">12</integer>
-    <integer name="column_card_default_column_span">12</integer>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-w930dp-v13/values-w930dp-v13.xml b/android-car-lib/res/values-w930dp-v13/values-w930dp-v13.xml
deleted file mode 100644
index 363170c..0000000
--- a/android-car-lib/res/values-w930dp-v13/values-w930dp-v13.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <dimen name="car_gutter_size">24dp</dimen>
-    <dimen name="car_keyline_1">32dp</dimen>
-    <dimen name="car_keyline_1_keyline_3_diff">96dp</dimen>
-    <dimen name="car_keyline_1_neg">-32dp</dimen>
-    <dimen name="car_keyline_2">108dp</dimen>
-    <dimen name="car_keyline_2_neg">-108dp</dimen>
-    <dimen name="car_keyline_3">128dp</dimen>
-    <dimen name="car_keyline_3_neg">-128dp</dimen>
-    <dimen name="car_keyline_4">168dp</dimen>
-    <dimen name="car_keyline_4_neg">-168dp</dimen>
-    <integer name="car_dialog_column_number">10</integer>
-    <integer name="column_card_default_column_span">10</integer>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-zh-rCN/values-zh-rCN.xml b/android-car-lib/res/values-zh-rCN/values-zh-rCN.xml
deleted file mode 100644
index e3ac7a1..0000000
--- a/android-car-lib/res/values-zh-rCN/values-zh-rCN.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"请专心驾驶"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-zh-rCN/values.xml b/android-car-lib/res/values-zh-rCN/values.xml
deleted file mode 100644
index 5347850..0000000
--- a/android-car-lib/res/values-zh-rCN/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"“展开”/“收起”按钮"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"请专心驾驶"</string>
-</resources>
diff --git a/android-car-lib/res/values-zh-rHK/values-zh-rHK.xml b/android-car-lib/res/values-zh-rHK/values-zh-rHK.xml
deleted file mode 100644
index 37107e1..0000000
--- a/android-car-lib/res/values-zh-rHK/values-zh-rHK.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"請專心駕駛"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-zh-rHK/values.xml b/android-car-lib/res/values-zh-rHK/values.xml
deleted file mode 100644
index b190714..0000000
--- a/android-car-lib/res/values-zh-rHK/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"展開/收合按鈕"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"請專心駕駛"</string>
-</resources>
diff --git a/android-car-lib/res/values-zh-rTW/values-zh-rTW.xml b/android-car-lib/res/values-zh-rTW/values-zh-rTW.xml
deleted file mode 100644
index 37107e1..0000000
--- a/android-car-lib/res/values-zh-rTW/values-zh-rTW.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"請專心駕駛"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-zh-rTW/values.xml b/android-car-lib/res/values-zh-rTW/values.xml
deleted file mode 100644
index b190714..0000000
--- a/android-car-lib/res/values-zh-rTW/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"展開/收合按鈕"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"請專心駕駛"</string>
-</resources>
diff --git a/android-car-lib/res/values-zu/values-zu.xml b/android-car-lib/res/values-zu/values-zu.xml
deleted file mode 100644
index 1f93364..0000000
--- a/android-car-lib/res/values-zu/values-zu.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string msgid="5405697774899378511" name="speed_bump_lockout_message">"Gxila emgwaqweni"</string>
-</resources>
\ No newline at end of file
diff --git a/android-car-lib/res/values-zu/values.xml b/android-car-lib/res/values-zu/values.xml
deleted file mode 100644
index 0646429..0000000
--- a/android-car-lib/res/values-zu/values.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_bar_expand_collapse_button" msgid="2901704611804567760">"Inkinobho yokunweba/ukugoqa"</string>
-    <string name="speed_bump_lockout_message" msgid="4050134640025645838">"Gxila emgwaqeni"</string>
-</resources>
diff --git a/android-car-lib/res/values/values.xml b/android-car-lib/res/values/values.xml
deleted file mode 100644
index 0ae2c80..0000000
--- a/android-car-lib/res/values/values.xml
+++ /dev/null
@@ -1,546 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <color name="car_accent">@color/car_accent_dark</color>
-    <color name="car_accent_dark">@color/car_teal_700</color>
-    <color name="car_accent_light">@color/car_teal_200</color>
-    <color name="car_action1">@color/car_action1_dark</color>
-    <color name="car_action1_dark">@color/car_grey_50</color>
-    <color name="car_action1_light">@color/car_grey_900</color>
-    <color name="car_blue_300">#ff91a7ff</color>
-    <color name="car_blue_500">#ff5677fc</color>
-    <color name="car_blue_grey_800">#ff37474F</color>
-    <color name="car_blue_grey_900">#ff263238</color>
-    <color name="car_body1">@color/car_body1_dark</color>
-    <color name="car_body1_dark">@color/car_grey_900</color>
-    <color name="car_body1_light">@color/car_grey_100</color>
-    <color name="car_body2">@color/car_body2_dark</color>
-    <color name="car_body2_dark">@color/car_grey_650</color>
-    <color name="car_body2_light">@color/car_grey_300</color>
-    <color name="car_body3">@color/car_body3_dark</color>
-    <color name="car_body3_dark">@android:color/black</color>
-    <color name="car_body3_light">@android:color/white</color>
-    <color name="car_body4">@color/car_body4_dark</color>
-    <color name="car_body4_dark">@android:color/black</color>
-    <color name="car_body4_light">@android:color/white</color>
-    <color name="car_card">@color/car_card_light</color>
-    <color name="car_card_dark">@color/car_dark_blue_grey_700</color>
-    <color name="car_card_inverse">@color/car_card_dark</color>
-    <color name="car_card_light">@color/car_grey_50</color>
-    <color name="car_card_ripple_background">@color/car_card_ripple_background_dark</color>
-    <color name="car_card_ripple_background_dark">#8F000000</color>
-    <color name="car_card_ripple_background_inverse">@color/car_card_ripple_background_light</color>
-    <color name="car_card_ripple_background_light">#27ffffff</color>
-    <color name="car_dark_blue_grey_1000">#ff090c0f</color>
-    <color name="car_dark_blue_grey_600">#ff1d272d</color>
-    <color name="car_dark_blue_grey_700">#ff172026</color>
-    <color name="car_dark_blue_grey_800">#ff11181d</color>
-    <color name="car_dark_blue_grey_900">#ff0c1013</color>
-    <color name="car_green_500">#ff0f9d58</color>
-    <color name="car_green_700">#ff0b8043</color>
-    <color name="car_grey_100">#fff5f5f5</color>
-    <color name="car_grey_1000">#cc000000</color>
-    <color name="car_grey_200">#ffeeeeee</color>
-    <color name="car_grey_300">#ffe0e0e0</color>
-    <color name="car_grey_400">#ffbdbdbd</color>
-    <color name="car_grey_50">#fffafafa</color>
-    <color name="car_grey_500">#ff9e9e9e</color>
-    <color name="car_grey_600">#ff757575</color>
-    <color name="car_grey_650">#ff6B6B6B</color>
-    <color name="car_grey_700">#ff616161</color>
-    <color name="car_grey_800">#ff424242</color>
-    <color name="car_grey_900">#ff212121</color>
-    <color name="car_headline1">@color/car_headline1_dark</color>
-    <color name="car_headline1_dark">@color/car_grey_800</color>
-    <color name="car_headline1_light">@color/car_grey_100</color>
-    <color name="car_headline2">@color/car_headline2_dark</color>
-    <color name="car_headline2_dark">@color/car_grey_900</color>
-    <color name="car_headline2_light">@color/car_grey_100</color>
-    <color name="car_headline3">@color/car_headline3_dark</color>
-    <color name="car_headline3_dark">@color/car_grey_900</color>
-    <color name="car_headline3_light">@android:color/white</color>
-    <color name="car_headline4">@color/car_headline4_dark</color>
-    <color name="car_headline4_dark">@android:color/black</color>
-    <color name="car_headline4_light">@android:color/white</color>
-    <color name="car_highlight">@color/car_highlight_light</color>
-    <color name="car_highlight_dark">@color/car_teal_200</color>
-    <color name="car_highlight_light">@color/car_teal_700</color>
-    <color name="car_indigo_800">#ff283593</color>
-    <color name="car_label1">@color/car_label1_dark</color>
-    <color name="car_label1_dark">@color/car_grey_900</color>
-    <color name="car_label1_light">@color/car_grey_50</color>
-    <color name="car_light_blue_300">#ff4fc3f7</color>
-    <color name="car_light_blue_500">#ff03A9F4</color>
-    <color name="car_light_blue_600">#ff039be5</color>
-    <color name="car_light_blue_700">#ff0288d1</color>
-    <color name="car_light_blue_800">#ff0277bd</color>
-    <color name="car_light_blue_900">#ff01579b</color>
-    <color name="car_list_divider">@color/car_list_divider_dark</color>
-    <color name="car_list_divider_dark">#1f000000</color>
-    <color name="car_list_divider_inverse">@color/car_list_divider_light</color>
-    <color name="car_list_divider_light">#1fffffff</color>
-    <color name="car_list_header">@color/car_blue_500</color>
-    <color name="car_red_400">#ffe06055</color>
-    <color name="car_red_500">#ffdb4437</color>
-    <color name="car_red_500a">#ffd50000</color>
-    <color name="car_red_700">#ffc53929</color>
-    <color name="car_scrollbar_thumb">@color/car_scrollbar_thumb_dark</color>
-    <color name="car_scrollbar_thumb_dark">#7f0b0f12</color>
-    <color name="car_scrollbar_thumb_inverse">@color/car_scrollbar_thumb_light</color>
-    <color name="car_scrollbar_thumb_light">#99ffffff</color>
-    <color name="car_seekbar_track_background">@color/car_seekbar_track_background_dark</color>
-    <color name="car_seekbar_track_background_dark">@color/car_grey_700</color>
-    <color name="car_seekbar_track_background_inverse"> @color/car_seekbar_track_background_light
-    </color>
-    <color name="car_seekbar_track_background_light">@color/car_grey_400</color>
-    <color name="car_teal_200">#ff80cbc4</color>
-    <color name="car_teal_700">#ff00796b</color>
-    <color name="car_tint">@color/car_tint_dark</color>
-    <color name="car_tint_dark">@color/car_grey_900</color>
-    <color name="car_tint_inverse">@color/car_tint_light</color>
-    <color name="car_tint_light">@color/car_grey_50</color>
-    <color name="car_title">@color/car_title_dark</color>
-    <color name="car_title2">@color/car_title2_dark</color>
-    <color name="car_title2_dark">@color/car_grey_900</color>
-    <color name="car_title2_light">@color/car_grey_100</color>
-    <color name="car_title_dark">@color/car_grey_900</color>
-    <color name="car_title_light">@color/car_grey_100</color>
-    <color name="car_white_1000">#1effffff</color>
-    <color name="car_yellow_500">#fff4b400</color>
-    <color name="car_yellow_800">#ffee8100</color>
-    <color name="speed_bump_background">#FFD0D0D0</color>
-    <declare-styleable name="ActionBar"><attr format="integer" name="columns"/></declare-styleable>
-    <declare-styleable name="CarTheme"><attr format="reference" name="carDialogTheme"/><attr format="reference" name="pagedListViewStyle"/><attr format="reference" name="listItemStyle"/><attr format="color" name="dialogBackgroundColor"/><attr format="reference" name="dialogTitleStyle"/><attr format="reference" name="dialogBodyStyle"/><attr format="reference" name="dialogButtonStyle"/><attr format="reference" name="dialogListTheme"/><attr format="color" name="drawerBackgroundColor"/><attr format="color" name="drawerOpenHeaderColor"/><attr format="color" name="drawerClosedHeaderColor"/><attr format="reference" name="drawerItemTitleTextAppearance"/><attr format="reference" name="drawerItemBodyTextAppearance"/><attr format="reference" name="drawerListStyle"/></declare-styleable>
-    <declare-styleable name="ClickThroughToolbar"><attr format="boolean" name="clickThrough"/></declare-styleable>
-    <declare-styleable name="ColumnCardView"><attr format="integer" name="columnSpan"/></declare-styleable>
-    <declare-styleable name="DrawerArrowDrawable"><attr format="color" name="carArrowColor"/><attr format="boolean" name="carArrowAnimate"/><attr format="dimension" name="carArrowSize"/><attr format="dimension" name="carArrowHeadLength"/><attr format="dimension" name="carArrowShaftLength"/><attr format="dimension" name="carArrowThickness"/><attr format="dimension" name="carMenuBarSpacing"/><attr format="dimension" name="carMenuBarThickness"/></declare-styleable>
-    <declare-styleable name="ListItem"><attr format="color" name="listItemBackgroundColor"/><attr format="reference" name="listItemTitleTextAppearance"/><attr format="reference" name="listItemBodyTextAppearance"/></declare-styleable>
-    <declare-styleable name="PagedListView"><attr format="boolean" name="offsetScrollBar"/><attr format="enum" name="gutter">
-            
-            <enum name="none" value="0"/>
-            
-            <enum name="start" value="1"/>
-            
-            <enum name="end" value="2"/>
-            
-            <enum name="both" value="3"/>
-        </attr><attr format="dimension" name="gutterSize"/><attr format="boolean" name="scrollBarEnabled"/><attr format="dimension" name="scrollBarTopMargin"/><attr format="dimension" name="scrollBarContainerWidth"/><attr format="boolean" name="showPagedListViewDivider"/><attr format="reference" name="alignDividerStartTo"/><attr format="reference" name="alignDividerEndTo"/><attr format="dimension" name="dividerStartMargin"/><attr format="dimension" name="dividerEndMargin"/><attr format="color" name="listDividerColor"/><attr format="dimension" name="listEndMargin"/><attr format="dimension" name="itemSpacing"/><attr format="reference" name="upButtonIcon"/><attr format="reference" name="downButtonIcon"/><attr format="reference" name="listContentTopOffset"/><attr format="enum" name="dayNightStyle">
-            
-            <enum name="auto" value="0"/>
-            
-            <enum name="auto_inverse" value="1"/>
-            
-            <enum name="force_night" value="2"/>
-            
-            <enum name="force_day" value="3"/>
-        </attr></declare-styleable>
-    <dimen name="app_header_height">96dp</dimen>
-    <dimen name="car_action1_size">26sp</dimen>
-    <dimen name="car_action_bar_activation_ring_radius">64dp</dimen>
-    <dimen name="car_action_bar_activation_ring_stroke_width">3dp</dimen>
-    <dimen name="car_action_bar_button_height">128dp</dimen>
-    <dimen name="car_action_bar_button_ripple_radius">48dp</dimen>
-    <dimen name="car_action_bar_button_width">128dp</dimen>
-    <dimen name="car_action_bar_buttons_space">@dimen/car_padding_4</dimen>
-    <dimen name="car_action_bar_elevation">2dp</dimen>
-    <dimen name="car_action_bar_height">128dp</dimen>
-    <dimen name="car_action_bar_touch_ripple_size">38dp</dimen>
-    <dimen name="car_action_button_icon_inset">24dp</dimen>
-    <dimen name="car_action_button_ripple_inset">16dp</dimen>
-    <dimen name="car_alpha_jump_button_size">@dimen/car_scroll_bar_button_size</dimen>
-    <dimen name="car_app_bar_default_elevation">8dp</dimen>
-    <dimen name="car_app_bar_height">80dp</dimen>
-    <dimen name="car_arrow_head_length">18dp</dimen>
-    <dimen name="car_arrow_shaft_length">34dp</dimen>
-    <dimen name="car_arrow_size">96dp</dimen>
-    <dimen name="car_arrow_thickness">3dp</dimen>
-    <dimen name="car_avatar_size">56dp</dimen>
-    <dimen name="car_body1_size">32sp</dimen>
-    <dimen name="car_body2_size">26sp</dimen>
-    <dimen name="car_body3_size">16sp</dimen>
-    <dimen name="car_body4_size">14sp</dimen>
-    <dimen name="car_body5_size">18sp</dimen>
-    <dimen name="car_borderless_button_horizontal_padding">0dp</dimen>
-    <dimen name="car_button_height">56dp</dimen>
-    <dimen name="car_button_horizontal_padding">@dimen/car_padding_4</dimen>
-    <dimen name="car_button_min_width">158dp</dimen>
-    <dimen name="car_button_radius">@dimen/car_radius_1</dimen>
-    <dimen name="car_card_action_bar_height">76dp</dimen>
-    <dimen name="car_card_header_height">76dp</dimen>
-    <dimen name="car_dialog_action_bar_height">@dimen/car_card_action_bar_height</dimen>
-    <dimen name="car_dialog_elevation">16dp</dimen>
-    <dimen name="car_dialog_header_height">@dimen/car_card_header_height</dimen>
-    <dimen name="car_double_line_list_item_height">@dimen/car_single_line_list_item_height</dimen>
-    <dimen name="car_drawer_list_item_end_icon_size">56dp</dimen>
-    <dimen name="car_drawer_list_item_end_margin">32dp</dimen>
-    <dimen name="car_drawer_list_item_icon_end_margin">32dp</dimen>
-    <dimen name="car_drawer_list_item_icon_size">64dp</dimen>
-    <dimen name="car_drawer_list_item_small_icon_size">56dp</dimen>
-    <dimen name="car_drawer_margin_end">96dp</dimen>
-    <dimen name="car_drawer_progress_bar_size">48dp</dimen>
-    <dimen name="car_gutter_size">16dp</dimen>
-    <dimen name="car_headline1_size">45sp</dimen>
-    <dimen name="car_headline2_size">32sp</dimen>
-    <dimen name="car_headline3_size">24sp</dimen>
-    <dimen name="car_headline4_size">20sp</dimen>
-    <dimen name="car_keyline_1">24dp</dimen>
-    <dimen name="car_keyline_1_keyline_3_diff">88dp</dimen>
-    <dimen name="car_keyline_1_neg">-24dp</dimen>
-    <dimen name="car_keyline_2">96dp</dimen>
-    <dimen name="car_keyline_2_neg">-96dp</dimen>
-    <dimen name="car_keyline_3">112dp</dimen>
-    <dimen name="car_keyline_3_neg">-112dp</dimen>
-    <dimen name="car_keyline_4">148dp</dimen>
-    <dimen name="car_keyline_4_neg">-148dp</dimen>
-    <dimen name="car_label1_size">26sp</dimen>
-    <dimen name="car_last_card_peek_amount">16dp</dimen>
-    <dimen name="car_list_divider_height">1dp</dimen>
-    <dimen name="car_margin">20dp</dimen>
-    <dimen name="car_menu_bar_length">40dp</dimen>
-    <dimen name="car_menu_bar_spacing">6dp</dimen>
-    <dimen name="car_padding_0">4dp</dimen>
-    <dimen name="car_padding_1">10dp</dimen>
-    <dimen name="car_padding_2">12dp</dimen>
-    <dimen name="car_padding_3">16dp</dimen>
-    <dimen name="car_padding_4">20dp</dimen>
-    <dimen name="car_padding_5">40dp</dimen>
-    <dimen name="car_padding_6">64dp</dimen>
-    <dimen name="car_primary_icon_size">44dp</dimen>
-    <dimen name="car_progress_bar_height">@dimen/car_seekbar_height</dimen>
-    <dimen name="car_radius_1">4dp</dimen>
-    <dimen name="car_radius_2">8dp</dimen>
-    <dimen name="car_radius_3">16dp</dimen>
-    <dimen name="car_radius_5">100dp</dimen>
-    <dimen name="car_sample_row_height">128dp</dimen>
-    <dimen name="car_scroll_bar_button_size">56dp</dimen>
-    <dimen name="car_scroll_bar_thumb_width">6dp</dimen>
-    <dimen name="car_secondary_icon_size">24dp</dimen>
-    <dimen name="car_seekbar_height">6dp</dimen>
-    <dimen name="car_seekbar_thumb_size">20dp</dimen>
-    <dimen name="car_seekbar_thumb_stroke">1dp</dimen>
-    <dimen name="car_single_line_list_item_height">96dp</dimen>
-    <dimen name="car_slide_down_menu_initial_height">@dimen/car_slide_up_menu_initial_height</dimen>
-    <dimen name="car_slide_up_menu_initial_height">76dp</dimen>
-    <dimen name="car_sub_header_height">76dp</dimen>
-    <dimen name="car_text_input_line_height">2dp</dimen>
-    <dimen name="car_text_vertical_margin">2dp</dimen>
-    <dimen name="car_title2_size">32sp</dimen>
-    <dimen name="car_title_size">32sp</dimen>
-    <dimen name="car_touch_target_size">76dp</dimen>
-    <dimen name="car_vertical_line_divider_height">60dp</dimen>
-    <dimen name="car_vertical_line_divider_width">1dp</dimen>
-    <dimen name="speed_bump_lock_out_drawable_margin_bottom">8dp</dimen>
-    <dimen name="speed_bump_lock_out_message_height">96dp</dimen>
-    <integer name="car_action_bar_collapse_anim_duration">233</integer>
-    <integer name="car_action_bar_expand_anim_duration">333</integer>
-    <integer name="car_borderless_button_text_length_limit">20</integer>
-    <integer name="car_column_number">4</integer>
-    <integer name="car_dialog_column_number">10</integer>
-    <integer name="car_list_item_text_length_limit">120</integer>
-    <integer name="car_slide_up_menu_column_number">4</integer>
-    <integer name="column_card_default_column_span">4</integer>
-    <integer name="speed_bump_fade_duration_ms">167</integer>
-    <integer name="speed_bump_lock_out_color_change_ms">500</integer>
-    <integer name="speed_bump_lock_out_color_change_start_delay_ms">5433</integer>
-    <integer name="speed_bump_lock_out_duration_ms">5933</integer>
-    <integer name="speed_bump_translate_y_duration_ms">300</integer>
-    <string name="action_bar_expand_collapse_button">Expand/collapse button</string>
-    <string name="car_drawer_close" translatable="false">Close drawer</string>
-    <string name="car_drawer_open" translatable="false">Open drawer</string>
-    <string name="ellipsis" translatable="false">…</string>
-    <string name="speed_bump_lockout_message">Focus on the road</string>
-    <style name="CarListVerticalDivider">
-        <item name="android:layout_width">@dimen/car_vertical_line_divider_width</item>
-        <item name="android:layout_height">@dimen/car_vertical_line_divider_height</item>
-        <item name="android:layout_marginStart">@dimen/car_padding_4</item>
-        <item name="android:background">@color/car_list_divider</item>
-    </style>
-    <style name="TextAppearance.Car" parent="TextAppearance.AppCompat"/>
-    <style name="TextAppearance.Car.Body1">
-        <item name="android:textStyle">normal</item>
-        <item name="android:textSize">@dimen/car_body1_size</item>
-        <item name="android:textColor">@color/car_body1</item>
-    </style>
-    <style name="TextAppearance.Car.Body1.Dark">
-        <item name="android:textColor">@color/car_body2_dark</item>
-    </style>
-    <style name="TextAppearance.Car.Body1.Light">
-        <item name="android:textColor">@color/car_body1_light</item>
-    </style>
-    <style name="TextAppearance.Car.Body2">
-        <item name="android:textStyle">normal</item>
-        <item name="android:textSize">@dimen/car_body2_size</item>
-        <item name="android:textColor">@color/car_body2</item>
-    </style>
-    <style name="TextAppearance.Car.Body2.Dark">
-        <item name="android:textColor">@color/car_body2_dark</item>
-    </style>
-    <style name="TextAppearance.Car.Body2.Light">
-        <item name="android:textColor">@color/car_body2_light</item>
-    </style>
-    <style name="TextAppearance.Car.Body3">
-        <item name="android:textStyle">normal</item>
-        <item name="android:textSize">@dimen/car_body3_size</item>
-        <item name="android:textColor">@color/car_body3</item>
-    </style>
-    <style name="TextAppearance.Car.Body4">
-        <item name="android:textStyle">normal</item>
-        <item name="android:textSize">@dimen/car_body4_size</item>
-        <item name="android:textColor">@color/car_body4</item>
-    </style>
-    <style name="TextAppearance.Car.Headline1">
-        <item name="android:textStyle">normal</item>
-        <item name="android:textSize">@dimen/car_headline1_size</item>
-        <item name="android:textColor">@color/car_headline1</item>
-    </style>
-    <style name="TextAppearance.Car.Headline1.Dark">
-        <item name="android:textColor">@color/car_headline1_dark</item>
-    </style>
-    <style name="TextAppearance.Car.Headline1.Light">
-        <item name="android:textColor">@color/car_headline1_light</item>
-    </style>
-    <style name="TextAppearance.Car.Headline2">
-        <item name="android:textStyle">normal</item>
-        <item name="android:textSize">@dimen/car_headline2_size</item>
-        <item name="android:textColor">@color/car_headline2</item>
-    </style>
-    <style name="TextAppearance.Car.Headline3">
-        <item name="android:textStyle">normal</item>
-        <item name="android:textSize">@dimen/car_headline3_size</item>
-        <item name="android:textColor">@color/car_headline3</item>
-    </style>
-    <style name="TextAppearance.Car.Headline4">
-        <item name="android:textStyle">normal</item>
-        <item name="android:textSize">@dimen/car_headline4_size</item>
-        <item name="android:textColor">@color/car_headline4</item>
-    </style>
-    <style name="TextAppearance.Car.Hint" parent="TextAppearance.Car.Body2"/>
-    <style name="TextAppearance.Car.Label1">
-        <item name="android:textStyle">normal</item>
-        <item name="android:textSize">@dimen/car_label1_size</item>
-        <item name="android:textColor">@color/car_label1</item>
-    </style>
-    <style name="TextAppearance.Car.Title">
-        <item name="android:fontFamily">sans-serif-medium</item>
-        <item name="android:textStyle">normal</item>
-        <item name="android:textSize">@dimen/car_title_size</item>
-        <item name="android:textColor">@color/car_title</item>
-    </style>
-    <style name="TextAppearance.Car.Title.Dark">
-        <item name="android:textColor">@color/car_title_dark</item>
-    </style>
-    <style name="TextAppearance.Car.Title.Light">
-        <item name="android:textColor">@color/car_title_light</item>
-    </style>
-    <style name="TextAppearance.Car.Title2">
-        <item name="android:fontFamily">sans-serif-medium</item>
-        <item name="android:textStyle">normal</item>
-        <item name="android:textSize">@dimen/car_title2_size</item>
-        <item name="android:textColor">@color/car_title2</item>
-    </style>
-    <style name="TextAppearance.Car.Title2.Dark">
-        <item name="android:textColor">@color/car_title2_dark</item>
-    </style>
-    <style name="TextAppearance.Car.Title2.Light">
-        <item name="android:textColor">@color/car_title2_light</item>
-    </style>
-    <style name="Theme.Car.Dark.Dialog" parent="Theme.Car.Dialog">
-        <item name="dialogButtonStyle">@style/Widget.Car.Button.Borderless.Colored</item>
-        <item name="dialogBackgroundColor">@color/car_card_dark</item>
-        <item name="dialogListTheme">@style/Theme.Car.Light.List.DarkItems</item>
-        <item name="dialogTitleStyle">@style/Widget.Car.Dialog.Title.Light</item>
-        <item name="dialogBodyStyle">@style/Widget.Car.Dialog.Body.Light</item>
-    </style>
-    <style name="Theme.Car.Dark.Dialog.Alert" parent="Theme.Car.Dialog.Alert">
-        <item name="android:background">@color/car_card_dark</item>
-        <item name="android:listDividerAlertDialog">@drawable/car_list_divider_light</item>
-        <item name="android:textColorPrimary">@color/car_body2_light</item>
-        <item name="android:windowTitleStyle">@style/Widget.Car.Dialog.Title.Light</item>
-    </style>
-    <style name="Theme.Car.Dark.NoActionBar" parent="Theme.Car.NoActionBar">
-        <item name="android:alertDialogTheme">@style/Theme.Car.Dark.Dialog.Alert</item>
-        <item name="alertDialogTheme">@style/Theme.Car.Dark.Dialog.Alert</item>
-        <item name="carDialogTheme">@style/Theme.Car.Dark.Dialog</item>
-        <item name="pagedListViewStyle">@style/Widget.Car.Light.List.LightDivider</item>
-        <item name="listItemStyle">@style/Widget.Car.ListItem.Dark</item>
-    </style>
-    <style name="Theme.Car.Dark.NoActionBar.Drawer">
-        <item name="drawerArrowStyle">@style/Widget.Car.DrawerArrowToggle</item>
-        <item name="drawerBackgroundColor">@color/car_card_dark</item>
-        <item name="drawerOpenHeaderColor">@color/car_title2_light</item>
-        <item name="drawerClosedHeaderColor">@color/car_title2_light</item>
-        <item name="drawerItemTitleTextAppearance">@style/TextAppearance.Car.Body1.Light</item>
-        <item name="drawerItemBodyTextAppearance">@style/TextAppearance.Car.Body2.Light</item>
-        <item name="drawerListStyle">@style/Widget.Car.Light.List.LightDivider</item>
-    </style>
-    <style name="Theme.Car.Dialog" parent="Theme.AppCompat.Dialog">
-        <item name="android:windowIsTranslucent">true</item>
-        <item name="android:windowBackground">@android:color/transparent</item>
-        <item name="dialogButtonStyle">@style/Widget.Car.Button.Borderless.Colored</item>
-        <item name="dialogBackgroundColor">@color/car_card</item>
-        <item name="dialogListTheme">@style/Theme.Car.List</item>
-        <item name="dialogTitleStyle">@style/Widget.Car.Dialog.Title</item>
-        <item name="dialogBodyStyle">@style/Widget.Car.Dialog.Body</item>
-    </style>
-    <style name="Theme.Car.Dialog.Alert" parent="Theme.AppCompat.Dialog.Alert">
-        <item name="android:background">@color/car_card</item>
-        <item name="android:borderlessButtonStyle">@style/Widget.Car.Button.Borderless.Colored</item>
-        <item name="android:colorButtonNormal">@color/car_accent</item>
-        <item name="android:listDividerAlertDialog">@drawable/car_list_divider</item>
-        <item name="android:textColorPrimary">@color/car_body2</item>
-        <item name="android:windowTitleStyle">@style/Widget.Car.Dialog.Title</item>
-        <item name="buttonBarNeutralButtonStyle">@style/Widget.Car.Button.Borderless.Colored</item>
-        <item name="buttonBarNegativeButtonStyle">@style/Widget.Car.Button.Borderless.Colored</item>
-        <item name="buttonBarPositiveButtonStyle">@style/Widget.Car.Button.Borderless.Colored</item>
-    </style>
-    <style name="Theme.Car.Light.Dialog.Alert" parent="Theme.Car.Dialog.Alert">
-        <item name="android:background">@color/car_card_light</item>
-        <item name="android:listDividerAlertDialog">@drawable/car_list_divider_dark</item>
-        <item name="android:textColorPrimary">@color/car_body2_dark</item>
-        <item name="android:windowTitleStyle">@style/Widget.Car.Dialog.Title.Dark</item>
-    </style>
-    <style name="Theme.Car.Light.List" parent="Theme.Car.List">
-        <item name="pagedListViewStyle">@style/Widget.Car.Light.List.LightDivider</item>
-    </style>
-    <style name="Theme.Car.Light.List.DarkItems">
-        <item name="listItemStyle">@style/Widget.Car.ListItem.Dark</item>
-    </style>
-    <style name="Theme.Car.Light.NoActionBar" parent="Theme.Car.NoActionBar"/>
-    <style name="Theme.Car.Light.NoActionBar.Drawer" parent="Theme.Car.NoActionBar.Drawer"/>
-    <style name="Theme.Car.List" parent="android:Theme">
-        <item name="pagedListViewStyle">@style/Widget.Car.List</item>
-        <item name="listItemStyle">@style/Widget.Car.ListItem</item>
-    </style>
-    <style name="Theme.Car.NoActionBar" parent="Theme.AppCompat.NoActionBar">
-        <item name="android:colorAccent">@color/car_accent</item>
-        <item name="android:colorButtonNormal">@color/car_accent</item>
-        <item name="android:buttonStyle">@style/Widget.Car.Button</item>
-        <item name="android:borderlessButtonStyle">@style/Widget.Car.Button.Borderless.Colored</item>
-        <item name="android:progressBarStyleHorizontal">@style/Widget.Car.ProgressBar.Horizontal</item>
-        <item name="android:textColorHint">@color/car_body2</item>
-        <item name="android:editTextStyle">@style/Widget.Car.EditText</item>
-        <item name="android:editTextColor">@color/car_body1</item>
-        <item name="android:colorControlNormal">@color/car_body2</item>
-        <item name="carDialogTheme">@style/Theme.Car.Dialog</item>
-        <item name="pagedListViewStyle">@style/Widget.Car.List</item>
-        <item name="listItemStyle">@style/Widget.Car.ListItem</item>
-    </style>
-    <style name="Theme.Car.NoActionBar.Drawer">
-        <item name="drawerArrowStyle">@style/Widget.Car.DrawerArrowToggle</item>
-        <item name="drawerBackgroundColor">@color/car_card</item>
-        <item name="drawerOpenHeaderColor">@color/car_title2</item>
-        <item name="drawerClosedHeaderColor">@color/car_title2_light</item>
-        <item name="drawerItemTitleTextAppearance">@style/TextAppearance.Car.Body1</item>
-        <item name="drawerItemBodyTextAppearance">@style/TextAppearance.Car.Body2</item>
-        <item name="drawerListStyle">@style/Widget.Car.List</item>
-    </style>
-    <style name="Widget.Car.Button" parent="Widget.AppCompat.Button">
-        <item name="android:fontFamily">sans-serif-medium</item>
-        <item name="android:layout_height">@dimen/car_button_height</item>
-        <item name="android:minWidth">@dimen/car_button_min_width</item>
-        <item name="android:paddingStart">@dimen/car_button_horizontal_padding</item>
-        <item name="android:paddingEnd">@dimen/car_button_horizontal_padding</item>
-        <item name="android:textSize">@dimen/car_action1_size</item>
-        <item name="android:background">@drawable/car_button_background</item>
-        <item name="android:textColor">@drawable/car_button_text_color</item>
-    </style>
-    <style name="Widget.Car.Button.ActionBar">
-        <item name="android:scaleType">fitCenter</item>
-        <item name="android:padding">@dimen/car_action_button_icon_inset</item>
-        <item name="android:background">@drawable/car_action_button_background</item>
-        <item name="android:tint">@color/car_tint</item>
-    </style>
-    <style name="Widget.Car.Button.Borderless.Colored" parent="Widget.AppCompat.Button.Borderless.Colored">
-        <item name="android:fontFamily">sans-serif-medium</item>
-        <item name="android:layout_height">@dimen/car_button_height</item>
-        <item name="android:minWidth">@dimen/car_button_min_width</item>
-        <item name="android:paddingStart">@dimen/car_borderless_button_horizontal_padding</item>
-        <item name="android:paddingEnd">@dimen/car_borderless_button_horizontal_padding</item>
-        <item name="android:textSize">@dimen/car_action1_size</item>
-        <item name="android:textColor">@drawable/car_borderless_button_text_color</item>
-    </style>
-    <style name="Widget.Car.Button.Borderless.Colored.Dark">
-        <item name="android:textColor">@drawable/car_borderless_button_text_color</item>
-    </style>
-    <style name="Widget.Car.Button.Borderless.Colored.Light">
-        <item name="android:textColor">@drawable/car_borderless_button_text_color</item>
-    </style>
-    <style name="Widget.Car.Dark.List" parent="Widget.Car.List">
-        <item name="dayNightStyle">force_day</item>
-    </style>
-    <style name="Widget.Car.Dark.List.LightDivider">
-        <item name="listDividerColor">@color/car_list_divider_light</item>
-    </style>
-    <style name="Widget.Car.Dialog" parent="android:Widget"/>
-    <style name="Widget.Car.Dialog.Body">
-        <item name="android:textAppearance">@style/TextAppearance.Car.Body2</item>
-    </style>
-    <style name="Widget.Car.Dialog.Body.Dark">
-        <item name="android:textAppearance">@style/TextAppearance.Car.Body2.Dark</item>
-    </style>
-    <style name="Widget.Car.Dialog.Body.Light">
-        <item name="android:textAppearance">@style/TextAppearance.Car.Body2.Light</item>
-    </style>
-    <style name="Widget.Car.Dialog.Title">
-        <item name="android:maxLines">1</item>
-        <item name="android:textAppearance">@style/TextAppearance.Car.Title2</item>
-        <item name="android:ellipsize">end</item>
-        <item name="android:textAlignment">viewStart</item>
-    </style>
-    <style name="Widget.Car.Dialog.Title.Dark">
-        <item name="android:textAppearance">@style/TextAppearance.Car.Title2.Dark</item>
-    </style>
-    <style name="Widget.Car.Dialog.Title.Light">
-        <item name="android:textAppearance">@style/TextAppearance.Car.Title2.Light</item>
-    </style>
-    <style name="Widget.Car.DrawerArrowToggle" parent="Widget.AppCompat.DrawerArrowToggle">
-        <item name="color">@color/car_title_light</item>
-        <item name="spinBars">true</item>
-        <item name="barLength">@dimen/car_menu_bar_length</item>
-        <item name="thickness">@dimen/car_arrow_thickness</item>
-        <item name="gapBetweenBars">@dimen/car_menu_bar_spacing</item>
-        <item name="arrowShaftLength">@dimen/car_arrow_shaft_length</item>
-        <item name="arrowHeadLength">@dimen/car_arrow_head_length</item>
-        <item name="drawableSize">@dimen/car_arrow_size</item>
-    </style>
-    <style name="Widget.Car.EditText" parent="Widget.AppCompat.EditText">
-        <item name="android:textColor">?attr/editTextColor</item>
-        <item name="android:textAppearance">@style/TextAppearance.Car.Body1</item>
-    </style>
-    <style name="Widget.Car.Light.List" parent="Widget.Car.List">
-        <item name="dayNightStyle">force_night</item>
-    </style>
-    <style name="Widget.Car.Light.List.LightDivider">
-        <item name="listDividerColor">@color/car_list_divider_light</item>
-    </style>
-    <style name="Widget.Car.List" parent="android:Widget">
-        <item name="dayNightStyle">auto</item>
-        <item name="listDividerColor">@color/car_list_divider</item>
-    </style>
-    <style name="Widget.Car.List.Inverse">
-        <item name="dayNightStyle">auto_inverse</item>
-        <item name="listDividerColor">@color/car_list_divider_inverse</item>
-    </style>
-    <style name="Widget.Car.ListItem" parent="android:Widget">
-        <item name="listItemBackgroundColor">@color/car_card</item>
-        <item name="listItemTitleTextAppearance">@style/TextAppearance.Car.Body1</item>
-        <item name="listItemBodyTextAppearance">@style/TextAppearance.Car.Body2</item>
-    </style>
-    <style name="Widget.Car.ListItem.Dark">
-        <item name="listItemBackgroundColor">@color/car_card_dark</item>
-        <item name="listItemTitleTextAppearance">@style/TextAppearance.Car.Body1.Light</item>
-        <item name="listItemBodyTextAppearance">@style/TextAppearance.Car.Body2.Light</item>
-    </style>
-    <style name="Widget.Car.ProgressBar.Horizontal" parent="Widget.AppCompat.ProgressBar.Horizontal">
-        <item name="android:minHeight">@dimen/car_progress_bar_height</item>
-        <item name="android:maxHeight">@dimen/car_progress_bar_height</item>
-    </style>
-    <style name="Widget.Car.SeekBar" parent="Widget.AppCompat.SeekBar">
-        <item name="android:progressDrawable">@drawable/car_seekbar_track</item>
-        <item name="android:thumb">@drawable/car_seekbar_thumb</item>
-    </style>
-    <style name="Widget.Car.Toolbar" parent="Widget.AppCompat.Toolbar">
-        <item name="titleTextAppearance">@style/TextAppearance.Car.Title.Light</item>
-        <item name="contentInsetStart">@dimen/car_keyline_1</item>
-        <item name="contentInsetEnd">@dimen/car_keyline_1</item>
-    </style>
-</resources>
\ No newline at end of file
diff --git a/androidx-room/Android.bp b/androidx-room/Android.bp
index f9ac357..a1ff215 100644
--- a/androidx-room/Android.bp
+++ b/androidx-room/Android.bp
@@ -17,40 +17,40 @@
 java_plugin {
     name: "car-androidx-room-compiler",
     static_libs: [
-        "car-androidx-annotation-nodeps-bp",
-        "car-androidx-room-common-nodeps-bp",
-        "car-androidx-room-compiler-nodeps-bp",
+        "car-androidx-annotation-nodeps",
+        "car-androidx-room-common-nodeps",
+        "car-androidx-room-compiler-nodeps",
+        "car-androidx-room-migration-nodeps",
         "car-androidx-room-compiler-tools-common-m2-deps",
-        "car-androidx-room-migration-nodeps-bp",
+        "guava",
         "kotlin-stdlib",
     ],
     processor_class: "androidx.room.RoomProcessor",
-    generates_api: true,
 }
 
 android_library_import {
-    name: "car-androidx-room-runtime-nodeps-bp",
+    name: "car-androidx-room-runtime-nodeps",
     aars: ["androidx.room/room-runtime-2.0.0-alpha1.aar"],
     sdk_version: "current",
 }
 
 java_import {
-    name: "car-androidx-room-common-nodeps-bp",
+    name: "car-androidx-room-common-nodeps",
     jars: ["androidx.room/room-common-2.0.0-alpha1.jar"],
     host_supported: true,
 }
 
 java_import_host {
-    name: "car-androidx-room-compiler-nodeps-bp",
+    name: "car-androidx-room-compiler-nodeps",
     jars: ["androidx.room/room-compiler-2.0.0-alpha1.jar"],
 }
 
 java_import_host {
-    name: "car-androidx-room-migration-nodeps-bp",
+    name: "car-androidx-room-migration-nodeps",
     jars: ["androidx.room/room-migration-2.0.0-alpha1.jar"],
 }
 
 java_import_host {
-    name: "car-androidx-annotation-nodeps-bp",
+    name: "car-androidx-annotation-nodeps",
     jars: ["annotation-1.0.0-alpha1.jar"],
 }
diff --git a/androidx-room/Android.mk b/androidx-room/Android.mk
deleted file mode 100644
index 675dac8..0000000
--- a/androidx-room/Android.mk
+++ /dev/null
@@ -1,43 +0,0 @@
-#
-# Copyright (C) 2019 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-LOCAL_PATH:= $(call my-dir)
-
-include $(CLEAR_VARS)
-
-LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := \
-    car-androidx-room-runtime-nodeps:androidx.room/room-runtime-2.0.0-alpha1.aar \
-    car-androidx-room-common-nodeps:androidx.room/room-common-2.0.0-alpha1.jar
-
-include $(BUILD_MULTI_PREBUILT)
-
-include $(CLEAR_VARS)
-
-COMMON_LIBS_PATH := ../../../../../prebuilts/tools/common/m2/repository
-
-LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := \
-    car-androidx-room-common-nodeps:androidx.room/room-common-2.0.0-alpha1.jar \
-    car-androidx-room-compiler-nodeps:androidx.room/room-compiler-2.0.0-alpha1.jar \
-    car-androidx-room-migration-nodeps:androidx.room/room-migration-2.0.0-alpha1.jar \
-    car-androidx-annotation-nodeps:annotation-1.0.0-alpha1.jar \
-    car-antlr4-nodeps:$(COMMON_LIBS_PATH)/org/antlr/antlr4/4.5.3/antlr4-4.5.3.jar \
-    car-apache-commons-codec-nodeps:$(COMMON_LIBS_PATH)/org/eclipse/tycho/tycho-bundles-external/0.18.1/eclipse/plugins/org.apache.commons.codec_1.4.0.v201209201156.jar \
-    car-auto-common-nodeps:$(COMMON_LIBS_PATH)/com/google/auto/auto-common/0.9/auto-common-0.9.jar \
-    car-javapoet-nodeps:$(COMMON_LIBS_PATH)/com/squareup/javapoet/1.8.0/javapoet-1.8.0.jar \
-    car-jetbrains-annotations-nodeps:$(COMMON_LIBS_PATH)/org/jetbrains/annotations/13.0/annotations-13.0.jar \
-    car-kotlin-metadata-nodeps:$(COMMON_LIBS_PATH)/me/eugeniomarletti/kotlin-metadata/1.2.1/kotlin-metadata-1.2.1.jar \
-    car-sqlite-jdbc-nodeps:$(COMMON_LIBS_PATH)/org/xerial/sqlite-jdbc/3.20.1/sqlite-jdbc-3.20.1.jar
-
-include $(BUILD_HOST_PREBUILT)
diff --git a/car-apps-common/Android.bp b/car-apps-common/Android.bp
index 8c52089..b96cebd 100644
--- a/car-apps-common/Android.bp
+++ b/car-apps-common/Android.bp
@@ -14,7 +14,7 @@
 //
 
 android_library {
-    name: "car-apps-common-bp",
+    name: "car-apps-common",
 
     srcs: ["src/**/*.java"],
 
diff --git a/car-apps-common/Android.mk b/car-apps-common/Android.mk
deleted file mode 100644
index ce96f11..0000000
--- a/car-apps-common/Android.mk
+++ /dev/null
@@ -1,55 +0,0 @@
-#
-# Copyright (C) 2016 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-LOCAL_PATH:= $(call my-dir)
-
-include $(CLEAR_VARS)
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_MODULE := car-apps-common
-
-LOCAL_MODULE_TAGS := optional
-
-LOCAL_PRIVILEGED_MODULE := true
-
-LOCAL_PROGUARD_ENABLED := disabled
-
-LOCAL_USE_AAPT2 := true
-
-LOCAL_JAVA_LIBRARIES += android.car
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_STATIC_ANDROID_LIBRARIES += \
-    androidx.annotation_annotation \
-    androidx.cardview_cardview \
-    androidx.interpolator_interpolator \
-    androidx.lifecycle_lifecycle-common-java8 \
-    androidx.lifecycle_lifecycle-extensions \
-    androidx-constraintlayout_constraintlayout \
-    androidx.recyclerview_recyclerview
-
-LOCAL_STATIC_JAVA_LIBRARIES += \
-    androidx-constraintlayout_constraintlayout-solver
-
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-ifeq (,$(ONE_SHOT_MAKEFILE))
-    include $(call all-makefiles-under,$(LOCAL_PATH))
-endif
diff --git a/car-apps-common/res/drawable-hdpi/ic_contact.png b/car-apps-common/res/drawable-hdpi/ic_contact.png
deleted file mode 100644
index c34e844..0000000
--- a/car-apps-common/res/drawable-hdpi/ic_contact.png
+++ /dev/null
Binary files differ
diff --git a/car-apps-common/res/drawable-mdpi/ic_contact.png b/car-apps-common/res/drawable-mdpi/ic_contact.png
deleted file mode 100644
index 9461076..0000000
--- a/car-apps-common/res/drawable-mdpi/ic_contact.png
+++ /dev/null
Binary files differ
diff --git a/car-apps-common/res/drawable-xhdpi/ic_contact.png b/car-apps-common/res/drawable-xhdpi/ic_contact.png
deleted file mode 100644
index fec660d..0000000
--- a/car-apps-common/res/drawable-xhdpi/ic_contact.png
+++ /dev/null
Binary files differ
diff --git a/car-apps-common/res/drawable-xxhdpi/ic_contact.png b/car-apps-common/res/drawable-xxhdpi/ic_contact.png
deleted file mode 100644
index 199fd7b..0000000
--- a/car-apps-common/res/drawable-xxhdpi/ic_contact.png
+++ /dev/null
Binary files differ
diff --git a/car-apps-common/res/values-zh-rCN/strings.xml b/car-apps-common/res/values-zh-rCN/strings.xml
index 899f786..2c14a4d 100644
--- a/car-apps-common/res/values-zh-rCN/strings.xml
+++ b/car-apps-common/res/values-zh-rCN/strings.xml
@@ -16,8 +16,7 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for control_bar_expand_collapse_button (3420351169078117938) -->
-    <skip />
+    <string name="control_bar_expand_collapse_button" msgid="3420351169078117938">"“展开”/“收起”按钮"</string>
     <string name="car_drawer_open" msgid="2676372472514742324">"打开抽屉式导航栏"</string>
     <string name="car_drawer_close" msgid="5329374630462464855">"关闭抽屉式导航栏"</string>
     <string name="restricted_while_driving" msgid="2278031053760704437">"驾车时无法使用此功能。"</string>
diff --git a/car-apps-common/src/com/android/car/apps/common/AccountImageHelper.java b/car-apps-common/src/com/android/car/apps/common/AccountImageHelper.java
deleted file mode 100644
index 97286ce..0000000
--- a/car-apps-common/src/com/android/car/apps/common/AccountImageHelper.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.car.apps.common;
-
-import android.accounts.Account;
-import android.content.ContentUris;
-import android.content.Context;
-import android.content.Intent;
-import android.content.Intent.ShortcutIconResource;
-import android.database.Cursor;
-import android.net.Uri;
-import android.provider.ContactsContract;
-import android.provider.ContactsContract.RawContacts;
-import android.text.TextUtils;
-
-/**
- * Utility functions for retrieving account pictures.
- * @hide
- */
-public final class AccountImageHelper {
-
-    static final String[] CONTACT_PROJECTION_DATA = new String[] {
-        ContactsContract.Data._ID,
-        ContactsContract.Data.CONTACT_ID,
-        ContactsContract.Data.RAW_CONTACT_ID,
-        ContactsContract.Data.LOOKUP_KEY,
-        ContactsContract.Data.PHOTO_URI,
-        ContactsContract.Data.PHOTO_FILE_ID
-    };
-    static final String CONTACT_SELECTION =
-            ContactsContract.CommonDataKinds.Email.ADDRESS + " LIKE ?";
-
-    /**
-     * Non instantiable.
-     */
-    private AccountImageHelper() {
-    }
-
-    /**
-     * Tries to retrieve the Picture for the provided account, from the Contacts database.
-     */
-    public static String getAccountPictureUri(Context context, Account account) {
-        // Look up this account in the contacts database.
-
-        String[] selectionArgs = new String[] {
-        account.name };
-        Cursor c = null;
-        long contactId = -1;
-        String lookupKey = null;
-        String photoUri = null;
-        int photoFileId = 0;
-        long rawContactId = 0;
-        try {
-            c = context.getContentResolver().query(ContactsContract.Data.CONTENT_URI,
-                    CONTACT_PROJECTION_DATA, CONTACT_SELECTION, selectionArgs, null);
-            if (c.moveToNext()) {
-                contactId = c.getLong(1);
-                rawContactId = c.getLong(2);
-                lookupKey = c.getString(3);
-                photoUri = c.getString(4);
-                photoFileId = c.getInt(5);
-            }
-        } finally {
-            if (c != null) {
-                c.close();
-            }
-        }
-
-        if (contactId != -1 && !TextUtils.isEmpty(lookupKey) && !TextUtils.isEmpty(photoUri)) {
-            if (photoFileId == 0) {
-                // Trigger a VIEW action on this photo, which will force the Contacts
-                // Sync adapter to sync the HiRes version of the contact photo.
-                syncContactHiResPhoto(context, rawContactId);
-            }
-            return photoUri;
-        }
-        return getDefaultPictureUri(context);
-    }
-
-    private static void syncContactHiResPhoto(Context context, long rawContactId) {
-        final String serviceName = "com.google.android.syncadapters.contacts." +
-                "SyncHighResPhotoIntentService";
-        final String servicePackageName = "com.google.android.syncadapters.contacts";
-        final Uri uri = ContentUris.withAppendedId(RawContacts.CONTENT_URI,
-                rawContactId);
-        final Intent intent = new Intent();
-        intent.setClassName(servicePackageName, serviceName);
-        intent.setAction(Intent.ACTION_VIEW);
-        intent.setDataAndType(uri, RawContacts.CONTENT_ITEM_TYPE);
-        try {
-            context.startService(intent);
-        } catch (Exception e) {
-
-        }
-    }
-
-    /**
-     * Returns a default image to be used when an account has no picture associated with it.
-     */
-    public static String getDefaultPictureUri(Context context) {
-        // TODO: get a better default image.
-        ShortcutIconResource iconResource = new ShortcutIconResource();
-        iconResource.packageName = context.getPackageName();
-        iconResource.resourceName = context.getResources().getResourceName(
-                R.drawable.ic_contact);
-        return UriUtils.getShortcutIconResourceUri(iconResource).toString();
-    }
-}
diff --git a/car-apps-common/src/com/android/car/apps/common/imaging/LocalImageFetcher.java b/car-apps-common/src/com/android/car/apps/common/imaging/LocalImageFetcher.java
index e8b245e..17f9f50 100644
--- a/car-apps-common/src/com/android/car/apps/common/imaging/LocalImageFetcher.java
+++ b/car-apps-common/src/com/android/car/apps/common/imaging/LocalImageFetcher.java
@@ -19,7 +19,6 @@
 import android.annotation.UiThread;
 import android.content.ContentResolver;
 import android.content.Context;
-import android.content.res.AssetFileDescriptor;
 import android.content.res.Resources;
 import android.graphics.Bitmap;
 import android.graphics.ImageDecoder;
@@ -36,11 +35,8 @@
 import com.android.car.apps.common.UriUtils;
 import com.android.car.apps.common.util.CarAppsIOUtils;
 
-import libcore.io.IoUtils;
-
 import java.io.BufferedInputStream;
 import java.io.ByteArrayOutputStream;
-import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.io.InputStream;
 import java.lang.ref.WeakReference;
@@ -265,18 +261,8 @@
                             UriUtils.getIconResource(context, imageUri));
                 } else if (UriUtils.isContentUri(imageUri)) {
                     ContentResolver resolver = context.getContentResolver();
-
-                    // TODO(b/140959390): Remove the check once the bug is fixed in framework.
-                    if (!hasFile(resolver, imageUri)) {
-                        if (L_WARN) {
-                            Log.w(TAG, "File not found in uri: " + imageUri);
-                        }
-                        return null;
-                    }
-
                     ImageDecoder.Source src = ImageDecoder.createSource(resolver, imageUri);
                     return ImageDecoder.decodeDrawable(src, mOnHeaderDecodedListener);
-
                 } else if (mFlagRemoteImages) {
                     mAllocatorMode = ImageDecoder.ALLOCATOR_SOFTWARE; // Needed for canvas drawing.
                     URL url = new URL(imageUri.toString());
@@ -300,34 +286,6 @@
             return null;
         }
 
-        private boolean hasFile(ContentResolver resolver, Uri uri) {
-            AssetFileDescriptor assetFd = null;
-            try {
-                if (uri.getScheme() == ContentResolver.SCHEME_CONTENT) {
-                    assetFd = resolver.openTypedAssetFileDescriptor(uri, "image/*", null);
-                } else {
-                    assetFd = resolver.openAssetFileDescriptor(uri, "r");
-                }
-            } catch (FileNotFoundException e) {
-                // Some images cannot be opened as AssetFileDescriptors (e.g.bmp, ico). Open them
-                // as InputStreams.
-                try {
-                    InputStream is = resolver.openInputStream(uri);
-                    if (is != null) {
-                        IoUtils.closeQuietly(is);
-                        return true;
-                    }
-                } catch (IOException exception) {
-                    return false;
-                }
-            }
-            if (assetFd != null) {
-                IoUtils.closeQuietly(assetFd);
-                return true;
-            }
-            return false;
-        }
-
         @UiThread
         @Override
         protected void onPostExecute(Drawable drawable) {
diff --git a/car-apps-common/src/com/android/car/apps/common/util/CarPackageManagerUtils.java b/car-apps-common/src/com/android/car/apps/common/util/CarPackageManagerUtils.java
index 43e4381..bd3d23f 100644
--- a/car-apps-common/src/com/android/car/apps/common/util/CarPackageManagerUtils.java
+++ b/car-apps-common/src/com/android/car/apps/common/util/CarPackageManagerUtils.java
@@ -16,6 +16,7 @@
 
 package com.android.car.apps.common.util;
 
+import android.app.PendingIntent;
 import android.car.Car;
 import android.car.CarNotConnectedException;
 import android.car.content.pm.CarPackageManager;
@@ -60,6 +61,17 @@
     }
 
     /**
+     * Returns whether the given {@link PendingIntent} represents an activity that is distraction
+     * optimized.
+     */
+    public boolean isDistractionOptimized(@NonNull PendingIntent pendingIntent) {
+        if (mCarPackageManager != null) {
+            return mCarPackageManager.isPendingIntentDistractionOptimized(pendingIntent);
+        }
+        return false;
+    }
+
+    /**
      * Returns true if the provided Activity is distraction optimized
      */
     public boolean isDistractionOptimized(@NonNull ActivityInfo activityInfo) {
diff --git a/car-apps-common/src/com/android/car/apps/common/widget/PagedRecyclerView.java b/car-apps-common/src/com/android/car/apps/common/widget/PagedRecyclerView.java
index 2917967..ca8dfcf 100644
--- a/car-apps-common/src/com/android/car/apps/common/widget/PagedRecyclerView.java
+++ b/car-apps-common/src/com/android/car/apps/common/widget/PagedRecyclerView.java
@@ -340,6 +340,15 @@
     }
 
     @Override
+    public void scrollToPosition(int position) {
+        if (mScrollBarEnabled) {
+            mNestedRecyclerView.scrollToPosition(position);
+        } else {
+            super.scrollToPosition(position);
+        }
+    }
+
+    @Override
     public void setAdapter(@Nullable Adapter adapter) {
         mAdapter = adapter;
         if (mScrollBarEnabled) {
diff --git a/car-apps-common/tests/Android.mk b/car-apps-common/tests/Android.mk
deleted file mode 100644
index 9f0a4e8..0000000
--- a/car-apps-common/tests/Android.mk
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright (C) 2019 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-# Include all makefiles in subdirectories
-include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/car-apps-common/tests/robotests/Android.bp b/car-apps-common/tests/robotests/Android.bp
new file mode 100644
index 0000000..b81f0fc
--- /dev/null
+++ b/car-apps-common/tests/robotests/Android.bp
@@ -0,0 +1,32 @@
+//###########################################################
+// CarAppsCommon app just for Robolectric test target.     #
+//###########################################################
+android_app {
+    name: "CarAppsCommon",
+
+    platform_apis: true,
+
+    privileged: true,
+
+    libs: ["android.car"],
+
+    static_libs: ["car-apps-common"],
+}
+
+//###############################################
+// Car Apps Common Robolectric test target. #
+//###############################################
+android_robolectric_test {
+    name: "CarAppsCommonRoboTests",
+
+    srcs: ["src/**/*.java"],
+
+    java_resource_dirs: ["config"],
+
+    // Include the testing libraries
+    libs: [
+        "android.car",
+    ],
+
+    instrumentation_for: "CarAppsCommon",
+}
diff --git a/car-apps-common/tests/robotests/Android.mk b/car-apps-common/tests/robotests/Android.mk
deleted file mode 100644
index 2438678..0000000
--- a/car-apps-common/tests/robotests/Android.mk
+++ /dev/null
@@ -1,73 +0,0 @@
-LOCAL_PATH := $(call my-dir)
-
-############################################################
-# CarAppsCommon app just for Robolectric test target.     #
-############################################################
-include $(CLEAR_VARS)
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_PACKAGE_NAME := CarAppsCommon
-LOCAL_PRIVATE_PLATFORM_APIS := true
-LOCAL_MODULE_TAGS := optional
-
-LOCAL_USE_AAPT2 := true
-
-LOCAL_PRIVILEGED_MODULE := true
-
-LOCAL_JAVA_LIBRARIES := android.car
-
-LOCAL_STATIC_ANDROID_LIBRARIES := \
-    car-apps-common
-
-include $(BUILD_PACKAGE)
-
-################################################
-# Car Apps Common Robolectric test target. #
-################################################
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := CarAppsCommonRoboTests
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-
-LOCAL_JAVA_RESOURCE_DIRS := config
-
-# Include the testing libraries
-LOCAL_JAVA_LIBRARIES := \
-    android.car \
-    robolectric_android-all-stub \
-    Robolectric_all-target \
-    mockito-robolectric-prebuilt \
-    truth-prebuilt
-
-
-LOCAL_INSTRUMENTATION_FOR := CarAppsCommon
-
-LOCAL_MODULE_TAGS := optional
-
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-##################################################################
-# Car Apps Common runner target to run the previous target. #
-##################################################################
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := RunCarAppsCommonRoboTests
-
-LOCAL_JAVA_LIBRARIES := \
-    android.car \
-    CarAppsCommonRoboTests \
-    robolectric_android-all-stub \
-    Robolectric_all-target \
-    mockito-robolectric-prebuilt \
-    truth-prebuilt
-
-LOCAL_TEST_PACKAGE := CarAppsCommon
-
-LOCAL_ROBOTEST_FILES := $(filter-out %/BaseRobolectricTest.java,\
-    $(call find-files-in-subdirs,$(LOCAL_PATH)/src,*Test.java,.))
-
-LOCAL_INSTRUMENT_SOURCE_DIRS := $(dir $(LOCAL_PATH))../src
-
-include external/robolectric-shadows/run_robotests.mk
diff --git a/car-apps-common/tests/robotests/config/robolectric.properties b/car-apps-common/tests/robotests/config/robolectric.properties
index fa63823..849e07f 100644
--- a/car-apps-common/tests/robotests/config/robolectric.properties
+++ b/car-apps-common/tests/robotests/config/robolectric.properties
@@ -13,5 +13,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
-manifest=packages/apps/Car/libs/car-apps-common/tests/robotests/AndroidManifest.xml
 sdk=NEWEST_SDK
diff --git a/car-apps-common/tests/robotests/src/com/android/car/apps/common/CarUxRestrictionsUtilTest.java b/car-apps-common/tests/robotests/src/com/android/car/apps/common/CarUxRestrictionsUtilTest.java
index 2cadad3..a450102 100755
--- a/car-apps-common/tests/robotests/src/com/android/car/apps/common/CarUxRestrictionsUtilTest.java
+++ b/car-apps-common/tests/robotests/src/com/android/car/apps/common/CarUxRestrictionsUtilTest.java
@@ -25,10 +25,8 @@
 import org.junit.runner.RunWith;
 import org.mockito.MockitoAnnotations;
 import org.robolectric.RobolectricTestRunner;
-import org.robolectric.annotation.Config;
 
 @RunWith(RobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class CarUxRestrictionsUtilTest {
     private int[] mRestrictionsArray;
 
diff --git a/car-apps-common/tests/robotests/src/com/android/car/apps/common/TestConfig.java b/car-apps-common/tests/robotests/src/com/android/car/apps/common/TestConfig.java
deleted file mode 100644
index baf9b51..0000000
--- a/car-apps-common/tests/robotests/src/com/android/car/apps/common/TestConfig.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright (C) 2019 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.car.apps.common;
-
-public class TestConfig {
-    public static final int SDK_VERSION = 23;
-    public static final String MANIFEST_PATH =
-            "packages/apps/Car/car-apps-common/AndroidManifest.xml";
-}
diff --git a/EncryptionRunner/Android.bp b/car-arch-common/Android.bp
similarity index 65%
copy from EncryptionRunner/Android.bp
copy to car-arch-common/Android.bp
index 54316ff..f8bcb94 100644
--- a/EncryptionRunner/Android.bp
+++ b/car-arch-common/Android.bp
@@ -1,4 +1,5 @@
-// Copyright (C) 2019 The Android Open Source Project
+//
+// Copyright (C) 2018 The Android Open Source Project
 //
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.
@@ -11,21 +12,21 @@
 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 // See the License for the specific language governing permissions and
 // limitations under the License.
+//
 
 android_library {
-    name: "EncryptionRunner-lib",
-    min_sdk_version: "23",
-    product_variables: {
-        pdk: {
-            enabled: false,
-        },
-    },
-    static_libs: [
-      "ukey2",
-    ],
-    srcs: [
-        "src/**/*.java",
-    ],
-    installable: true,
-}
+    name: "car-arch-common",
 
+    srcs: ["src/**/*.java"],
+
+    optimize: {
+        enabled: false,
+    },
+
+    static_libs: [
+        "androidx.lifecycle_lifecycle-extensions",
+        "androidx.lifecycle_lifecycle-common-java8",
+        "androidx.annotation_annotation",
+        "junit",
+    ],
+}
diff --git a/car-arch-common/Android.mk b/car-arch-common/Android.mk
deleted file mode 100644
index 712f170..0000000
--- a/car-arch-common/Android.mk
+++ /dev/null
@@ -1,49 +0,0 @@
-#
-# Copyright (C) 2018 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-LOCAL_PATH:= $(call my-dir)
-
-include $(CLEAR_VARS)
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_MODULE := car-arch-common
-
-LOCAL_MODULE_TAGS := optional
-
-LOCAL_PRIVILEGED_MODULE := true
-
-LOCAL_PROGUARD_ENABLED := disabled
-
-LOCAL_USE_AAPT2 := true
-
-LOCAL_STATIC_ANDROID_LIBRARIES := \
-    androidx.lifecycle_lifecycle-extensions \
-    androidx.lifecycle_lifecycle-common-java8 \
-
-LOCAL_STATIC_JAVA_LIBRARIES := \
-    androidx.annotation_annotation \
-    junit \
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-ifeq (,$(ONE_SHOT_MAKEFILE))
-    include $(call all-makefiles-under,$(LOCAL_PATH))
-endif
diff --git a/car-arch-common/tests/Android.mk b/car-arch-common/tests/Android.mk
deleted file mode 100644
index 0903c90..0000000
--- a/car-arch-common/tests/Android.mk
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright (C) 2018 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-# Include all makefiles in subdirectories
-include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/car-arch-common/tests/robotests/Android.bp b/car-arch-common/tests/robotests/Android.bp
new file mode 100644
index 0000000..dbe65bf
--- /dev/null
+++ b/car-arch-common/tests/robotests/Android.bp
@@ -0,0 +1,47 @@
+//
+// Copyright (C) 2018 The Android Open Source Project
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+//###########################################################
+// CarArchCommon app just for Robolectric test target.     #
+//###########################################################
+android_app {
+    name: "CarArchCommon",
+
+    platform_apis: true,
+
+    privileged: true,
+
+    static_libs: ["car-arch-common"],
+}
+
+//###############################################
+// Car Arch Common Robolectric test target. #
+//###############################################
+android_robolectric_test {
+    name: "CarArchCommonRoboTests",
+
+    srcs: ["src/**/*.java"],
+
+    java_resource_dirs: ["config"],
+
+    // Include the testing libraries
+    libs: [
+        "androidx.arch.core_core-runtime",
+        "androidx.arch.core_core-common",
+    ],
+
+    instrumentation_for: "CarArchCommon",
+}
diff --git a/car-arch-common/tests/robotests/Android.mk b/car-arch-common/tests/robotests/Android.mk
deleted file mode 100644
index 83ba038..0000000
--- a/car-arch-common/tests/robotests/Android.mk
+++ /dev/null
@@ -1,86 +0,0 @@
-#
-# Copyright (C) 2018 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-LOCAL_PATH := $(call my-dir)
-
-############################################################
-# CarArchCommon app just for Robolectric test target.     #
-############################################################
-include $(CLEAR_VARS)
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_PACKAGE_NAME := CarArchCommon
-LOCAL_PRIVATE_PLATFORM_APIS := true
-LOCAL_MODULE_TAGS := optional
-
-LOCAL_USE_AAPT2 := true
-
-LOCAL_PRIVILEGED_MODULE := true
-
-LOCAL_STATIC_ANDROID_LIBRARIES := \
-    car-arch-common
-
-include $(BUILD_PACKAGE)
-
-################################################
-# Car Arch Common Robolectric test target. #
-################################################
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := CarArchCommonRoboTests
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-
-LOCAL_JAVA_RESOURCE_DIRS := config
-
-# Include the testing libraries
-LOCAL_JAVA_LIBRARIES := \
-    androidx.arch.core_core-runtime \
-    androidx.arch.core_core-common \
-    robolectric_android-all-stub \
-    Robolectric_all-target \
-    mockito-robolectric-prebuilt \
-    truth-prebuilt
-
-LOCAL_INSTRUMENTATION_FOR := CarArchCommon
-
-LOCAL_MODULE_TAGS := optional
-
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-##################################################################
-# Car Arch Common runner target to run the previous target. #
-##################################################################
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := RunCarArchCommonRoboTests
-
-LOCAL_JAVA_LIBRARIES := \
-    CarArchCommonRoboTests \
-    robolectric_android-all-stub \
-    Robolectric_all-target \
-    mockito-robolectric-prebuilt \
-    truth-prebuilt
-
-LOCAL_TEST_PACKAGE := CarArchCommon
-
-LOCAL_ROBOTEST_FILES := $(filter-out %/BaseRobolectricTest.java,\
-    $(call find-files-in-subdirs,$(LOCAL_PATH)/src,*Test.java,.))
-
-LOCAL_INSTRUMENT_SOURCE_DIRS := $(dir $(LOCAL_PATH))../src
-
-include external/robolectric-shadows/run_robotests.mk
diff --git a/car-arch-common/tests/robotests/config/robolectric.properties b/car-arch-common/tests/robotests/config/robolectric.properties
index 6b56350..4c863dc 100644
--- a/car-arch-common/tests/robotests/config/robolectric.properties
+++ b/car-arch-common/tests/robotests/config/robolectric.properties
@@ -13,5 +13,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
-manifest=packages/apps/Car/libs/car-arch-common/tests/robotests/AndroidManifest.xml
 sdk=NEWEST_SDK
diff --git a/car-arch-common/tests/robotests/src/com/android/car/arch/common/LiveDataFunctionsTest.java b/car-arch-common/tests/robotests/src/com/android/car/arch/common/LiveDataFunctionsTest.java
index d41db9f..cdcfcb0 100644
--- a/car-arch-common/tests/robotests/src/com/android/car/arch/common/LiveDataFunctionsTest.java
+++ b/car-arch-common/tests/robotests/src/com/android/car/arch/common/LiveDataFunctionsTest.java
@@ -42,7 +42,6 @@
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.robolectric.RobolectricTestRunner;
-import org.robolectric.annotation.Config;
 
 import java.util.Objects;
 import java.util.function.BiFunction;
@@ -50,7 +49,6 @@
 import java.util.function.Supplier;
 
 @RunWith(RobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class LiveDataFunctionsTest {
 
     @Rule
diff --git a/car-arch-common/tests/robotests/src/com/android/car/arch/common/LoadingSwitchMapTest.java b/car-arch-common/tests/robotests/src/com/android/car/arch/common/LoadingSwitchMapTest.java
index fd3d883..d64a0c1 100644
--- a/car-arch-common/tests/robotests/src/com/android/car/arch/common/LoadingSwitchMapTest.java
+++ b/car-arch-common/tests/robotests/src/com/android/car/arch/common/LoadingSwitchMapTest.java
@@ -32,10 +32,8 @@
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.robolectric.RobolectricTestRunner;
-import org.robolectric.annotation.Config;
 
 @RunWith(RobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class LoadingSwitchMapTest {
 
     @Rule
diff --git a/car-arch-common/tests/robotests/src/com/android/car/arch/common/TestConfig.java b/car-arch-common/tests/robotests/src/com/android/car/arch/common/TestConfig.java
deleted file mode 100644
index 1ae5174..0000000
--- a/car-arch-common/tests/robotests/src/com/android/car/arch/common/TestConfig.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.car.arch.common;
-
-public class TestConfig {
-    public static final int SDK_VERSION = 23;
-    public static final String MANIFEST_PATH =
-            "packages/apps/Car/car-arch-common/AndroidManifest.xml";
-}
diff --git a/car-assist-client-lib/src/com/android/car/assist/client/FallbackAssistant.java b/car-assist-client-lib/src/com/android/car/assist/client/FallbackAssistant.java
index db13ab1..fe8c5ae 100644
--- a/car-assist-client-lib/src/com/android/car/assist/client/FallbackAssistant.java
+++ b/car-assist-client-lib/src/com/android/car/assist/client/FallbackAssistant.java
@@ -115,7 +115,6 @@
         }
 
         List<CharSequence> messages = new ArrayList<>();
-
         List<Message> messageList = Message.getMessagesFromBundleArray(messagesBundle);
         if (messageList == null || messageList.isEmpty()) {
             Log.w(TAG, "No messages could be extracted from the bundle");
diff --git a/EncryptionRunner/Android.bp b/car-broadcastradio-support/Android.bp
similarity index 65%
copy from EncryptionRunner/Android.bp
copy to car-broadcastradio-support/Android.bp
index 54316ff..cf0b1bb 100644
--- a/EncryptionRunner/Android.bp
+++ b/car-broadcastradio-support/Android.bp
@@ -1,4 +1,5 @@
-// Copyright (C) 2019 The Android Open Source Project
+//
+// Copyright (C) 2018 The Android Open Source Project
 //
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.
@@ -11,21 +12,22 @@
 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 // See the License for the specific language governing permissions and
 // limitations under the License.
+//
 
 android_library {
-    name: "EncryptionRunner-lib",
-    min_sdk_version: "23",
-    product_variables: {
-        pdk: {
-            enabled: false,
-        },
-    },
-    static_libs: [
-      "ukey2",
-    ],
-    srcs: [
-        "src/**/*.java",
-    ],
-    installable: true,
-}
+    name: "car-broadcastradio-support",
 
+    srcs: ["src/**/*.java"],
+    aidl: {
+        export_include_dirs: ["src"],
+    },
+    resource_dirs: ["res"],
+
+    optimize: {
+        enabled: false,
+    },
+
+    dist: {
+        targets: ["dist_files"],
+    },
+}
diff --git a/car-broadcastradio-support/Android.mk b/car-broadcastradio-support/Android.mk
deleted file mode 100644
index 67f37ef..0000000
--- a/car-broadcastradio-support/Android.mk
+++ /dev/null
@@ -1,37 +0,0 @@
-#
-# Copyright (C) 2018 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-LOCAL_PATH := $(call my-dir)
-
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := car-broadcastradio-support
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/src
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_MODULE_TAGS := optional
-LOCAL_PRIVILEGED_MODULE := true
-
-LOCAL_PROGUARD_ENABLED := disabled
-LOCAL_USE_AAPT2 := true
-
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-ifeq ($(BOARD_IS_AUTOMOTIVE), true)
-$(call dist-for-goals,dist_files,$(full_classes_jar):$(LOCAL_MODULE).jar)
-endif
diff --git a/car-media-common/Android.bp b/car-media-common/Android.bp
new file mode 100644
index 0000000..8659d0a
--- /dev/null
+++ b/car-media-common/Android.bp
@@ -0,0 +1,40 @@
+//
+// Copyright (C) 2016 The Android Open Source Project
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+android_library {
+    name: "car-media-common",
+
+    srcs: ["src/**/*.java"],
+
+    resource_dirs: ["res"],
+
+    optimize: {
+        enabled: false,
+    },
+
+    static_libs: [
+        "androidx.cardview_cardview",
+        "androidx.legacy_legacy-support-v4",
+        "androidx.recyclerview_recyclerview",
+        "androidx.mediarouter_mediarouter",
+        "androidx-constraintlayout_constraintlayout",
+        "car-apps-common",
+        "car-arch-common",
+        "androidx-constraintlayout_constraintlayout-solver",
+    ],
+
+    libs: ["android.car"],
+}
diff --git a/car-media-common/Android.mk b/car-media-common/Android.mk
deleted file mode 100644
index c5041c4..0000000
--- a/car-media-common/Android.mk
+++ /dev/null
@@ -1,86 +0,0 @@
-#
-# Copyright (C) 2016 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-LOCAL_PATH:= $(call my-dir)
-
-include $(CLEAR_VARS)
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_MODULE := car-media-common
-
-LOCAL_MODULE_TAGS := optional
-
-LOCAL_PRIVILEGED_MODULE := true
-
-LOCAL_PROGUARD_ENABLED := disabled
-
-LOCAL_STATIC_ANDROID_LIBRARIES += \
-    androidx.cardview_cardview \
-    androidx.legacy_legacy-support-v4 \
-    androidx.recyclerview_recyclerview \
-    androidx.mediarouter_mediarouter \
-    androidx-constraintlayout_constraintlayout \
-    car-apps-common \
-    car-arch-common
-
-LOCAL_STATIC_JAVA_LIBRARIES += \
-    androidx-constraintlayout_constraintlayout-solver
-
-LOCAL_USE_AAPT2 := true
-
-LOCAL_JAVA_LIBRARIES += android.car
-
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-include $(CLEAR_VARS)
-
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-LOCAL_MODULE := car-media-common-disklrucache-target
-LOCAL_SDK_VERSION := current
-LOCAL_SRC_FILES := ../../../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/disklrucache/SNAPSHOT/disklrucache-SNAPSHOT$(COMMON_JAVA_PACKAGE_SUFFIX)
-LOCAL_JETIFIER_ENABLED := true
-LOCAL_UNINSTALLABLE_MODULE := true
-
-include $(BUILD_PREBUILT)
-
-include $(CLEAR_VARS)
-
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-LOCAL_MODULE := car-media-common-gifdecoder-target
-LOCAL_SDK_VERSION := current
-LOCAL_SRC_FILES := ../../../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/gifdecoder/SNAPSHOT/gifdecoder-SNAPSHOT$(COMMON_JAVA_PACKAGE_SUFFIX)
-LOCAL_JETIFIER_ENABLED := true
-LOCAL_UNINSTALLABLE_MODULE := true
-
-include $(BUILD_PREBUILT)
-
-include $(CLEAR_VARS)
-
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-LOCAL_MODULE := car-media-common-glide-target
-LOCAL_SDK_VERSION := current
-LOCAL_SRC_FILES := ../../../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/glide/SNAPSHOT/glide-SNAPSHOT$(COMMON_JAVA_PACKAGE_SUFFIX)
-LOCAL_JETIFIER_ENABLED := true
-LOCAL_UNINSTALLABLE_MODULE := true
-
-include $(BUILD_PREBUILT)
-
-ifeq (,$(ONE_SHOT_MAKEFILE))
-    include $(call all-makefiles-under,$(LOCAL_PATH))
-endif
\ No newline at end of file
diff --git a/car-media-common/src/com/android/car/media/common/browse/MediaBrowserViewModel.java b/car-media-common/src/com/android/car/media/common/browse/MediaBrowserViewModel.java
index 5a4626a..a4636c2 100644
--- a/car-media-common/src/com/android/car/media/common/browse/MediaBrowserViewModel.java
+++ b/car-media-common/src/com/android/car/media/common/browse/MediaBrowserViewModel.java
@@ -37,31 +37,11 @@
 public interface MediaBrowserViewModel {
 
     /**
-     * Possible states of the application UI
-     */
-    enum BrowseState {
-        /** There is no content to show */
-        EMPTY,
-        /** We are still in the process of obtaining data */
-        LOADING,
-        /** Data has been loaded */
-        LOADED,
-        /** The content can't be shown due an error */
-        ERROR
-    }
-
-    /**
      * Returns a LiveData that emits the current package name of the browser's service component.
      */
     LiveData<String> getPackageName();
 
     /**
-     * Returns a LiveData that emits the current {@link BrowseState}
-     */
-    LiveData<BrowseState> getBrowseState();
-
-
-    /**
      * Fetches the MediaItemMetadatas for the current browsed id, and the loading status of the
      * fetch operation.
      *
diff --git a/car-media-common/src/com/android/car/media/common/browse/MediaBrowserViewModelImpl.java b/car-media-common/src/com/android/car/media/common/browse/MediaBrowserViewModelImpl.java
index 7d47ba7..974639d 100644
--- a/car-media-common/src/com/android/car/media/common/browse/MediaBrowserViewModelImpl.java
+++ b/car-media-common/src/com/android/car/media/common/browse/MediaBrowserViewModelImpl.java
@@ -33,7 +33,6 @@
 import androidx.annotation.RestrictTo;
 import androidx.lifecycle.AndroidViewModel;
 import androidx.lifecycle.LiveData;
-import androidx.lifecycle.MediatorLiveData;
 import androidx.lifecycle.MutableLiveData;
 
 import com.android.car.arch.common.FutureData;
@@ -62,9 +61,6 @@
 
     private final LiveData<FutureData<List<MediaItemMetadata>>> mSearchedMediaItems;
     private final LiveData<FutureData<List<MediaItemMetadata>>> mBrowsedMediaItems;
-
-    private final LiveData<BrowseState> mBrowseState;
-
     private final LiveData<String> mPackageName;
 
     MediaBrowserViewModelImpl(@NonNull Application application, boolean isRoot) {
@@ -94,39 +90,6 @@
                                 (mediaBrowser == null || TextUtils.isEmpty(query))
                                         ? null
                                         : new SearchedMediaItems(mediaBrowser, query)));
-
-        mBrowseState = new MediatorLiveData<BrowseState>() {
-            {
-                setValue(BrowseState.EMPTY);
-                addSource(mBrowsedMediaItems, items -> update());
-            }
-
-            private void update() {
-                setValue(getState());
-            }
-
-            private BrowseState getState() {
-                if (mBrowsedMediaItems.getValue() == null) {
-                    // Uninitialized
-                    return BrowseState.EMPTY;
-                }
-                if (mBrowsedMediaItems.getValue().isLoading()) {
-                    return BrowseState.LOADING;
-                }
-                List<MediaItemMetadata> items = mBrowsedMediaItems.getValue().getData();
-                if (items == null) {
-                    // Normally this could be null if it hasn't been initialized, but in that case
-                    // isLoading would not be false, so this means it must have encountered an
-                    // error.
-                    return BrowseState.ERROR;
-                }
-                if (items.isEmpty()) {
-                    return BrowseState.EMPTY;
-                }
-                return BrowseState.LOADED;
-            }
-        };
-
     }
 
     private static MediaBrowserCompat requireConnected(@Nullable MediaBrowserCompat mediaBrowser) {
@@ -155,11 +118,6 @@
     }
 
     @Override
-    public LiveData<BrowseState> getBrowseState() {
-        return mBrowseState;
-    }
-
-    @Override
     public LiveData<FutureData<List<MediaItemMetadata>>> getBrowsedMediaItems() {
         return mBrowsedMediaItems;
     }
diff --git a/car-media-common/src/com/android/car/media/common/source/MediaSourceViewModel.java b/car-media-common/src/com/android/car/media/common/source/MediaSourceViewModel.java
index 1d02209..1eb9fa5 100644
--- a/car-media-common/src/com/android/car/media/common/source/MediaSourceViewModel.java
+++ b/car-media-common/src/com/android/car/media/common/source/MediaSourceViewModel.java
@@ -28,7 +28,6 @@
 import android.content.ComponentName;
 import android.media.session.MediaController;
 import android.os.Handler;
-import android.os.RemoteException;
 import android.support.v4.media.MediaBrowserCompat;
 import android.support.v4.media.session.MediaControllerCompat;
 import android.support.v4.media.session.MediaSessionCompat;
@@ -104,13 +103,7 @@
             @Override
             public MediaControllerCompat getControllerForSession(
                     @Nullable MediaSessionCompat.Token token) {
-                if (token == null) return null;
-                try {
-                    return new MediaControllerCompat(application, token);
-                } catch (RemoteException e) {
-                    Log.e(TAG, "Couldn't get MediaControllerCompat", e);
-                    return null;
-                }
+                return token == null ? null : new MediaControllerCompat(application, token);
             }
 
             @Override
diff --git a/car-media-common/tests/Android.mk b/car-media-common/tests/Android.mk
deleted file mode 100644
index 0903c90..0000000
--- a/car-media-common/tests/Android.mk
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright (C) 2018 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-# Include all makefiles in subdirectories
-include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/car-media-common/tests/robotests/Android.bp b/car-media-common/tests/robotests/Android.bp
new file mode 100644
index 0000000..13e19f7
--- /dev/null
+++ b/car-media-common/tests/robotests/Android.bp
@@ -0,0 +1,37 @@
+
+
+//###########################################################
+// CarMediaCommon app just for Robolectric test target.     #
+//###########################################################
+android_app {
+    name: "CarMediaCommon",
+
+    platform_apis: true,
+
+    privileged: true,
+
+    static_libs: [
+        "car-arch-common",
+        "car-media-common",
+    ],
+}
+
+//###############################################
+// Car Media Common Robolectric test target. #
+//###############################################
+android_robolectric_test {
+    name: "CarMediaCommonRoboTests",
+
+    srcs: ["src/**/*.java"],
+
+    java_resource_dirs: ["config"],
+
+    // Include the testing libraries
+    libs: [
+        "android.car",
+        "androidx.arch.core_core-runtime",
+        "androidx.arch.core_core-common",
+    ],
+
+    instrumentation_for: "CarMediaCommon",
+}
diff --git a/car-media-common/tests/robotests/Android.mk b/car-media-common/tests/robotests/Android.mk
deleted file mode 100644
index 342f5c0..0000000
--- a/car-media-common/tests/robotests/Android.mk
+++ /dev/null
@@ -1,74 +0,0 @@
-LOCAL_PATH := $(call my-dir)
-
-############################################################
-# CarMediaCommon app just for Robolectric test target.     #
-############################################################
-include $(CLEAR_VARS)
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_PACKAGE_NAME := CarMediaCommon
-LOCAL_PRIVATE_PLATFORM_APIS := true
-LOCAL_MODULE_TAGS := optional
-
-LOCAL_USE_AAPT2 := true
-
-LOCAL_PRIVILEGED_MODULE := true
-
-LOCAL_STATIC_ANDROID_LIBRARIES := \
-    car-arch-common \
-    car-media-common
-
-include $(BUILD_PACKAGE)
-
-################################################
-# Car Media Common Robolectric test target. #
-################################################
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := CarMediaCommonRoboTests
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-
-LOCAL_JAVA_RESOURCE_DIRS := config
-
-# Include the testing libraries
-LOCAL_JAVA_LIBRARIES := \
-    android.car \
-    androidx.arch.core_core-runtime \
-    androidx.arch.core_core-common \
-    robolectric_android-all-stub \
-    Robolectric_all-target \
-    mockito-robolectric-prebuilt \
-    truth-prebuilt
-
-
-LOCAL_INSTRUMENTATION_FOR := CarMediaCommon
-
-LOCAL_MODULE_TAGS := optional
-
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-##################################################################
-# Car Media Common runner target to run the previous target. #
-##################################################################
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := RunCarMediaCommonRoboTests
-
-LOCAL_JAVA_LIBRARIES := \
-    android.car \
-    CarMediaCommonRoboTests \
-    robolectric_android-all-stub \
-    Robolectric_all-target \
-    mockito-robolectric-prebuilt \
-    truth-prebuilt
-
-LOCAL_TEST_PACKAGE := CarMediaCommon
-
-LOCAL_ROBOTEST_FILES := $(filter-out %/BaseRobolectricTest.java,\
-    $(call find-files-in-subdirs,$(LOCAL_PATH)/src,*Test.java,.))
-
-LOCAL_INSTRUMENT_SOURCE_DIRS := $(dir $(LOCAL_PATH))../src
-
-include external/robolectric-shadows/run_robotests.mk
diff --git a/car-media-common/tests/robotests/AndroidManifest.xml b/car-media-common/tests/robotests/AndroidManifest.xml
index 63b3855..83a5e47 100644
--- a/car-media-common/tests/robotests/AndroidManifest.xml
+++ b/car-media-common/tests/robotests/AndroidManifest.xml
@@ -17,5 +17,4 @@
 
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
           package="com.android.car.media.common.robotests">
-
 </manifest>
diff --git a/car-media-common/tests/robotests/config/robolectric.properties b/car-media-common/tests/robotests/config/robolectric.properties
index 715d744..4c863dc 100644
--- a/car-media-common/tests/robotests/config/robolectric.properties
+++ b/car-media-common/tests/robotests/config/robolectric.properties
@@ -13,5 +13,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
-manifest=packages/apps/Car/libs/car-media-common/tests/robotests/AndroidManifest.xml
 sdk=NEWEST_SDK
diff --git a/car-media-common/tests/robotests/src/com/android/car/media/common/MediaItemMetadataTest.java b/car-media-common/tests/robotests/src/com/android/car/media/common/MediaItemMetadataTest.java
index 1373d4c..81f4066 100644
--- a/car-media-common/tests/robotests/src/com/android/car/media/common/MediaItemMetadataTest.java
+++ b/car-media-common/tests/robotests/src/com/android/car/media/common/MediaItemMetadataTest.java
@@ -23,10 +23,8 @@
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.robolectric.RobolectricTestRunner;
-import org.robolectric.annotation.Config;
 
 @RunWith(RobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class MediaItemMetadataTest {
     private static final String EXTRA_METADATA = "metadata";
 
diff --git a/car-media-common/tests/robotests/src/com/android/car/media/common/TestConfig.java b/car-media-common/tests/robotests/src/com/android/car/media/common/TestConfig.java
deleted file mode 100644
index 8e45ad3..0000000
--- a/car-media-common/tests/robotests/src/com/android/car/media/common/TestConfig.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.car.media.common;
-
-public class TestConfig {
-    public static final int SDK_VERSION = 23;
-    public static final String MANIFEST_PATH =
-            "packages/apps/Car/car-media-common/AndroidManifest.xml";
-}
diff --git a/car-media-common/tests/robotests/src/com/android/car/media/common/playback/PlaybackViewModelTest.java b/car-media-common/tests/robotests/src/com/android/car/media/common/playback/PlaybackViewModelTest.java
index 8eb6283..ad6cfe8 100644
--- a/car-media-common/tests/robotests/src/com/android/car/media/common/playback/PlaybackViewModelTest.java
+++ b/car-media-common/tests/robotests/src/com/android/car/media/common/playback/PlaybackViewModelTest.java
@@ -39,7 +39,6 @@
 import com.android.car.arch.common.testing.InstantTaskExecutorRule;
 import com.android.car.arch.common.testing.TestLifecycleOwner;
 import com.android.car.media.common.MediaItemMetadata;
-import com.android.car.media.common.TestConfig;
 
 import org.junit.Before;
 import org.junit.Rule;
@@ -51,13 +50,11 @@
 import org.mockito.junit.MockitoJUnit;
 import org.mockito.junit.MockitoRule;
 import org.robolectric.RobolectricTestRunner;
-import org.robolectric.annotation.Config;
 
 import java.util.Collections;
 import java.util.List;
 
 @RunWith(RobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class PlaybackViewModelTest {
 
     @Rule
diff --git a/car-media-common/tests/robotests/src/com/android/car/media/common/playback/ProgressLiveDataTest.java b/car-media-common/tests/robotests/src/com/android/car/media/common/playback/ProgressLiveDataTest.java
index fc4959c..991e4f2 100644
--- a/car-media-common/tests/robotests/src/com/android/car/media/common/playback/ProgressLiveDataTest.java
+++ b/car-media-common/tests/robotests/src/com/android/car/media/common/playback/ProgressLiveDataTest.java
@@ -27,7 +27,6 @@
 import com.android.car.arch.common.testing.CaptureObserver;
 import com.android.car.arch.common.testing.InstantTaskExecutorRule;
 import com.android.car.arch.common.testing.TestLifecycleOwner;
-import com.android.car.media.common.TestConfig;
 
 import org.junit.Before;
 import org.junit.Rule;
@@ -37,13 +36,11 @@
 import org.mockito.junit.MockitoJUnit;
 import org.mockito.junit.MockitoRule;
 import org.robolectric.RobolectricTestRunner;
-import org.robolectric.annotation.Config;
 import org.robolectric.shadows.ShadowLooper;
 
 import java.util.concurrent.TimeUnit;
 
 @RunWith(RobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class ProgressLiveDataTest {
     private static final long START_TIME = 500L;
     private static final long START_PROGRESS = 1000L;
diff --git a/car-media-common/tests/robotests/src/com/android/car/media/common/source/MediaBrowserConnectorTest.java b/car-media-common/tests/robotests/src/com/android/car/media/common/source/MediaBrowserConnectorTest.java
index f955e47..0b9a786 100644
--- a/car-media-common/tests/robotests/src/com/android/car/media/common/source/MediaBrowserConnectorTest.java
+++ b/car-media-common/tests/robotests/src/com/android/car/media/common/source/MediaBrowserConnectorTest.java
@@ -30,7 +30,6 @@
 
 import com.android.car.arch.common.testing.InstantTaskExecutorRule;
 import com.android.car.arch.common.testing.TestLifecycleOwner;
-import com.android.car.media.common.TestConfig;
 
 import org.junit.Before;
 import org.junit.Rule;
@@ -42,14 +41,12 @@
 import org.mockito.junit.MockitoJUnit;
 import org.mockito.junit.MockitoRule;
 import org.robolectric.RobolectricTestRunner;
-import org.robolectric.annotation.Config;
 
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
 @RunWith(RobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class MediaBrowserConnectorTest {
 
     @Rule
diff --git a/car-media-common/tests/robotests/src/com/android/car/media/common/source/MediaSourceViewModelTest.java b/car-media-common/tests/robotests/src/com/android/car/media/common/source/MediaSourceViewModelTest.java
index b825fa1..4259c4a 100644
--- a/car-media-common/tests/robotests/src/com/android/car/media/common/source/MediaSourceViewModelTest.java
+++ b/car-media-common/tests/robotests/src/com/android/car/media/common/source/MediaSourceViewModelTest.java
@@ -36,7 +36,6 @@
 import com.android.car.arch.common.testing.CaptureObserver;
 import com.android.car.arch.common.testing.InstantTaskExecutorRule;
 import com.android.car.arch.common.testing.TestLifecycleOwner;
-import com.android.car.media.common.TestConfig;
 
 import org.junit.Before;
 import org.junit.Rule;
@@ -46,10 +45,8 @@
 import org.mockito.junit.MockitoJUnit;
 import org.mockito.junit.MockitoRule;
 import org.robolectric.RobolectricTestRunner;
-import org.robolectric.annotation.Config;
 
 @RunWith(RobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class MediaSourceViewModelTest {
 
     private static final String BROWSER_CONTROLLER_PACKAGE_NAME = "browser";
diff --git a/car-media-common/tests/robotests/src/com/android/car/media/common/source/MediaSourcesLiveDataTest.java b/car-media-common/tests/robotests/src/com/android/car/media/common/source/MediaSourcesLiveDataTest.java
index d9d4e82..35214c7 100644
--- a/car-media-common/tests/robotests/src/com/android/car/media/common/source/MediaSourcesLiveDataTest.java
+++ b/car-media-common/tests/robotests/src/com/android/car/media/common/source/MediaSourcesLiveDataTest.java
@@ -33,7 +33,6 @@
 
 import com.android.car.arch.common.testing.InstantTaskExecutorRule;
 import com.android.car.arch.common.testing.TestLifecycleOwner;
-import com.android.car.media.common.TestConfig;
 
 import org.junit.Before;
 import org.junit.Rule;
@@ -42,7 +41,6 @@
 import org.mockito.junit.MockitoJUnit;
 import org.mockito.junit.MockitoRule;
 import org.robolectric.RobolectricTestRunner;
-import org.robolectric.annotation.Config;
 import org.robolectric.shadows.ShadowApplication;
 import org.robolectric.shadows.ShadowPackageManager;
 
@@ -51,7 +49,6 @@
 import java.util.stream.Collectors;
 
 @RunWith(RobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class MediaSourcesLiveDataTest {
 
     @Rule
diff --git a/car-messenger-common/Android.bp b/car-messenger-common/Android.bp
index 19ed50f..8426cd4 100644
--- a/car-messenger-common/Android.bp
+++ b/car-messenger-common/Android.bp
@@ -30,7 +30,7 @@
     static_libs: [
         "android.car.userlib",
         "androidx.legacy_legacy-support-v4",
-        "car-apps-common-bp",
+        "car-apps-common",
         "car-messenger-protos",
         "connected-device-protos",
     ],
diff --git a/car-settings-lib/Android.mk b/car-settings-lib/Android.mk
deleted file mode 100644
index 9cddc18..0000000
--- a/car-settings-lib/Android.mk
+++ /dev/null
@@ -1,43 +0,0 @@
-#
-# Copyright (C) 2018 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-LOCAL_PATH:= $(call my-dir)
-
-include $(CLEAR_VARS)
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_MODULE := car-settings-lib
-LOCAL_MODULE_TAGS := optional
-
-LOCAL_USE_AAPT2 := true
-
-LOCAL_STATIC_ANDROID_LIBRARIES := \
-    androidx.annotation_annotation \
-    androidx.loader_loader
-
-LOCAL_PROGUARD_ENABLED := disabled
-
-LOCAL_MIN_SDK_VERSION := 24
-
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-# Use the following include to make our test apk.
-ifeq (,$(ONE_SHOT_MAKEFILE))
-    include $(call all-makefiles-under,$(LOCAL_PATH))
-endif
diff --git a/car-settings-lib/OWNERS b/car-settings-lib/OWNERS
deleted file mode 100644
index e8ed8af..0000000
--- a/car-settings-lib/OWNERS
+++ /dev/null
@@ -1,4 +0,0 @@
-# People who can approve changes for submission.
-davidln@google.com
-rogerxue@google.com
-roshanagrawal@google.com
diff --git a/car-settings-lib/README.txt b/car-settings-lib/README.txt
deleted file mode 100644
index 8dcdb8a..0000000
--- a/car-settings-lib/README.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-Library Project for Car settings.
-Intended for sharing related code between Car Settings and CarSetUpWizard.
\ No newline at end of file
diff --git a/car-settings-lib/res/values-af/strings.xml b/car-settings-lib/res/values-af/strings.xml
deleted file mode 100644
index 38a0e1b..0000000
--- a/car-settings-lib/res/values-af/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Voorgestel"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Alle tale"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Veld kan nie leeg wees nie."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Ingevoerde gebruikernaam is ongeldig."</string>
-</resources>
diff --git a/car-settings-lib/res/values-am/strings.xml b/car-settings-lib/res/values-am/strings.xml
deleted file mode 100644
index 7aec3e0..0000000
--- a/car-settings-lib/res/values-am/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"የተጠቆሙ"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"ሁሉም ቋንቋዎች"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"መስክ ባዶ መሆን አይችልም።"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"የገባው ተጠቃሚ ስም የማይሠራ ነው።"</string>
-</resources>
diff --git a/car-settings-lib/res/values-ar/strings.xml b/car-settings-lib/res/values-ar/strings.xml
deleted file mode 100644
index 2fb7894..0000000
--- a/car-settings-lib/res/values-ar/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"اللغات المقترحة"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"جميع اللغات"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"يجب عدم ترك الحقل فارغًا."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"اسم المستخدم المُدخل غير صالح."</string>
-</resources>
diff --git a/car-settings-lib/res/values-as/strings.xml b/car-settings-lib/res/values-as/strings.xml
deleted file mode 100644
index 747e8ab..0000000
--- a/car-settings-lib/res/values-as/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"পৰামৰ্শ দিয়া ভাষা"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"সকলো ভাষা"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"এই খালী ঠাই পূৰ নকৰাকৈ এৰিব নোৱাৰি।"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"আপুনি দিয়া ব্য়ৱহাৰকাৰীৰ নাম মান্য় নহয়।"</string>
-</resources>
diff --git a/car-settings-lib/res/values-az/strings.xml b/car-settings-lib/res/values-az/strings.xml
deleted file mode 100644
index 29f7cfb..0000000
--- a/car-settings-lib/res/values-az/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Təklif edilmiş"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Bütün dillər"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Sahə boş ola bilməz."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Daxil edilən istifadəçi adı yanlışdır."</string>
-</resources>
diff --git a/car-settings-lib/res/values-b+sr+Latn/strings.xml b/car-settings-lib/res/values-b+sr+Latn/strings.xml
deleted file mode 100644
index c9450b1..0000000
--- a/car-settings-lib/res/values-b+sr+Latn/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Predloženi"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Svi jezici"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Polje ne sme da bude prazno."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Korisničko ime koje ste uneli je nevažeće."</string>
-</resources>
diff --git a/car-settings-lib/res/values-be/strings.xml b/car-settings-lib/res/values-be/strings.xml
deleted file mode 100644
index 0a55864..0000000
--- a/car-settings-lib/res/values-be/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Прапанавана"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Усе мовы"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Поле не можа быць пустым."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Уведзена несапраўднае імя карыстальніка"</string>
-</resources>
diff --git a/car-settings-lib/res/values-bg/strings.xml b/car-settings-lib/res/values-bg/strings.xml
deleted file mode 100644
index 7427987..0000000
--- a/car-settings-lib/res/values-bg/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Предложени"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Всички езици"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Полето трябва да се попълни."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Въведеното потребителско име е невалидно."</string>
-</resources>
diff --git a/car-settings-lib/res/values-bn/strings.xml b/car-settings-lib/res/values-bn/strings.xml
deleted file mode 100644
index 2023f4f..0000000
--- a/car-settings-lib/res/values-bn/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"প্রস্তাবিত"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"সমস্ত ভাষা"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"ক্ষেত্র খালি রাখা যাবে না।"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"প্রদান করা ব্যবহারকারীর নামটি সঠিক নয়।"</string>
-</resources>
diff --git a/car-settings-lib/res/values-bs/strings.xml b/car-settings-lib/res/values-bs/strings.xml
deleted file mode 100644
index adf86c9..0000000
--- a/car-settings-lib/res/values-bs/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Predloženo"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Svi jezici"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Polje ne može biti prazno."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Korisničko ime koje ste unijeli je nevažeće."</string>
-</resources>
diff --git a/car-settings-lib/res/values-ca/strings.xml b/car-settings-lib/res/values-ca/strings.xml
deleted file mode 100644
index ee2b958..0000000
--- a/car-settings-lib/res/values-ca/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Suggerits"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Tots els idiomes"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"El camp no pot estar en blanc."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"El nom d\'usuari que has introduït no és vàlid."</string>
-</resources>
diff --git a/car-settings-lib/res/values-cs/strings.xml b/car-settings-lib/res/values-cs/strings.xml
deleted file mode 100644
index fca045b..0000000
--- a/car-settings-lib/res/values-cs/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Navrženo"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Všechny jazyky"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Pole nesmí být prázdné."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Zadané uživatelské jméno není platné."</string>
-</resources>
diff --git a/car-settings-lib/res/values-da/strings.xml b/car-settings-lib/res/values-da/strings.xml
deleted file mode 100644
index 2a585cb..0000000
--- a/car-settings-lib/res/values-da/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Foreslået"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Alle sprog"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Feltet må ikke være tomt."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Det brugernavn, du har angivet, er ugyldigt."</string>
-</resources>
diff --git a/car-settings-lib/res/values-de/strings.xml b/car-settings-lib/res/values-de/strings.xml
deleted file mode 100644
index a138ce7..0000000
--- a/car-settings-lib/res/values-de/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Vorgeschlagen"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Alle Sprachen"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Das Feld darf nicht leer sein."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Der eingegebene Nutzername ist ungültig."</string>
-</resources>
diff --git a/car-settings-lib/res/values-el/strings.xml b/car-settings-lib/res/values-el/strings.xml
deleted file mode 100644
index 2496924..0000000
--- a/car-settings-lib/res/values-el/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Προτεινόμενες"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Όλες οι γλώσσες"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Το πεδίο δεν μπορεί να παραμείνει κενό."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Το όνομα χρήστη που καταχωρίστηκε είναι μη έγκυρο."</string>
-</resources>
diff --git a/car-settings-lib/res/values-en-rAU/strings.xml b/car-settings-lib/res/values-en-rAU/strings.xml
deleted file mode 100644
index 96a64e0..0000000
--- a/car-settings-lib/res/values-en-rAU/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Suggested"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"All languages"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Field can\'t be blank."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Username entered is invalid."</string>
-</resources>
diff --git a/car-settings-lib/res/values-en-rCA/strings.xml b/car-settings-lib/res/values-en-rCA/strings.xml
deleted file mode 100644
index 96a64e0..0000000
--- a/car-settings-lib/res/values-en-rCA/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Suggested"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"All languages"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Field can\'t be blank."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Username entered is invalid."</string>
-</resources>
diff --git a/car-settings-lib/res/values-en-rGB/strings.xml b/car-settings-lib/res/values-en-rGB/strings.xml
deleted file mode 100644
index 96a64e0..0000000
--- a/car-settings-lib/res/values-en-rGB/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Suggested"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"All languages"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Field can\'t be blank."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Username entered is invalid."</string>
-</resources>
diff --git a/car-settings-lib/res/values-en-rIN/strings.xml b/car-settings-lib/res/values-en-rIN/strings.xml
deleted file mode 100644
index 96a64e0..0000000
--- a/car-settings-lib/res/values-en-rIN/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Suggested"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"All languages"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Field can\'t be blank."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Username entered is invalid."</string>
-</resources>
diff --git a/car-settings-lib/res/values-en-rXC/strings.xml b/car-settings-lib/res/values-en-rXC/strings.xml
deleted file mode 100644
index 80192d2..0000000
--- a/car-settings-lib/res/values-en-rXC/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‏‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‏‎‏‏‏‏‏‏‎‎‏‎‏‏‎‏‎‏‏‎‏‏‎‏‎‎‎‎‎‎‎‏‎‎‎‏‏‏‎‎‎‏‎‎‏‏‏‏‏‏‏‎‏‎‎‎‎‎‏‏‎Suggested‎‏‎‎‏‎"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‏‏‎‎‎‏‎‏‏‏‏‏‎‏‏‎‏‏‎‎‎‏‏‏‎‏‎‏‏‎‎‏‏‏‏‎‎‏‎‎‎‏‎‎‏‏‏‏‏‏‏‎‎‎‏‏‏‏‏‏‎‏‎‎‎‎‏‎‏‎‎‏‏‏‎‎All languages‎‏‎‎‏‎"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‏‏‎‎‎‏‎‏‏‏‏‏‏‏‎‎‏‎‏‏‏‏‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‎‎‎‏‏‎‎‏‎‎‏‏‏‏‏‎‏‏‎‏‏‏‎‎‏‏‎‏‎‎‎‎‎‏‏‎‏‎‏‎Field can’t be blank.‎‏‎‎‏‎"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‏‏‎‎‎‏‎‏‏‏‏‏‏‏‏‏‏‎‎‏‎‎‏‏‏‎‎‏‎‎‏‏‏‏‏‎‎‏‏‎‏‏‏‎‏‎‏‎‎‏‎‏‎‎‏‎‎‏‎‏‎‎‎‏‎‏‎‎‎‎‎‎‏‎‏‎‎Username entered is invalid.‎‏‎‎‏‎"</string>
-</resources>
diff --git a/car-settings-lib/res/values-es-rUS/strings.xml b/car-settings-lib/res/values-es-rUS/strings.xml
deleted file mode 100644
index 92eff9f..0000000
--- a/car-settings-lib/res/values-es-rUS/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Sugerencias"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Todos los idiomas"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Este campo no puede quedar vacío."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"El nombre de usuario ingresado no es válido."</string>
-</resources>
diff --git a/car-settings-lib/res/values-es/strings.xml b/car-settings-lib/res/values-es/strings.xml
deleted file mode 100644
index 0e70ac6..0000000
--- a/car-settings-lib/res/values-es/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Sugerencias"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Todos los idiomas"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"El campo no puede estar vacío."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"El nombre de usuario introducido no es válido."</string>
-</resources>
diff --git a/car-settings-lib/res/values-et/strings.xml b/car-settings-lib/res/values-et/strings.xml
deleted file mode 100644
index 0282368..0000000
--- a/car-settings-lib/res/values-et/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Soovitatud"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Kõik keeled"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Väli ei tohi olla tühi."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Sisestatud kasutajanimi on sobimatu."</string>
-</resources>
diff --git a/car-settings-lib/res/values-eu/strings.xml b/car-settings-lib/res/values-eu/strings.xml
deleted file mode 100644
index c8c0e10..0000000
--- a/car-settings-lib/res/values-eu/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Iradokitakoak"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Hizkuntza guztiak"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Eremuak ezin du hutsik egon."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Idatzitako erabiltzaile-izenak ez du balio."</string>
-</resources>
diff --git a/car-settings-lib/res/values-fa/strings.xml b/car-settings-lib/res/values-fa/strings.xml
deleted file mode 100644
index 3ce1002..0000000
--- a/car-settings-lib/res/values-fa/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"پیشنهادشده"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"همه زبان‌ها"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"این فیلد نمی‌تواند خالی باشد."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"نام کاربری واردشده نامعتبر است."</string>
-</resources>
diff --git a/car-settings-lib/res/values-fi/strings.xml b/car-settings-lib/res/values-fi/strings.xml
deleted file mode 100644
index cb5f2c9..0000000
--- a/car-settings-lib/res/values-fi/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Ehdotettu"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Kaikki kielet"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Kenttä ei voi olla tyhjä."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Annettu käyttäjänimi on virheellinen."</string>
-</resources>
diff --git a/car-settings-lib/res/values-fr-rCA/strings.xml b/car-settings-lib/res/values-fr-rCA/strings.xml
deleted file mode 100644
index ee93f50..0000000
--- a/car-settings-lib/res/values-fr-rCA/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Suggestions"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Toutes les langues"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Champ obligatoire."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Le nom d\'utilisateur entré n\'est pas valide."</string>
-</resources>
diff --git a/car-settings-lib/res/values-fr/strings.xml b/car-settings-lib/res/values-fr/strings.xml
deleted file mode 100644
index 250d38a..0000000
--- a/car-settings-lib/res/values-fr/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Suggestion"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Toutes les langues"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Champ obligatoire."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Le nom d\'utilisateur saisi est incorrect."</string>
-</resources>
diff --git a/car-settings-lib/res/values-gl/strings.xml b/car-settings-lib/res/values-gl/strings.xml
deleted file mode 100644
index e2a772a..0000000
--- a/car-settings-lib/res/values-gl/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Idiomas suxeridos"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Todos os idiomas"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"O campo non pode estar en branco."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"O nome de usuario que introduciches non é válido."</string>
-</resources>
diff --git a/car-settings-lib/res/values-gu/strings.xml b/car-settings-lib/res/values-gu/strings.xml
deleted file mode 100644
index 22826c7..0000000
--- a/car-settings-lib/res/values-gu/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"સૂચવેલા"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"બધી ભાષાઓ"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"ફીલ્ડ ખાલી રાખી શકાય નહીં."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"દાખલ કરેલું વપરાશકર્તાનું નામ અમાન્ય છે."</string>
-</resources>
diff --git a/car-settings-lib/res/values-hi/strings.xml b/car-settings-lib/res/values-hi/strings.xml
deleted file mode 100644
index 042be3b..0000000
--- a/car-settings-lib/res/values-hi/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"सुझाए गए"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"सभी भाषाएं"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"नाम लिखने की जगह (फ़ील्ड) खाली नहीं रखी जा सकती."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"डाला गया उपयोगकर्ता नाम गलत है."</string>
-</resources>
diff --git a/car-settings-lib/res/values-hr/strings.xml b/car-settings-lib/res/values-hr/strings.xml
deleted file mode 100644
index c0a69ff..0000000
--- a/car-settings-lib/res/values-hr/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Predloženo"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Svi jezici"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Polje ne može biti prazno."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Uneseno korisničko ime nije važeće."</string>
-</resources>
diff --git a/car-settings-lib/res/values-hu/strings.xml b/car-settings-lib/res/values-hu/strings.xml
deleted file mode 100644
index 275ea75..0000000
--- a/car-settings-lib/res/values-hu/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Javasolt"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Minden nyelv"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"A mező nem lehet üres."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"A megadott felhasználónév érvénytelen."</string>
-</resources>
diff --git a/car-settings-lib/res/values-hy/strings.xml b/car-settings-lib/res/values-hy/strings.xml
deleted file mode 100644
index fcab9c7..0000000
--- a/car-settings-lib/res/values-hy/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Առաջարկվող"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Բոլոր լեզուները"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Դաշտը չի կարող դատարկ լինել:"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Մուտքագրված օգտանունն անվավեր է։"</string>
-</resources>
diff --git a/car-settings-lib/res/values-in/strings.xml b/car-settings-lib/res/values-in/strings.xml
deleted file mode 100644
index 51e4d3e..0000000
--- a/car-settings-lib/res/values-in/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Disarankan"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Semua bahasa"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Kolom harus diisi."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Nama pengguna yang dimasukkan tidak valid."</string>
-</resources>
diff --git a/car-settings-lib/res/values-is/strings.xml b/car-settings-lib/res/values-is/strings.xml
deleted file mode 100644
index 3dffde3..0000000
--- a/car-settings-lib/res/values-is/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Tillögur"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Öll tungumál"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Reiturinn má ekki vera auður."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Ógilt notandanafn var slegið inn."</string>
-</resources>
diff --git a/car-settings-lib/res/values-it/strings.xml b/car-settings-lib/res/values-it/strings.xml
deleted file mode 100644
index 69e1425..0000000
--- a/car-settings-lib/res/values-it/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Suggerite"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Tutte le lingue"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Il campo non può essere vuoto."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Il nome utente inserito non è valido."</string>
-</resources>
diff --git a/car-settings-lib/res/values-iw/strings.xml b/car-settings-lib/res/values-iw/strings.xml
deleted file mode 100644
index 180b3e8..0000000
--- a/car-settings-lib/res/values-iw/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"הצעות"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"כל השפות"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"חובה למלא את השדה."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"שם המשתמש שהוזן לא חוקי."</string>
-</resources>
diff --git a/car-settings-lib/res/values-ja/strings.xml b/car-settings-lib/res/values-ja/strings.xml
deleted file mode 100644
index 6374217..0000000
--- a/car-settings-lib/res/values-ja/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"言語の候補"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"すべての言語"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"フィールドは空欄にできません。"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"入力されたユーザー名が無効です。"</string>
-</resources>
diff --git a/car-settings-lib/res/values-ka/strings.xml b/car-settings-lib/res/values-ka/strings.xml
deleted file mode 100644
index 6f93ba9..0000000
--- a/car-settings-lib/res/values-ka/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"რეკომენდებული"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"ყველა ენა"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"არ შეიძლება ველი ცარიელი იყოს."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"მომხმარებლის სახელი არასწორადაა შეყვანილი."</string>
-</resources>
diff --git a/car-settings-lib/res/values-kk/strings.xml b/car-settings-lib/res/values-kk/strings.xml
deleted file mode 100644
index ebf2013..0000000
--- a/car-settings-lib/res/values-kk/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Ұсынылған"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Барлық тілдер"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Өріс бос болмауы керек."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Енгізілген пайдаланушы аты жарамсыз."</string>
-</resources>
diff --git a/car-settings-lib/res/values-km/strings.xml b/car-settings-lib/res/values-km/strings.xml
deleted file mode 100644
index 2274c4c..0000000
--- a/car-settings-lib/res/values-km/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"បាន​ណែនាំ"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"ភាសាទាំងអស់"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"កន្លែងបញ្ចូលមិន​អាច​ទទេឡើយ។"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"ឈ្មោះ​អ្នកប្រើប្រាស់​ដែល​បាន​បញ្ចូល​គឺមិនត្រឹមត្រូវទេ។"</string>
-</resources>
diff --git a/car-settings-lib/res/values-kn/strings.xml b/car-settings-lib/res/values-kn/strings.xml
deleted file mode 100644
index c5815cc..0000000
--- a/car-settings-lib/res/values-kn/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"ಸೂಚಿಸಲಾಗಿರುವುದು"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"ಎಲ್ಲಾ ಭಾಷೆಗಳು"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"ಕ್ಷೇತ್ರವು ಖಾಲಿ ಇರುವಂತಿಲ್ಲ."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"ನಮೂದಿಸಿದ ಬಳಕೆದಾರರ ಹೆಸರು ಅಮಾನ್ಯವಾಗಿದೆ."</string>
-</resources>
diff --git a/car-settings-lib/res/values-ko/strings.xml b/car-settings-lib/res/values-ko/strings.xml
deleted file mode 100644
index 1a818d9..0000000
--- a/car-settings-lib/res/values-ko/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"추천"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"모든 언어"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"입력란을 비워 둘 수 없습니다."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"입력한 사용자 이름이 올바르지 않습니다."</string>
-</resources>
diff --git a/car-settings-lib/res/values-ky/strings.xml b/car-settings-lib/res/values-ky/strings.xml
deleted file mode 100644
index 03e5756..0000000
--- a/car-settings-lib/res/values-ky/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Сунушталган тилдер"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Бардык тилдер"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Талаа бош болбошу керек."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Киргизилген колдонуучунун аты жараксыз."</string>
-</resources>
diff --git a/car-settings-lib/res/values-lo/strings.xml b/car-settings-lib/res/values-lo/strings.xml
deleted file mode 100644
index 439bafa..0000000
--- a/car-settings-lib/res/values-lo/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"ແນະນຳ"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"ທຸກພາສາ"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"ຊ່ອງຂໍ້ມູນບໍ່ສາມາດຫວ່າງເປົ່າໄດ້."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"ຊື່ຜູ້ໃຊ້ທີ່ປ້ອນເຂົ້າບໍ່ຖືກຕ້ອງ."</string>
-</resources>
diff --git a/car-settings-lib/res/values-lt/strings.xml b/car-settings-lib/res/values-lt/strings.xml
deleted file mode 100644
index 3b3f481..0000000
--- a/car-settings-lib/res/values-lt/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Siūloma"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Visos kalbos"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Laukas negali būti tuščias."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Įvestas naudotojo vardas yra netinkamas."</string>
-</resources>
diff --git a/car-settings-lib/res/values-lv/strings.xml b/car-settings-lib/res/values-lv/strings.xml
deleted file mode 100644
index 856dcf4..0000000
--- a/car-settings-lib/res/values-lv/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Ieteiktās"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Visas valodas"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Lauks nedrīkst būt tukšs."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Ievadītais lietotājvārds nav derīgs."</string>
-</resources>
diff --git a/car-settings-lib/res/values-mk/strings.xml b/car-settings-lib/res/values-mk/strings.xml
deleted file mode 100644
index f344b18..0000000
--- a/car-settings-lib/res/values-mk/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Предложени"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Сите јазици"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Полето не може да биде празно."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Внесеното корисничко име е неважечко."</string>
-</resources>
diff --git a/car-settings-lib/res/values-ml/strings.xml b/car-settings-lib/res/values-ml/strings.xml
deleted file mode 100644
index afb887d..0000000
--- a/car-settings-lib/res/values-ml/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"നിര്‍‌ദ്ദേശിക്കുന്നവ"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"എല്ലാ ഭാഷകളും"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"ഫീൽഡ് ശൂന്യമായിടരുത്."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"നൽകിയ ഉപയോക്തൃ നാമം അസാധുവാണ്."</string>
-</resources>
diff --git a/car-settings-lib/res/values-mn/strings.xml b/car-settings-lib/res/values-mn/strings.xml
deleted file mode 100644
index d747c7b..0000000
--- a/car-settings-lib/res/values-mn/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Санал болгосон"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Бүх хэл"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Талбар хоосон байж болохгүй."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Оруулсан хэрэглэгчийн нэр буруу байна."</string>
-</resources>
diff --git a/car-settings-lib/res/values-mr/strings.xml b/car-settings-lib/res/values-mr/strings.xml
deleted file mode 100644
index f915f65..0000000
--- a/car-settings-lib/res/values-mr/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"सूचित"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"सर्व भाषा"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"फील्ड रिकामे असू शकत नाही."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"एंटर केलेले वापरकर्ता नाव चुकीचे आहे."</string>
-</resources>
diff --git a/car-settings-lib/res/values-ms/strings.xml b/car-settings-lib/res/values-ms/strings.xml
deleted file mode 100644
index e67f995..0000000
--- a/car-settings-lib/res/values-ms/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Dicadangkan"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Semua bahasa"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Medan tidak boleh kosong."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Nama pengguna yang dimasukkan tidak sah."</string>
-</resources>
diff --git a/car-settings-lib/res/values-my/strings.xml b/car-settings-lib/res/values-my/strings.xml
deleted file mode 100644
index dd448fa..0000000
--- a/car-settings-lib/res/values-my/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"အကြံပြုထားသော"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"ဘာသာစကားအားလုံး"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"အကွက်ကို ကွက်လပ်ထား၍ မရပါ။"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"ထည့်ထားသော အသုံးပြုသူအမည် မမှန်ကန်ပါ။"</string>
-</resources>
diff --git a/car-settings-lib/res/values-nb/strings.xml b/car-settings-lib/res/values-nb/strings.xml
deleted file mode 100644
index 77dc43a..0000000
--- a/car-settings-lib/res/values-nb/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Foreslått"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Alle språk"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Feltet må fylles ut."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Brukernavnet du skrev inn, er ugyldig."</string>
-</resources>
diff --git a/car-settings-lib/res/values-ne/strings.xml b/car-settings-lib/res/values-ne/strings.xml
deleted file mode 100644
index 6d32ddc..0000000
--- a/car-settings-lib/res/values-ne/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"सुझाव दिइयो"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"सम्पूर्ण भाषाहरू"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"फिल्ड खाली हुन सक्दैन।"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"प्रविष्ट गरिएको प्रयोगकर्ता नाम अमान्य छ।"</string>
-</resources>
diff --git a/car-settings-lib/res/values-nl/strings.xml b/car-settings-lib/res/values-nl/strings.xml
deleted file mode 100644
index 25f84ef..0000000
--- a/car-settings-lib/res/values-nl/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Voorgesteld"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Alle talen"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Veld mag niet leeg zijn."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"De ingevoerde gebruikersnaam is ongeldig."</string>
-</resources>
diff --git a/car-settings-lib/res/values-or/strings.xml b/car-settings-lib/res/values-or/strings.xml
deleted file mode 100644
index 3690ef6..0000000
--- a/car-settings-lib/res/values-or/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"ପରାମର୍ଶିତ"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"ସମସ୍ତ ଭାଷା"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"ସ୍ଥାନକୁ ଖାଲି ଛାଡ଼ି ହେବନାହିଁ।"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"ଲେଖାଯାଇଥିବା ଉପଯୋଗକର୍ତ୍ତାନାମଟି ଠିକ୍‍ ନାହିଁ।"</string>
-</resources>
diff --git a/car-settings-lib/res/values-pa/strings.xml b/car-settings-lib/res/values-pa/strings.xml
deleted file mode 100644
index c501aaf..0000000
--- a/car-settings-lib/res/values-pa/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"ਸੁਝਾਏ ਗਏ"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"ਸਾਰੀਆਂ ਭਾਸ਼ਾਵਾਂ"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"ਖੇਤਰ ਖਾਲੀ ਨਹੀਂ ਛੱਡਿਆ ਜਾ ਸਕਦਾ।"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"ਦਾਖਲ ਕੀਤਾ ਗਿਆ ਵਰਤੋਂਕਾਰ ਨਾਮ ਅਵੈਧ ਹੈ।"</string>
-</resources>
diff --git a/car-settings-lib/res/values-pl/strings.xml b/car-settings-lib/res/values-pl/strings.xml
deleted file mode 100644
index 00bbad3..0000000
--- a/car-settings-lib/res/values-pl/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Sugerowane"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Wszystkie języki"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Pole nie może być puste."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Podana nazwa użytkownika jest nieprawidłowa."</string>
-</resources>
diff --git a/car-settings-lib/res/values-pt-rPT/strings.xml b/car-settings-lib/res/values-pt-rPT/strings.xml
deleted file mode 100644
index 7ad6367..0000000
--- a/car-settings-lib/res/values-pt-rPT/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Sugeridos"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Todos os idiomas"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"O campo não pode estar em branco."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"O nome de utilizador introduzido é inválido."</string>
-</resources>
diff --git a/car-settings-lib/res/values-pt/strings.xml b/car-settings-lib/res/values-pt/strings.xml
deleted file mode 100644
index ac5fb11..0000000
--- a/car-settings-lib/res/values-pt/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Sugeridos"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Todos os idiomas"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"O campo não pode ficar em branco."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"O nome de usuário informado é inválido."</string>
-</resources>
diff --git a/car-settings-lib/res/values-ro/strings.xml b/car-settings-lib/res/values-ro/strings.xml
deleted file mode 100644
index b79ede1..0000000
--- a/car-settings-lib/res/values-ro/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Sugerate"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Toate limbile"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Câmpul trebuie completat."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Numele de utilizator introdus este nevalid."</string>
-</resources>
diff --git a/car-settings-lib/res/values-ru/strings.xml b/car-settings-lib/res/values-ru/strings.xml
deleted file mode 100644
index d5f064c..0000000
--- a/car-settings-lib/res/values-ru/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Рекомендуемые"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Все языки"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Поле должно быть заполнено."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Указано недопустимое имя пользователя."</string>
-</resources>
diff --git a/car-settings-lib/res/values-si/strings.xml b/car-settings-lib/res/values-si/strings.xml
deleted file mode 100644
index 79e83f7..0000000
--- a/car-settings-lib/res/values-si/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"යෝජිත"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"සියලු භාෂා"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"ක්ෂේත්‍රය හිස් විය නොහැක."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"ඇතුළු කළ පරිශීලක නාමය අවලංගුය."</string>
-</resources>
diff --git a/car-settings-lib/res/values-sk/strings.xml b/car-settings-lib/res/values-sk/strings.xml
deleted file mode 100644
index 7bf3819..0000000
--- a/car-settings-lib/res/values-sk/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Navrhované"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Všetky jazyky"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Pole nesmie byť prázdne."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Zadané používateľské meno je neplatné."</string>
-</resources>
diff --git a/car-settings-lib/res/values-sl/strings.xml b/car-settings-lib/res/values-sl/strings.xml
deleted file mode 100644
index 5f46458..0000000
--- a/car-settings-lib/res/values-sl/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Predlagano"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Vsi jeziki"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Polje ne sme biti prazno."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Vneseno uporabniško ime ni veljavno."</string>
-</resources>
diff --git a/car-settings-lib/res/values-sq/strings.xml b/car-settings-lib/res/values-sq/strings.xml
deleted file mode 100644
index 18cbe0f..0000000
--- a/car-settings-lib/res/values-sq/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Sugjeruar"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Të gjitha gjuhët"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Fusha nuk mund të lihet bosh."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Emri i përdoruesit që fute është i pavlefshëm."</string>
-</resources>
diff --git a/car-settings-lib/res/values-sr/strings.xml b/car-settings-lib/res/values-sr/strings.xml
deleted file mode 100644
index 46b5008..0000000
--- a/car-settings-lib/res/values-sr/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Предложени"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Сви језици"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Поље не сме да буде празно."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Корисничко име које сте унели је неважеће."</string>
-</resources>
diff --git a/car-settings-lib/res/values-sv/strings.xml b/car-settings-lib/res/values-sv/strings.xml
deleted file mode 100644
index d9e2309..0000000
--- a/car-settings-lib/res/values-sv/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Förslag"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Alla språk"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Fältet får inte vara tomt."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Du har angett ett ogiltigt användarnamn."</string>
-</resources>
diff --git a/car-settings-lib/res/values-sw/strings.xml b/car-settings-lib/res/values-sw/strings.xml
deleted file mode 100644
index dbe4958..0000000
--- a/car-settings-lib/res/values-sw/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Zinazopendekezwa"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Lugha zote"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Ni lazima ujaze sehemu hii"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Jina uliloweka la mtumiaji si sahihi."</string>
-</resources>
diff --git a/car-settings-lib/res/values-ta/strings.xml b/car-settings-lib/res/values-ta/strings.xml
deleted file mode 100644
index e21d564..0000000
--- a/car-settings-lib/res/values-ta/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"பரிந்துரைகள்"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"எல்லா மொழிகளும்"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"புலம், வெறுமையாக இருக்கக்கூடாது."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"பயனர்பெயரைத் தவறாக உள்ளிட்டுள்ளீர்கள்."</string>
-</resources>
diff --git a/car-settings-lib/res/values-te/strings.xml b/car-settings-lib/res/values-te/strings.xml
deleted file mode 100644
index 38b470d..0000000
--- a/car-settings-lib/res/values-te/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"సూచించినవి"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"అన్ని భాషలు"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"ఫీల్డ్ ఖాళీగా ఉండరాదు."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"నమోదు చేసిన వినియోగదారు పేరు చెల్లదు."</string>
-</resources>
diff --git a/car-settings-lib/res/values-th/strings.xml b/car-settings-lib/res/values-th/strings.xml
deleted file mode 100644
index 10ac43a..0000000
--- a/car-settings-lib/res/values-th/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"แนะนำ"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"ทุกภาษา"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"ต้องกรอกข้อมูลในช่อง"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"ชื่อผู้ใช้ที่ป้อนไม่ถูกต้อง"</string>
-</resources>
diff --git a/car-settings-lib/res/values-tl/strings.xml b/car-settings-lib/res/values-tl/strings.xml
deleted file mode 100644
index 852721f..0000000
--- a/car-settings-lib/res/values-tl/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Iminumungkahi"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Lahat ng wika"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Hindi maaaring blangko ang field."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Invalid ang inilagay na username."</string>
-</resources>
diff --git a/car-settings-lib/res/values-tr/strings.xml b/car-settings-lib/res/values-tr/strings.xml
deleted file mode 100644
index bb7499e..0000000
--- a/car-settings-lib/res/values-tr/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Önerilen"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Tüm diller"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Alan boş olamaz."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Girilen kullanıcı adı geçersiz."</string>
-</resources>
diff --git a/car-settings-lib/res/values-uk/strings.xml b/car-settings-lib/res/values-uk/strings.xml
deleted file mode 100644
index 4429605..0000000
--- a/car-settings-lib/res/values-uk/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Пропонується"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Усі мови"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Поле не може бути порожнім."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Введене ім’я користувача недійсне."</string>
-</resources>
diff --git a/car-settings-lib/res/values-ur/strings.xml b/car-settings-lib/res/values-ur/strings.xml
deleted file mode 100644
index 64f8d4a..0000000
--- a/car-settings-lib/res/values-ur/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"تجویز کردہ"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"سبھی زبانیں"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"فیلڈ خالی نہیں رہ سکتی۔"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"درج کردہ صارف نام غلط ہے۔"</string>
-</resources>
diff --git a/car-settings-lib/res/values-uz/strings.xml b/car-settings-lib/res/values-uz/strings.xml
deleted file mode 100644
index 1947548..0000000
--- a/car-settings-lib/res/values-uz/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Taklif qilingan"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Barcha tillar"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Maydon bo‘sh qoldirilishi mumkin emas."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Kiritilgan foydalanuvchi nomi xato."</string>
-</resources>
diff --git a/car-settings-lib/res/values-vi/strings.xml b/car-settings-lib/res/values-vi/strings.xml
deleted file mode 100644
index 6dbc7d7..0000000
--- a/car-settings-lib/res/values-vi/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Ðược đề xuất"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Tất cả ngôn ngữ"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Không được để trống trường."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Tên người dùng đã nhập là không hợp lệ."</string>
-</resources>
diff --git a/car-settings-lib/res/values-zh-rCN/strings.xml b/car-settings-lib/res/values-zh-rCN/strings.xml
deleted file mode 100644
index f9462c5..0000000
--- a/car-settings-lib/res/values-zh-rCN/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"建议"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"所有语言"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"此字段不能留空。"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"输入的用户名无效。"</string>
-</resources>
diff --git a/car-settings-lib/res/values-zh-rHK/strings.xml b/car-settings-lib/res/values-zh-rHK/strings.xml
deleted file mode 100644
index 8c5d191..0000000
--- a/car-settings-lib/res/values-zh-rHK/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"建議"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"所有語言"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"欄位不得留空。"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"輸入的使用者名稱無效。"</string>
-</resources>
diff --git a/car-settings-lib/res/values-zh-rTW/strings.xml b/car-settings-lib/res/values-zh-rTW/strings.xml
deleted file mode 100644
index 8e9c84a..0000000
--- a/car-settings-lib/res/values-zh-rTW/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"建議"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"所有語言"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"欄位不能空白。"</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"輸入的使用者名稱無效。"</string>
-</resources>
diff --git a/car-settings-lib/res/values-zu/strings.xml b/car-settings-lib/res/values-zu/strings.xml
deleted file mode 100644
index 2e55b3f..0000000
--- a/car-settings-lib/res/values-zu/strings.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="language_picker_list_suggested_header" msgid="8931437200168779395">"Okuphakanyisiwe"</string>
-    <string name="language_picker_list_all_header" msgid="3907663373765943630">"Zonke izilimi"</string>
-    <string name="name_input_blank_error" msgid="5460631644831377461">"Inkundla ayikwazi ukungabi nalutho."</string>
-    <string name="name_input_invalid_error" msgid="8735081597199782922">"Igama lomsebenzisi elifakiwe alivumelekile."</string>
-</resources>
diff --git a/car-settings-lib/res/values/strings.xml b/car-settings-lib/res/values/strings.xml
deleted file mode 100644
index c9f76e7..0000000
--- a/car-settings-lib/res/values/strings.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Copyright (C) 2018 Google Inc.
-
-    Licensed under the Apache License, Version 2.0 (the "License");
-    you may not use this file except in compliance with the License.
-    You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<resources>
-
-    <!-- Language picker list suggested locale header [CHAR LIMIT=40] -->
-    <string name="language_picker_list_suggested_header">Suggested</string>
-
-    <!-- Language picker list all other locales header [CHAR LIMIT=40] -->
-    <string name="language_picker_list_all_header">All languages</string>
-
-    <!-- An error message indicating that the name input field has been left blank and cannot be. [CHAR_LIMIT=50] -->
-    <string name="name_input_blank_error">Field can\u2019t be blank.</string>
-
-    <!-- An error message indicating that the name the user has entered is invalid. [CHAR_LIMIT=50] -->
-    <string name="name_input_invalid_error">Username entered is invalid.</string>
-
-</resources>
\ No newline at end of file
diff --git a/car-settings-lib/src/com/android/car/settingslib/language/LanguagePickerUtils.java b/car-settings-lib/src/com/android/car/settingslib/language/LanguagePickerUtils.java
deleted file mode 100644
index ef5dc46..0000000
--- a/car-settings-lib/src/com/android/car/settingslib/language/LanguagePickerUtils.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright (C) 2018 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.car.settingslib.language;
-
-import android.app.ActivityManager;
-import android.content.Context;
-import android.os.RemoteException;
-
-import androidx.annotation.Nullable;
-
-import com.android.internal.app.LocaleHelper;
-import com.android.internal.app.LocaleStore;
-import com.android.internal.app.SuggestedLocaleAdapter;
-
-import java.util.Locale;
-import java.util.Set;
-
-/**
- * Utility class that supports the language/locale picker flows.
- */
-public final class LanguagePickerUtils {
-    /**
-     * Creates an instance of {@link SuggestedLocaleAdapter} with a locale
-     * {@link LocaleStore.LocaleInfo} that is scoped to a parent locale if a parent locale is
-     * provided.
-     */
-    public static SuggestedLocaleAdapter createSuggestedLocaleAdapter(
-            Context context,
-            Set<LocaleStore.LocaleInfo> localeInfoSet,
-            @Nullable LocaleStore.LocaleInfo parent) {
-        boolean countryMode = (parent != null);
-        Locale displayLocale = countryMode ? parent.getLocale() : Locale.getDefault();
-        SuggestedLocaleAdapter adapter = new SuggestedLocaleAdapter(localeInfoSet, countryMode);
-        LocaleHelper.LocaleInfoComparator comp =
-                new LocaleHelper.LocaleInfoComparator(displayLocale, countryMode);
-        adapter.sort(comp);
-        adapter.setDisplayLocale(context, displayLocale);
-        return adapter;
-    }
-
-    /**
-     * Returns the locale from current system configuration, or the default locale if no system
-     * locale is available.
-     */
-    public static Locale getConfiguredLocale() {
-        try {
-            Locale configLocale =
-                    ActivityManager.getService().getConfiguration().getLocales().get(0);
-            return configLocale != null ? configLocale : Locale.getDefault();
-        } catch (RemoteException e) {
-            return Locale.getDefault();
-        }
-    }
-
-    private LanguagePickerUtils() {}
-}
diff --git a/car-settings-lib/src/com/android/car/settingslib/language/LocaleSelectionListener.java b/car-settings-lib/src/com/android/car/settingslib/language/LocaleSelectionListener.java
deleted file mode 100644
index 2541bf8..0000000
--- a/car-settings-lib/src/com/android/car/settingslib/language/LocaleSelectionListener.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright (C) 2018 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.car.settingslib.language;
-
-import com.android.internal.app.LocaleStore;
-
-/**
- * Listener interface that facilitates notification of changes is locale selection.
- */
-public interface LocaleSelectionListener {
-    /**
-     * Called when a language choice has been selected.
-     */
-    void onLocaleSelected(LocaleStore.LocaleInfo localeInfo);
-
-    /**
-     * Called when a parent locale that has at least 2 child locales is selected. The
-     * expectation here is what the PagedList in the LanguagePickerFragment will be updated to
-     * display the child locales.
-     */
-    void onParentWithChildrenLocaleSelected(LocaleStore.LocaleInfo localeInfo);
-}
diff --git a/car-settings-lib/src/com/android/car/settingslib/loader/AsyncLoader.java b/car-settings-lib/src/com/android/car/settingslib/loader/AsyncLoader.java
deleted file mode 100644
index d706c3a..0000000
--- a/car-settings-lib/src/com/android/car/settingslib/loader/AsyncLoader.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.car.settingslib.loader;
-
-import android.annotation.Nullable;
-import android.content.Context;
-
-import androidx.loader.content.AsyncTaskLoader;
-
-/**
- * This class fills in some boilerplate for AsyncTaskLoader to actually load things.
- * Classes the extend {@link AsyncLoader} need to properly implement required methods expressed in
- * {@link AsyncTaskLoader}
- *
- * <p>Taken from {@link com.android.settingslib.utils.AsyncLoader}. Only change to extend from
- * support library {@link AsyncTaskLoader}
- *
- * @param <T> the data type to be loaded.
- */
-public abstract class AsyncLoader<T> extends AsyncTaskLoader<T> {
-    @Nullable
-    private T mResult;
-
-    public AsyncLoader(Context context) {
-        super(context);
-    }
-
-    @Override
-    protected void onStartLoading() {
-        if (mResult != null) {
-            deliverResult(mResult);
-        }
-
-        if (takeContentChanged() || mResult == null) {
-            forceLoad();
-        }
-    }
-
-    @Override
-    protected void onStopLoading() {
-        cancelLoad();
-    }
-
-    @Override
-    public void deliverResult(T data) {
-        if (isReset()) {
-            return;
-        }
-        mResult = data;
-        if (isStarted()) {
-            super.deliverResult(data);
-        }
-    }
-
-    @Override
-    protected void onReset() {
-        super.onReset();
-        onStopLoading();
-        mResult = null;
-    }
-}
diff --git a/car-settings-lib/src/com/android/car/settingslib/log/LoggerBase.java b/car-settings-lib/src/com/android/car/settingslib/log/LoggerBase.java
deleted file mode 100644
index 2d59899..0000000
--- a/car-settings-lib/src/com/android/car/settingslib/log/LoggerBase.java
+++ /dev/null
@@ -1,220 +0,0 @@
-/*
- * Copyright (C) 2018 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.car.settingslib.log;
-
-import android.text.TextUtils;
-import android.util.Log;
-
-import androidx.annotation.NonNull;
-
-/**
- * Helper class that wraps {@link Log} to log messages to logcat. The intended use for a Logger is
- * to include one per file, using the class.getSimpleName as the prefix, like this:
- *     <pre> private static final Logger LOG = new Logger(MyClass.class); </pre>
- *
- * <p>
- * The logger will log statements in this format:
- *     mTag: [PREFIX] MESSAGE
- *
- * <p>
- * Where mTag is defined by the subclass. This helps differentiate logs while staying within the
- * 23 character limit of the log mTag.
- *
- * <p>
- * When logging verbose and debug logs, the logs should either be guarded by {@code if (LOG.isV())},
- * or a constant if (DEBUG). That DEBUG constant should be false on any submitted code.
- */
-public abstract class LoggerBase {
-    private final String mTag;
-    private final String mPrefix;
-
-    public LoggerBase(Class<?> cls) {
-        this(cls.getSimpleName());
-    }
-
-    public LoggerBase(String prefix) {
-        mTag = getTag();
-        if (TextUtils.isEmpty(mTag)) {
-            throw new IllegalStateException("Tag must be not null or empty");
-        }
-        if (mTag.length() > 23) {
-            throw new IllegalStateException("Tag must be 23 characters or less");
-        }
-        mPrefix = "[" + prefix + "] ";
-    }
-
-    /**
-     * Gets the tag that will be used in all logging calls.
-     */
-    @NonNull
-    protected abstract String getTag();
-
-    /**
-     * Returns true when it is desired to force log all messages.
-     */
-    protected boolean forceAllLogging() {
-        return false;
-    }
-
-    /**
-     * Logs a {@link Log#VERBOSE} log message. Will only be logged if {@link Log#VERBOSE} is
-     * loggable. This is a wrapper around {@link Log#v(String, String)}.
-     *
-     * @param message The message you would like logged.
-     */
-    public void v(String message) {
-        if (isV()) {
-            Log.v(mTag, mPrefix.concat(message));
-        }
-    }
-
-    /**
-     * Logs a {@link Log#VERBOSE} log message. Will only be logged if {@link Log#VERBOSE} is
-     * loggable. This is a wrapper around {@link Log#v(String, String, Throwable)}.
-     *
-     * @param message The message you would like logged.
-     * @param throwable An exception to log
-     */
-    public void v(String message, Throwable throwable) {
-        if (isV()) {
-            Log.v(mTag, mPrefix.concat(message), throwable);
-        }
-    }
-
-    /**
-     * Logs a {@link Log#DEBUG} log message. Will only be logged if {@link Log#DEBUG} is
-     * loggable. This is a wrapper around {@link Log#d(String, String)}.
-     *
-     * @param message The message you would like logged.
-     */
-    public void d(String message) {
-        if (isD()) {
-            Log.d(mTag, mPrefix.concat(message));
-        }
-    }
-
-    /**
-     * Logs a {@link Log#DEBUG} log message. Will only be logged if {@link Log#DEBUG} is
-     * loggable. This is a wrapper around {@link Log#d(String, String, Throwable)}.
-     *
-     * @param message The message you would like logged.
-     * @param throwable An exception to log
-     */
-    public void d(String message, Throwable throwable) {
-        if (isD()) {
-            Log.d(mTag, mPrefix.concat(message), throwable);
-        }
-    }
-
-    /**
-     * Logs a {@link Log#INFO} log message. Will only be logged if {@link Log#INFO} is loggable.
-     * This is a wrapper around {@link Log#i(String, String)}.
-     *
-     * @param message The message you would like logged.
-     */
-    public void i(String message) {
-        if (isI()) {
-            Log.i(mTag, mPrefix.concat(message));
-        }
-    }
-
-    /**
-     * Logs a {@link Log#INFO} log message. Will only be logged if {@link Log#INFO} is loggable.
-     * This is a wrapper around {@link Log#i(String, String, Throwable)}.
-     *
-     * @param message The message you would like logged.
-     * @param throwable An exception to log
-     */
-    public void i(String message, Throwable throwable) {
-        if (isI()) {
-            Log.i(mTag, mPrefix.concat(message), throwable);
-        }
-    }
-
-    /**
-     * Logs a {@link Log#WARN} log message. This is a wrapper around {@link Log#w(String, String)}.
-     *
-     * @param message The message you would like logged.
-     */
-    public void w(String message) {
-        Log.w(mTag, mPrefix.concat(message));
-    }
-
-    /**
-     * Logs a {@link Log#WARN} log message. This is a wrapper around
-     * {@link Log#w(String, String, Throwable)}.
-     *
-     * @param message The message you would like logged.
-     * @param throwable An exception to log
-     */
-    public void w(String message, Throwable throwable) {
-        Log.w(mTag, mPrefix.concat(message), throwable);
-    }
-
-    /**
-     * Logs a {@link Log#ERROR} log message. This is a wrapper around {@link Log#e(String, String)}.
-     *
-     * @param message The message you would like logged.
-     */
-    public void e(String message) {
-        Log.e(mTag, mPrefix.concat(message));
-    }
-
-    /**
-     * Logs a {@link Log#ERROR} log message. This is a wrapper around
-     * {@link Log#e(String, String, Throwable)}.
-     *
-     * @param message The message you would like logged.
-     * @param throwable An exception to log
-     */
-    public void e(String message, Throwable throwable) {
-        Log.e(mTag, mPrefix.concat(message), throwable);
-    }
-
-    /**
-     * Logs a "What a Terrible Failure" as an {@link Log#ASSERT} log message. This is a wrapper
-     * around {@link Log#w(String, String)}.
-     *
-     * @param message The message you would like logged.
-     */
-    public void wtf(String message) {
-        Log.wtf(mTag, mPrefix.concat(message));
-    }
-
-    /**
-     * Logs a "What a Terrible Failure" as an {@link Log#ASSERT} log message. This is a wrapper
-     * around {@link Log#wtf(String, String, Throwable)}.
-     *
-     * @param message The message you would like logged.
-     * @param throwable An exception to log
-     */
-    public void wtf(String message, Throwable throwable) {
-        Log.wtf(mTag, mPrefix.concat(message), throwable);
-    }
-
-    private boolean isV() {
-        return Log.isLoggable(mTag, Log.VERBOSE) || forceAllLogging();
-    }
-
-    private boolean isD() {
-        return Log.isLoggable(mTag, Log.DEBUG) || forceAllLogging();
-    }
-
-    private boolean isI() {
-        return Log.isLoggable(mTag, Log.INFO) || forceAllLogging();
-    }
-}
diff --git a/car-settings-lib/src/com/android/car/settingslib/util/ProfileNameSaver.java b/car-settings-lib/src/com/android/car/settingslib/util/ProfileNameSaver.java
deleted file mode 100644
index 8f7067c..0000000
--- a/car-settings-lib/src/com/android/car/settingslib/util/ProfileNameSaver.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.car.settingslib.util;
-
-import android.content.ContentResolver;
-import android.content.ContentUris;
-import android.content.ContentValues;
-import android.database.Cursor;
-import android.net.Uri;
-import android.provider.ContactsContract;
-import android.text.TextUtils;
-import android.util.Log;
-
-/**
- * Saves name as GIVEN_NAME on "Me" Profile. If "Me" contact does not exist, it's created.
- */
-public class ProfileNameSaver {
-    private static final String TAG = "ProfileNameSaver";
-    private static final Uri PROFILE_URI = ContactsContract.Profile.CONTENT_RAW_CONTACTS_URI;
-    private static final int INVALID_ID = -1;
-
-    /**
-     * The projection into the profiles database that retrieves just the id of a profile.
-     */
-    private static final String[] CONTACTS_PROJECTION =
-            new String[]{ContactsContract.RawContacts._ID};
-
-    /**
-     * A projection into the profile data for one particular contact that includes the
-     * contact's MIME type.
-     */
-    private static final String[] CONTACTS_PROFILE_PROJECTION = new String[]{
-            ContactsContract.Data._ID,
-            ContactsContract.Data.MIMETYPE};
-
-    /**
-     * A selection into the profiles database that queries for a MIME type.
-     */
-    private static final String CONTACT_MIME_QUERY = ContactsContract.Data.MIMETYPE + " = ?";
-
-    /**
-     * Updates the "Me" contact profile card with the given name as the first name of the
-     * contact. If the "Me" contact does not exist, then one will be created.
-     *
-     * @param name The first name for the "Me" contact. If this value is {@code null} or
-     *             empty, then the contact will not be updated.
-     */
-    public static void updateMeContactWith(String name, ContentResolver contentResolver) {
-        if (Log.isLoggable(TAG, Log.VERBOSE)) {
-            Log.v(TAG, "updateMeContactWith name=" + name);
-        }
-
-        if (TextUtils.isEmpty(name)) {
-            return;
-        }
-
-        // Check if there is already an existing "me" contact.
-        Cursor cursor = contentResolver.query(
-                PROFILE_URI,
-                CONTACTS_PROJECTION,
-                /* selection= */ null,
-                /* selectionArgs= */ null,
-                /* sortOrder= */ null);
-
-        if (cursor == null) {
-            // Error in querying the content resolver, skip the update flow
-            Log.e(TAG, "Received null from query to the \"me\" contact at " + PROFILE_URI);
-            return;
-        }
-
-        long meRawContactId = -1;  // no ID can be < 0
-        boolean newContact = true;
-        try {
-            if (cursor.moveToFirst()) {
-                meRawContactId = cursor.getLong(0);
-                newContact = false;  // An entry indicates that the "me" contact exists.
-            }
-        } finally {
-            cursor.close();
-        }
-
-        ContentValues values = new ContentValues();
-
-        if (newContact) {
-            meRawContactId = ContentUris.parseId(contentResolver.insert(PROFILE_URI, values));
-        }
-
-        values.put(ContactsContract.Data.RAW_CONTACT_ID, meRawContactId);
-        values.put(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME, name);
-        values.put(ContactsContract.Data.MIMETYPE,
-                ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE);
-
-        long structuredNameId = getProfileItem(meRawContactId, contentResolver);
-        if (newContact || structuredNameId == INVALID_ID) {
-            contentResolver.insert(ContactsContract.Data.CONTENT_URI, values);
-        } else {
-            contentResolver.update(ContentUris.withAppendedId(
-                    ContactsContract.Data.CONTENT_URI, structuredNameId), values,
-                    /* where= */ null, /* selectionArgs= */ null);
-        }
-    }
-
-    /**
-     * Helper method to search for the first profile item of the type {@link
-     * ContactsContract.CommonDataKinds.StructuredName#CONTENT_ITEM_TYPE}.
-     *
-     * @return The item's ID or {@link #INVALID_ID} if not found.
-     */
-    private static long getProfileItem(long profileContactId, ContentResolver contentResolver) {
-        if (Log.isLoggable(TAG, Log.VERBOSE)) {
-            Log.v(TAG, "getProfileItem profileContactId=" + profileContactId);
-        }
-        Uri dataUri = ContactsContract.Profile.CONTENT_RAW_CONTACTS_URI.buildUpon()
-                .appendPath(String.valueOf(profileContactId))
-                .appendPath(ContactsContract.RawContacts.Data.CONTENT_DIRECTORY)
-                .build();
-
-        Cursor cursor = contentResolver.query(
-                dataUri,
-                CONTACTS_PROFILE_PROJECTION,
-                CONTACT_MIME_QUERY,
-                new String[]{
-                        ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE},
-                /* sortOrder= */ null);
-
-        // Error in querying the content resolver.
-        if (cursor == null) {
-            Log.e(TAG, "Received null from query to the first profile item at " + dataUri);
-            return INVALID_ID;
-        }
-
-        try {
-            return cursor.moveToFirst() ? cursor.getLong(0) : INVALID_ID;
-        } finally {
-            cursor.close();
-        }
-    }
-}
diff --git a/car-settings-lib/src/com/android/car/settingslib/util/ResultCodes.java b/car-settings-lib/src/com/android/car/settingslib/util/ResultCodes.java
deleted file mode 100644
index 2ac5ef2..0000000
--- a/car-settings-lib/src/com/android/car/settingslib/util/ResultCodes.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.car.settingslib.util;
-
-import static android.app.Activity.RESULT_FIRST_USER;
-
-/**
- * Result code set shared between Settings and other Car components
- */
-public final class ResultCodes {
-    public static final int RESULT_SKIP = RESULT_FIRST_USER;
-    public static final int RESULT_NONE = RESULT_FIRST_USER + 1;
-}
diff --git a/car-settings-lib/src/com/android/car/settingslib/util/SettingsConstants.java b/car-settings-lib/src/com/android/car/settingslib/util/SettingsConstants.java
deleted file mode 100644
index cec6146..0000000
--- a/car-settings-lib/src/com/android/car/settingslib/util/SettingsConstants.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.car.settingslib.util;
-
-/**
- * Contains car specific settings constants.
- */
-public class SettingsConstants {
-
-    public static final String USER_NAME_SET = "user_name_set";
-
-}
diff --git a/car-settings-lib/tests/Android.mk b/car-settings-lib/tests/Android.mk
deleted file mode 100644
index 0903c90..0000000
--- a/car-settings-lib/tests/Android.mk
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright (C) 2018 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-# Include all makefiles in subdirectories
-include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/car-settings-lib/tests/robotests/Android.mk b/car-settings-lib/tests/robotests/Android.mk
deleted file mode 100644
index 59e61b2..0000000
--- a/car-settings-lib/tests/robotests/Android.mk
+++ /dev/null
@@ -1,73 +0,0 @@
-LOCAL_PATH := $(call my-dir)
-
-##################################################################
-# Car Settings Library app just for Robolectric test target.     #
-##################################################################
-include $(CLEAR_VARS)
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_PACKAGE_NAME := CarSettingsLib
-LOCAL_PRIVATE_PLATFORM_APIS := true
-LOCAL_MODULE_TAGS := optional
-
-LOCAL_USE_AAPT2 := true
-
-LOCAL_PRIVILEGED_MODULE := true
-
-LOCAL_STATIC_ANDROID_LIBRARIES := \
-    car-settings-lib
-
-include $(BUILD_PACKAGE)
-
-##################################################################
-# Car Settings Library Robolectric test target.                  #
-##################################################################
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := CarSettingsLibRoboTests
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-
-LOCAL_JAVA_RESOURCE_DIRS := config
-
-LOCAL_JAVA_LIBRARIES := \
-    robolectric_android-all-stub \
-    Robolectric_all-target \
-    mockito-robolectric-prebuilt \
-    truth-prebuilt \
-    android.car
-
-LOCAL_INSTRUMENTATION_FOR := CarSettingsLib
-
-LOCAL_MODULE_TAGS := optional
-
-# Generate test_config.properties
-include external/robolectric-shadows/gen_test_config.mk
-
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-##################################################################
-# Car Settings Library runner target to run the previous target. #
-##################################################################
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := RunCarSettingsLibRoboTests
-
-LOCAL_JAVA_LIBRARIES := \
-    CarSettingsLibRoboTests \
-    robolectric_android-all-stub \
-    Robolectric_all-target \
-    mockito-robolectric-prebuilt \
-    truth-prebuilt \
-    android.car
-
-LOCAL_TEST_PACKAGE := CarSettingsLib
-
-LOCAL_ROBOTEST_FILES := $(filter-out %/BaseRobolectricTest.java,\
-    $(call find-files-in-subdirs,$(LOCAL_PATH)/src,*Test.java,.))
-
-LOCAL_INSTRUMENT_SOURCE_DIRS := $(dir $(LOCAL_PATH))../src
-
-include external/robolectric-shadows/run_robotests.mk
\ No newline at end of file
diff --git a/car-settings-lib/tests/robotests/config/robolectric.properties b/car-settings-lib/tests/robotests/config/robolectric.properties
deleted file mode 100644
index 3626c87..0000000
--- a/car-settings-lib/tests/robotests/config/robolectric.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-#
-# Copyright (C) 2018 Google Inc.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-sdk=NEWEST_SDK
\ No newline at end of file
diff --git a/car-settings-lib/tests/robotests/src/com/android/car/settingslib/log/LoggerBaseTest.java b/car-settings-lib/tests/robotests/src/com/android/car/settingslib/log/LoggerBaseTest.java
deleted file mode 100644
index 468c010..0000000
--- a/car-settings-lib/tests/robotests/src/com/android/car/settingslib/log/LoggerBaseTest.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Copyright (C) 2018 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.car.settingslib.log;
-
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.ExpectedException;
-import org.junit.runner.RunWith;
-import org.robolectric.RobolectricTestRunner;
-
-/**
- * Tests {@link LoggerBase}
- */
-@RunWith(RobolectricTestRunner.class)
-public class LoggerBaseTest {
-
-    @Rule
-    public ExpectedException mExpectedException = ExpectedException.none();
-
-    @Test
-    public void testNullTag() {
-        mExpectedException.expect(IllegalStateException.class);
-        mExpectedException.expectMessage("Tag must be not null or empty");
-        new NullTagLogger("NullLogger");
-    }
-
-    @Test
-    public void testEmptyTag() {
-        mExpectedException.expect(IllegalStateException.class);
-        mExpectedException.expectMessage("Tag must be not null or empty");
-        new EmptyTagLogger("EmptyTagLogger");
-    }
-
-    @Test
-    public void testTooLongTag() {
-        mExpectedException.expect(IllegalStateException.class);
-        mExpectedException.expectMessage("Tag must be 23 characters or less");
-        new TooLongTagLogger("TooLongTagLogger");
-    }
-
-    private class NullTagLogger extends LoggerBase {
-
-        NullTagLogger(String prefix) {
-            super(prefix);
-        }
-
-        @Override
-        protected String getTag() {
-            return null;
-        }
-    }
-
-    private class EmptyTagLogger extends LoggerBase {
-
-        EmptyTagLogger(String prefix) {
-            super(prefix);
-        }
-
-        @Override
-        protected String getTag() {
-            return "";
-        }
-    }
-
-    /**
-     * A Logger with a tag that is 24 characters long.
-     */
-    private class TooLongTagLogger extends LoggerBase {
-
-        TooLongTagLogger(String prefix) {
-            super(prefix);
-        }
-
-        @Override
-        protected String getTag() {
-            return "LoremIpsumLoremIpsumLore";
-        }
-    }
-}
diff --git a/car-settings-lib/tests/robotests/src/com/android/car/settingslib/robolectric/BaseRobolectricTest.java b/car-settings-lib/tests/robotests/src/com/android/car/settingslib/robolectric/BaseRobolectricTest.java
deleted file mode 100644
index 280faea..0000000
--- a/car-settings-lib/tests/robotests/src/com/android/car/settingslib/robolectric/BaseRobolectricTest.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright (C) 2018 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.car.settingslib.robolectric;
-
-import org.junit.Rule;
-import org.mockito.junit.MockitoJUnit;
-import org.mockito.junit.MockitoRule;
-
-/**
- * Base test for CarSettingsLib Robolectric tests.
- */
-public abstract class BaseRobolectricTest {
-    // This rule automatically initializes any mocks created using the @Mock annotation
-    @Rule
-    public MockitoRule mMockitoRule = MockitoJUnit.rule();
-}
diff --git a/EncryptionRunner/Android.bp b/car-telephony-common/Android.bp
similarity index 63%
copy from EncryptionRunner/Android.bp
copy to car-telephony-common/Android.bp
index 54316ff..8f9318e 100644
--- a/EncryptionRunner/Android.bp
+++ b/car-telephony-common/Android.bp
@@ -1,4 +1,5 @@
-// Copyright (C) 2019 The Android Open Source Project
+//
+// Copyright (C) 2018 The Android Open Source Project
 //
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.
@@ -11,21 +12,26 @@
 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 // See the License for the specific language governing permissions and
 // limitations under the License.
+//
 
 android_library {
-    name: "EncryptionRunner-lib",
-    min_sdk_version: "23",
-    product_variables: {
-        pdk: {
-            enabled: false,
-        },
-    },
-    static_libs: [
-      "ukey2",
-    ],
-    srcs: [
-        "src/**/*.java",
-    ],
-    installable: true,
-}
+    name: "car-telephony-common",
 
+    srcs: ["src/**/*.java"],
+
+    resource_dirs: ["res"],
+
+    optimize: {
+        enabled: false,
+    },
+
+    static_libs: [
+        "androidx.legacy_legacy-support-v4",
+        "car-apps-common",
+        "glide-prebuilt",
+        "libphonenumber",
+    ],
+
+    libs: ["android.car"],
+
+}
diff --git a/car-telephony-common/Android.mk b/car-telephony-common/Android.mk
deleted file mode 100644
index 3a592d6..0000000
--- a/car-telephony-common/Android.mk
+++ /dev/null
@@ -1,51 +0,0 @@
-#
-# Copyright (C) 2018 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-LOCAL_PATH:= $(call my-dir)
-
-include $(CLEAR_VARS)
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_MODULE := car-telephony-common
-
-LOCAL_MODULE_TAGS := optional
-
-LOCAL_PRIVILEGED_MODULE := true
-
-LOCAL_PROGUARD_ENABLED := disabled
-
-LOCAL_STATIC_ANDROID_LIBRARIES += \
-    androidx.legacy_legacy-support-v4 \
-    car-apps-common
-
-LOCAL_STATIC_JAVA_LIBRARIES += \
-    car-glide \
-    car-glide-disklrucache \
-    car-gifdecoder \
-    libphonenumber
-
-LOCAL_USE_AAPT2 := true
-
-LOCAL_JAVA_LIBRARIES += android.car
-
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-ifeq (,$(ONE_SHOT_MAKEFILE))
-    include $(call all-makefiles-under,$(LOCAL_PATH))
-endif
\ No newline at end of file
diff --git a/car-telephony-common/tests/Android.mk b/car-telephony-common/tests/Android.mk
deleted file mode 100644
index 0903c90..0000000
--- a/car-telephony-common/tests/Android.mk
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright (C) 2018 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-# Include all makefiles in subdirectories
-include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/car-telephony-common/tests/robotests/Android.bp b/car-telephony-common/tests/robotests/Android.bp
new file mode 100644
index 0000000..57bf759
--- /dev/null
+++ b/car-telephony-common/tests/robotests/Android.bp
@@ -0,0 +1,27 @@
+//###########################################################
+// car-telephony-common just for Robolectric test target.   #
+//###########################################################
+android_app {
+    name: "CarTelephonyCommonForTesting",
+
+    platform_apis: true,
+
+    libs: ["android.car"],
+
+    privileged: true,
+
+    static_libs: ["car-telephony-common"],
+}
+
+//############################################################
+// car-telephony-common Robolectric test target.             #
+//############################################################
+android_robolectric_test {
+    name: "CarTelephonyCommonRoboTests",
+
+    srcs: ["src/**/*.java"],
+
+    java_resource_dirs: ["config"],
+
+    instrumentation_for: "CarTelephonyCommonForTesting",
+}
diff --git a/car-telephony-common/tests/robotests/Android.mk b/car-telephony-common/tests/robotests/Android.mk
deleted file mode 100644
index e67530d..0000000
--- a/car-telephony-common/tests/robotests/Android.mk
+++ /dev/null
@@ -1,68 +0,0 @@
-LOCAL_PATH := $(call my-dir)
-
-
-############################################################
-# car-telephony-common just for Robolectric test target.   #
-############################################################
-include $(CLEAR_VARS)
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_PACKAGE_NAME := CarTelephonyCommonForTesting
-LOCAL_PRIVATE_PLATFORM_APIS := true
-LOCAL_MODULE_TAGS := optional
-
-LOCAL_USE_AAPT2 := true
-
-LOCAL_JAVA_LIBRARIES += android.car
-
-LOCAL_PRIVILEGED_MODULE := true
-
-LOCAL_STATIC_ANDROID_LIBRARIES := car-telephony-common
-
-include $(BUILD_PACKAGE)
-
-#############################################################
-# car-telephony-common Robolectric test target.             #
-#############################################################
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := CarTelephonyCommonRoboTests
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-
-LOCAL_JAVA_RESOURCE_DIRS := config
-
-# Include the testing libraries
-LOCAL_JAVA_LIBRARIES := \
-    robolectric_android-all-stub \
-    Robolectric_all-target \
-    mockito-robolectric-prebuilt \
-    truth-prebuilt
-
-LOCAL_INSTRUMENTATION_FOR := CarTelephonyCommonForTesting
-
-LOCAL_MODULE_TAGS := optional
-
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-##################################################################
-# car-telephony-common runner target to run the previous target. #
-##################################################################
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := RunCarTelephonyCommonRoboTests
-
-LOCAL_JAVA_LIBRARIES := \
-    CarTelephonyCommonRoboTests \
-    robolectric_android-all-stub \
-    Robolectric_all-target \
-    mockito-robolectric-prebuilt \
-    truth-prebuilt
-
-
-LOCAL_TEST_PACKAGE := CarTelephonyCommonForTesting
-
-LOCAL_INSTRUMENT_SOURCE_DIRS := $(dir $(LOCAL_PATH))../src
-
-include external/robolectric-shadows/run_robotests.mk
diff --git a/car-telephony-common/tests/robotests/config/robolectric.properties b/car-telephony-common/tests/robotests/config/robolectric.properties
index 9228597..fc4f8ca 100644
--- a/car-telephony-common/tests/robotests/config/robolectric.properties
+++ b/car-telephony-common/tests/robotests/config/robolectric.properties
@@ -11,5 +11,4 @@
 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 # See the License for the specific language governing permissions and
 # limitations under the License.
-manifest=packages/apps/Car/libs/car-telephony-common/tests/robotests/AndroidManifest.xml
 sdk=NEWEST_SDK
diff --git a/car-theme-lib/Android.bp b/car-theme-lib/Android.bp
index 990148c..30c780c 100644
--- a/car-theme-lib/Android.bp
+++ b/car-theme-lib/Android.bp
@@ -15,7 +15,7 @@
 //
 
 android_library {
-    name: "car-theme-lib-bp",
+    name: "car-theme-lib",
 
     srcs: ["src/**/*.java"],
 
@@ -26,5 +26,4 @@
     optimize: {
         enabled: false,
     },
-
 }
diff --git a/car-theme-lib/Android.mk b/car-theme-lib/Android.mk
deleted file mode 100644
index c22048c..0000000
--- a/car-theme-lib/Android.mk
+++ /dev/null
@@ -1,30 +0,0 @@
-#
-# Copyright (C) 2018 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-LOCAL_PATH:= $(call my-dir)
-
-include $(CLEAR_VARS)
-
-LOCAL_USE_AAPT2 := true
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_MODULE := car-theme-lib
-LOCAL_MODULE_TAGS := optional
-
-LOCAL_PROGUARD_ENABLED := disabled
-
-include $(BUILD_STATIC_JAVA_LIBRARY)
diff --git a/car-ui-lib/Android.bp b/car-ui-lib/Android.bp
index f433c4c..023ffff 100644
--- a/car-ui-lib/Android.bp
+++ b/car-ui-lib/Android.bp
@@ -15,26 +15,22 @@
 // limitations under the License.
 
 android_library {
-
-    name: "car-ui-lib-bp",
-
+    name: "car-ui-lib",
+    sdk_version: "system_current",
+    min_sdk_version: "14",
     srcs: ["src/**/*.java"],
-
     resource_dirs: ["res"],
-
     optimize: {
         enabled: false,
     },
-
-    libs: ["android.car"],
-
+    libs: ["android.car-stubs"],
     static_libs: [
         "androidx.annotation_annotation",
         "androidx.appcompat_appcompat",
-	"androidx.asynclayoutinflater_asynclayoutinflater",
         "androidx-constraintlayout_constraintlayout",
         "androidx.preference_preference",
         "androidx.recyclerview_recyclerview",
         "androidx-constraintlayout_constraintlayout-solver",
+        "androidx.asynclayoutinflater_asynclayoutinflater",
     ],
 }
diff --git a/car-ui-lib/Android.mk b/car-ui-lib/Android.mk
index c67ea5c..9369f03 100644
--- a/car-ui-lib/Android.mk
+++ b/car-ui-lib/Android.mk
@@ -33,43 +33,6 @@
 
 CAR_UI_GENERATE_RRO_SET := $(call my-dir)/generate_rros.mk
 
-# Build car-ui library
-
-LOCAL_PATH:= $(call my-dir)
-
-include $(CLEAR_VARS)
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_MODULE := car-ui-lib
-
-LOCAL_MODULE_TAGS := optional
-
-LOCAL_PRIVILEGED_MODULE := true
-
-LOCAL_PROGUARD_ENABLED := disabled
-
-LOCAL_USE_AAPT2 := true
-
-LOCAL_JAVA_LIBRARIES += android.car
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_STATIC_ANDROID_LIBRARIES += \
-    androidx.annotation_annotation \
-    androidx.appcompat_appcompat \
-    androidx-constraintlayout_constraintlayout \
-    androidx.preference_preference \
-    androidx.recyclerview_recyclerview \
-    androidx.asynclayoutinflater_asynclayoutinflater \
-
-LOCAL_STATIC_JAVA_LIBRARIES += \
-    androidx-constraintlayout_constraintlayout-solver \
-
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
 ifeq (,$(ONE_SHOT_MAKEFILE))
     include $(call all-makefiles-under,$(LOCAL_PATH))
 endif
diff --git a/car-ui-lib/build.gradle b/car-ui-lib/build.gradle
index 5b65956..f6f5fd0 100644
--- a/car-ui-lib/build.gradle
+++ b/car-ui-lib/build.gradle
@@ -35,6 +35,10 @@
         google()
         jcenter()
     }
+    buildDir = "/tmp/car-ui-build/${rootProject.name}/${project.name}"
+    tasks.withType(JavaCompile) {
+        options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"
+    }
 }
 
 // Library-level build file
@@ -71,5 +75,5 @@
     api 'androidx.constraintlayout:constraintlayout:1.1.3'
     api 'androidx.preference:preference:1.1.0'
     api 'androidx.recyclerview:recyclerview:1.0.0'
-    implementation files('../../../../../out/target/common/obj/JAVA_LIBRARIES/android.car_intermediates/classes-pre-proguard.jar')
+    implementation files('../../../../../out/target/common/obj/JAVA_LIBRARIES/android.car_intermediates/classes.jar')
 }
diff --git a/car-ui-lib/findviewbyid-preupload-hook.sh b/car-ui-lib/findviewbyid-preupload-hook.sh
deleted file mode 100755
index 8b6dbfd..0000000
--- a/car-ui-lib/findviewbyid-preupload-hook.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/bash
-
-if grep -rq "findViewById\|requireViewById" car-ui-lib/src/com/android/car/ui/toolbar/; then
-    grep -r "findViewById\|requireViewById" car-ui-lib/src/com/android/car/ui/toolbar/;
-    echo "Illegal use of findViewById or requireViewById in car-ui-lib. Please consider using CarUiUtils#findViewByRefId or CarUiUtils#requireViewByRefId" && false;
-fi
\ No newline at end of file
diff --git a/android-car-lib/res/drawable/car_card_background.xml b/car-ui-lib/res/color/car_ui_dialog_icon_color.xml
similarity index 75%
rename from android-car-lib/res/drawable/car_card_background.xml
rename to car-ui-lib/res/color/car_ui_dialog_icon_color.xml
index 7caa2ff..b6941aa 100644
--- a/android-car-lib/res/drawable/car_card_background.xml
+++ b/car-ui-lib/res/color/car_ui_dialog_icon_color.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-  ~ Copyright (C) 2017 The Android Open Source Project
+  ~ Copyright (C) 2020 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -14,6 +14,6 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License.
   -->
-<shape xmlns:android="http://schemas.android.com/apk/res/android">
-    <solid android:color="@color/car_card"/>
-</shape>
\ No newline at end of file
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:color="?android:attr/colorForeground"/>
+</selector>
\ No newline at end of file
diff --git a/car-ui-lib/res/drawable/car_ui_icon_add.xml b/car-ui-lib/res/drawable/car_ui_icon_add.xml
new file mode 100644
index 0000000..fc15d7e
--- /dev/null
+++ b/car-ui-lib/res/drawable/car_ui_icon_add.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2020 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+<!-- Used in Carboard's toolbar. -->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="48dp"
+        android:height="48dp"
+        android:viewportWidth="24"
+        android:viewportHeight="24">
+<path
+    android:fillColor="@color/car_ui_toolbar_menu_item_icon_color"
+    android:pathData="M19,13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"/>
+</vector>
\ No newline at end of file
diff --git a/car-ui-lib/res/drawable/car_ui_icon_delete.xml b/car-ui-lib/res/drawable/car_ui_icon_delete.xml
new file mode 100644
index 0000000..c378868
--- /dev/null
+++ b/car-ui-lib/res/drawable/car_ui_icon_delete.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2020 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+<!-- Used in Carboard's toolbar. -->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="48dp"
+        android:height="48dp"
+        android:viewportWidth="24"
+        android:viewportHeight="24">
+<path
+    android:fillColor="@color/car_ui_toolbar_menu_item_icon_color"
+    android:pathData="M6,19c0,1.1 0.9,2 2,2h8c1.1,0 2,-0.9 2,-2V7H6v12zM19,4h-3.5l-1,-1h-5l-1,1H5v2h14V4z"/>
+</vector>
\ No newline at end of file
diff --git a/car-ui-lib/res/drawable/car_ui_icon_edit.xml b/car-ui-lib/res/drawable/car_ui_icon_edit.xml
new file mode 100644
index 0000000..2a4f079
--- /dev/null
+++ b/car-ui-lib/res/drawable/car_ui_icon_edit.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2020 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+<!-- Used in Carboard's toolbar. -->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="48dp"
+        android:height="48dp"
+        android:viewportWidth="24"
+        android:viewportHeight="24">
+<path
+    android:fillColor="@color/car_ui_toolbar_menu_item_icon_color"
+    android:pathData="M3,17.25V21h3.75L17.81,9.94l-3.75,-3.75L3,17.25zM20.71,7.04c0.39,-0.39 0.39,-1.02 0,-1.41l-2.34,-2.34c-0.39,-0.39 -1.02,-0.39 -1.41,0l-1.83,1.83 3.75,3.75 1.83,-1.83z"/>
+</vector>
\ No newline at end of file
diff --git a/car-ui-lib/res/drawable/car_ui_icon_save.xml b/car-ui-lib/res/drawable/car_ui_icon_save.xml
new file mode 100644
index 0000000..f65682a
--- /dev/null
+++ b/car-ui-lib/res/drawable/car_ui_icon_save.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2020 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+<!-- Used in Carboard's toolbar. -->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="48dp"
+        android:height="48dp"
+        android:viewportWidth="24"
+        android:viewportHeight="24">
+<path
+    android:fillColor="@color/car_ui_toolbar_menu_item_icon_color"
+    android:pathData="M17,3L5,3c-1.11,0 -2,0.9 -2,2v14c0,1.1 0.89,2 2,2h14c1.1,0 2,-0.9 2,-2L21,7l-4,-4zM12,19c-1.66,0 -3,-1.34 -3,-3s1.34,-3 3,-3 3,1.34 3,3 -1.34,3 -3,3zM15,9L5,9L5,5h10v4z"/>
+</vector>
diff --git a/car-settings-lib/tests/robotests/AndroidManifest.xml b/car-ui-lib/res/layout/car_ui_radio_button_preference_widget.xml
similarity index 63%
copy from car-settings-lib/tests/robotests/AndroidManifest.xml
copy to car-ui-lib/res/layout/car_ui_radio_button_preference_widget.xml
index dd1a985..d179a09 100644
--- a/car-settings-lib/tests/robotests/AndroidManifest.xml
+++ b/car-ui-lib/res/layout/car_ui_radio_button_preference_widget.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-    Copyright (C) 2018 Google Inc.
+    Copyright 2019 The Android Open Source Project
 
     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
@@ -15,7 +15,11 @@
     limitations under the License.
 -->
 
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.car.settingslib.robotests">
-
-</manifest>
+<RadioButton
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/radio_button"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:layout_gravity="center"
+    android:clickable="false"
+    android:focusable="false"/>
diff --git a/car-ui-lib/res/layout/car_ui_seekbar_dialog.xml b/car-ui-lib/res/layout/car_ui_seekbar_dialog.xml
new file mode 100644
index 0000000..90124c4
--- /dev/null
+++ b/car-ui-lib/res/layout/car_ui_seekbar_dialog.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+     Copyright (C) 2020 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:layout_width="match_parent"
+              android:layout_height="match_parent"
+              android:gravity="center_horizontal"
+              android:orientation="vertical">
+
+    <TextView
+        android:id="@+id/seek_bar_text_top"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:gravity="center_horizontal"
+        style="@style/Preference.CarUi.DialogSeekBarPreference.TopText"/>
+
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:orientation="horizontal" >
+
+        <TextView
+            android:id="@+id/seek_bar_text_left"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:visibility="gone"
+            style="@style/Preference.CarUi.DialogSeekBarPreference.LeftText"/>
+
+        <SeekBar
+            android:id="@+id/seek_bar"
+            android:layout_width="0dp"
+            android:layout_height="wrap_content"
+            android:layout_weight="1"
+            style="@style/Preference.CarUi.DialogSeekBarPreference.Seekbar"/>
+
+        <TextView
+            android:id="@+id/seek_bar_text_right"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:visibility="gone"
+            style="@style/Preference.CarUi.DialogSeekBarPreference.RightText"/>
+    </LinearLayout>
+
+</LinearLayout>
diff --git a/car-ui-lib/res/layout/car_ui_two_action_preference.xml b/car-ui-lib/res/layout/car_ui_two_action_preference.xml
new file mode 100644
index 0000000..4ad6ce4
--- /dev/null
+++ b/car-ui-lib/res/layout/car_ui_two_action_preference.xml
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+    Copyright 2018 The Android Open Source Project
+
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+<LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:background="@android:color/transparent"
+    android:gravity="center_vertical"
+    android:minHeight="?android:attr/listPreferredItemHeightSmall">
+    <LinearLayout
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="1"
+        android:background="?android:attr/selectableItemBackground"
+        android:clipToPadding="false"
+        android:gravity="start|center_vertical"
+        android:paddingBottom="@dimen/car_ui_preference_content_margin_bottom"
+        android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
+        android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+        android:paddingTop="@dimen/car_ui_preference_content_margin_top">
+        <androidx.preference.internal.PreferenceImageView
+            android:id="@android:id/icon"
+            android:layout_width="@dimen/car_ui_preference_icon_size"
+            android:layout_height="@dimen/car_ui_preference_icon_size"
+            android:layout_marginEnd="@dimen/car_ui_preference_icon_margin_end"/>
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_centerVertical="true"
+            android:orientation="vertical">
+            <TextView
+                android:id="@android:id/title"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:ellipsize="end"
+                android:singleLine="true"
+                android:textAppearance="@style/TextAppearance.CarUi.PreferenceTitle"/>
+            <TextView
+                android:id="@android:id/summary"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:textAppearance="@style/TextAppearance.CarUi.PreferenceSummary"/>
+        </LinearLayout>
+    </LinearLayout>
+    <LinearLayout
+        android:id="@+id/action_widget_container"
+        android:layout_width="wrap_content"
+        android:layout_height="match_parent">
+        <View
+            android:layout_width="@dimen/car_ui_divider_width"
+            android:layout_height="match_parent"
+            android:layout_marginBottom="@dimen/car_ui_preference_content_margin_bottom"
+            android:layout_marginTop="@dimen/car_ui_preference_content_margin_top"
+            style="@style/Preference.CarUi.Divider"/>
+        <!-- Preference should place its actual preference widget here. -->
+        <FrameLayout
+            android:id="@android:id/widget_frame"
+            android:layout_width="wrap_content"
+            android:layout_height="match_parent"
+            android:background="?android:attr/selectableItemBackground"
+            android:minWidth="?android:attr/listPreferredItemHeightSmall"
+            android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
+            android:paddingStart="?android:attr/listPreferredItemPaddingStart"/>
+    </LinearLayout>
+</LinearLayout>
diff --git a/car-ui-lib/res/values/attrs.xml b/car-ui-lib/res/values/attrs.xml
index 3b92fd6..3992428 100644
--- a/car-ui-lib/res/values/attrs.xml
+++ b/car-ui-lib/res/values/attrs.xml
@@ -124,6 +124,13 @@
     <declare-styleable name="CarUiPreference">
         <!-- Toggle for showing chevron -->
         <attr name="showChevron" format="boolean" />
+        <!-- Show ripple when disabled preference is clicked -->
+        <attr name="showRippleOnDisabledPreference" format="boolean" />
+    </declare-styleable>
+
+    <declare-styleable name="CarUiTwoActionPreference">
+        <!-- Determines if the secondary action is initially shown -->
+        <attr name="actionShown" format="boolean"/>
     </declare-styleable>
 
     <!-- Theme attribute to specify a default style for all CarUiPreferences -->
diff --git a/car-ui-lib/res/values/colors.xml b/car-ui-lib/res/values/colors.xml
index 78d1ecc..7a12327 100644
--- a/car-ui-lib/res/values/colors.xml
+++ b/car-ui-lib/res/values/colors.xml
@@ -41,15 +41,6 @@
 
     <!-- Preferences -->
 
-    <color name="car_ui_preference_category_title_text_color">@color/car_ui_color_accent</color>
-    <color name="car_ui_preference_summary_text_color">@color/car_ui_text_color_secondary</color>
-    <color name="car_ui_preference_title_text_color">@color/car_ui_text_color_primary</color>
-    <color name="car_ui_preference_edit_text_dialog_message_text_color">@color/car_ui_text_color_primary</color>
     <color name="car_ui_preference_icon_color">@color/car_ui_text_color_primary</color>
-    <color name="car_ui_preference_switch_track_text_color">@color/car_ui_text_color_primary</color>
-
-    <!-- List item -->
-    <color name="car_ui_list_item_header_text_color">@color/car_ui_color_accent</color>
-    <color name="car_ui_list_item_title_text_color">@color/car_ui_text_color_primary</color>
-    <color name="car_ui_list_item_body_text_color">@color/car_ui_text_color_secondary</color>
+    <color name="car_ui_preference_two_action_divider_color">#1fffffff</color>
 </resources>
diff --git a/car-ui-lib/res/values/dimens.xml b/car-ui-lib/res/values/dimens.xml
index 3a77194..c4bf244 100644
--- a/car-ui-lib/res/values/dimens.xml
+++ b/car-ui-lib/res/values/dimens.xml
@@ -19,8 +19,6 @@
     <dimen name="car_ui_touch_target_width">76dp</dimen>
     <dimen name="car_ui_touch_target_height">76dp</dimen>
     <dimen name="car_ui_primary_icon_size">44dp</dimen>
-    <item name="car_ui_letter_spacing_body1" format="float" type="dimen">0.0</item>
-    <item name="car_ui_letter_spacing_body3" format="float" type="dimen">0.0</item>
 
     <!-- Horizontal margin between screen content and display border. In reference
      implementation, this value matches the CarUiRecyclerView scrollbar width -->
@@ -142,10 +140,7 @@
 
     <!-- Preferences -->
 
-    <dimen name="car_ui_preference_category_text_size">24sp</dimen>
-    <dimen name="car_ui_preference_summary_text_size">24sp</dimen>
-    <dimen name="car_ui_preference_title_text_size">32sp</dimen>
-    <dimen name="car_ui_preference_edit_text_dialog_message_text_size">24sp</dimen>
+    <dimen name="car_ui_divider_width">1dp</dimen>
 
     <dimen name="car_ui_preference_content_margin_top">16dp</dimen>
     <dimen name="car_ui_preference_content_margin_bottom">16dp</dimen>
@@ -166,11 +161,6 @@
     <dimen name="car_ui_preference_edit_text_dialog_text_margin_start">24dp</dimen>
     <dimen name="car_ui_preference_edit_text_dialog_text_margin_end">24dp</dimen>
 
-    <dimen name="car_ui_preference_switch_text_size">30sp</dimen>
-    <dimen name="car_ui_preference_switch_width">288dp</dimen>
-    <dimen name="car_ui_preference_switch_width_half">144dp</dimen>
-    <dimen name="car_ui_preference_switch_height">101dp</dimen>
-
     <!-- Alert dialog   -->
 
     <dimen name="car_ui_dialog_edittext_height">50dp</dimen>
@@ -183,9 +173,6 @@
 
     <!-- List item  -->
 
-    <dimen name="car_ui_list_item_header_text_size">24sp</dimen>
-    <dimen name="car_ui_list_item_title_text_size">32sp</dimen>
-    <dimen name="car_ui_list_item_body_text_size">24sp</dimen>
     <dimen name="car_ui_list_item_height">116dp</dimen>
     <dimen name="car_ui_list_item_header_height">76dp</dimen>
     <dimen name="car_ui_list_item_header_start_inset">0dp</dimen>
diff --git a/car-ui-lib/res/values/strings.xml b/car-ui-lib/res/values/strings.xml
index a42068f..ebb72b1 100644
--- a/car-ui-lib/res/values/strings.xml
+++ b/car-ui-lib/res/values/strings.xml
@@ -44,11 +44,6 @@
     <string name="car_ui_preference_switch_on">On</string>
     <!-- Text to show when a preference switch is off. [CHAR_LIMIT=30] -->
     <string name="car_ui_preference_switch_off">Off</string>
-    <!-- Font family to use for preference category titles. [CHAR_LIMIT=NONE] -->
-    <string name="car_ui_preference_category_title_font_family" translatable="false">sans-serif-medium</string>
-
-    <!-- Font family to use for list item headers. [CHAR_LIMIT=NONE] -->
-    <string name="car_ui_list_item_header_font_family" translatable="false">sans-serif-medium</string>
 
     <!-- Text to show when no button is provided and a default button is used. -->
     <string name="car_ui_alert_dialog_default_button" translatable="false">Close</string>
diff --git a/car-ui-lib/res/values/styles.xml b/car-ui-lib/res/values/styles.xml
index a242baf..807ff96 100644
--- a/car-ui-lib/res/values/styles.xml
+++ b/car-ui-lib/res/values/styles.xml
@@ -182,6 +182,10 @@
         <item name="android:dialogLayout">@layout/car_ui_preference_dialog_edittext</item>
     </style>
 
+    <style name="Preference.CarUi.Divider">
+        <item name="android:background">@color/car_ui_preference_two_action_divider_color</item>
+    </style>
+
     <style name="Preference.CarUi.DropDown">
         <item name="android:layout">@layout/car_ui_preference_dropdown</item>
     </style>
@@ -203,6 +207,14 @@
         <item name="showSeekBarValue">false</item>
     </style>
 
+    <style name="Preference.CarUi.DialogSeekBarPreference"/>
+
+    <style name="Preference.CarUi.DialogSeekBarPreference.Seekbar"/>
+
+    <style name="Preference.CarUi.DialogSeekBarPreference.TopText"/>
+    <style name="Preference.CarUi.DialogSeekBarPreference.RightText"/>
+    <style name="Preference.CarUi.DialogSeekBarPreference.LeftText"/>
+
     <style name="Preference.CarUi.SwitchPreference">
         <item name="android:widgetLayout">@layout/car_ui_preference_widget_switch</item>
         <item name="android:switchTextOn">@string/car_ui_preference_switch_on</item>
@@ -229,42 +241,38 @@
         <item name="android:textColor">?android:attr/textColorPrimary</item>
     </style>
 
-    <style name="TextAppearance.CarUi.PreferenceCategoryTitle">
-        <item name="android:fontFamily">@string/car_ui_preference_category_title_font_family</item>
-        <item name="android:textColor">@color/car_ui_preference_category_title_text_color</item>
-        <item name="android:textSize">@dimen/car_ui_preference_category_text_size</item>
+    <style name="TextAppearance.CarUi.Body1">
+        <item name="android:textSize">32sp</item>
     </style>
 
-    <style name="TextAppearance.CarUi.PreferenceSummary">
-        <item name="android:textColor">@color/car_ui_preference_summary_text_color</item>
-        <item name="android:textSize">@dimen/car_ui_preference_summary_text_size</item>
+    <style name="TextAppearance.CarUi.Body3">
+        <item name="android:textSize">24sp</item>
     </style>
 
-    <style name="TextAppearance.CarUi.PreferenceTitle">
-        <item name="android:textColor">@color/car_ui_preference_title_text_color</item>
-        <item name="android:textSize">@dimen/car_ui_preference_title_text_size</item>
+    <style name="TextAppearance.CarUi.PreferenceCategoryTitle" parent="TextAppearance.CarUi.Body3">
+        <item name="android:fontFamily">sans-serif-medium</item>
+        <item name="android:textColor">@color/car_ui_color_accent</item>
     </style>
 
-    <style name="TextAppearance.CarUi.PreferenceEditTextDialogMessage">
-        <item name="android:textColor">@color/car_ui_preference_edit_text_dialog_message_text_color</item>
-        <item name="android:textSize">@dimen/car_ui_preference_edit_text_dialog_message_text_size</item>
+    <style name="TextAppearance.CarUi.PreferenceSummary" parent="TextAppearance.CarUi.Body3">
+        <item name="android:textColor">@color/car_ui_text_color_secondary</item>
     </style>
 
+    <style name="TextAppearance.CarUi.PreferenceTitle" parent="TextAppearance.CarUi.Body1"/>
+
+    <style name="TextAppearance.CarUi.PreferenceEditTextDialogMessage" parent="TextAppearance.CarUi.Body3"/>
+
     <style name="TextAppearance.CarUi.AlertDialog.Subtitle" parent="android:TextAppearance.DeviceDefault"/>
 
     <style name="TextAppearance.CarUi.Widget" parent="android:TextAppearance.DeviceDefault.Widget"/>
 
     <style name="TextAppearance.CarUi.Widget.Toolbar"/>
 
-    <style name="TextAppearance.CarUi.Widget.Toolbar.Title">
+    <style name="TextAppearance.CarUi.Widget.Toolbar.Title" parent="TextAppearance.CarUi.Body1">
         <item name="android:singleLine">true</item>
-        <item name="android:textSize">32sp</item>
-        <item name="android:letterSpacing">@dimen/car_ui_letter_spacing_body1</item>
     </style>
 
-    <style name="TextAppearance.CarUi.Widget.Toolbar.Tab">
-        <item name="android:textSize">24sp</item>
-        <item name="android:letterSpacing">@dimen/car_ui_letter_spacing_body3</item>
+    <style name="TextAppearance.CarUi.Widget.Toolbar.Tab" parent="TextAppearance.CarUi.Body3">
         <item name="android:textColor">@color/car_ui_toolbar_tab_item_selector</item>
         <item name="android:textStyle">normal</item>
         <item name="android:textFontWeight">400</item>
@@ -274,20 +282,15 @@
         <item name="android:textFontWeight">500</item>
     </style>
 
-    <style name="TextAppearance.CarUi.ListItem.Header">
-        <item name="android:fontFamily">@string/car_ui_list_item_header_font_family</item>
-        <item name="android:textColor">@color/car_ui_list_item_header_text_color</item>
-        <item name="android:textSize">@dimen/car_ui_list_item_header_text_size</item>
+    <style name="TextAppearance.CarUi.ListItem.Header" parent="TextAppearance.CarUi.Body3">
+        <item name="android:fontFamily">sans-serif-medium</item>
+        <item name="android:textColor">@color/car_ui_color_accent</item>
     </style>
 
-    <style name="TextAppearance.CarUi.ListItem">
-        <item name="android:textColor">@color/car_ui_list_item_title_text_color</item>
-        <item name="android:textSize">@dimen/car_ui_list_item_title_text_size</item>
-    </style>
+    <style name="TextAppearance.CarUi.ListItem" parent="TextAppearance.CarUi.Body1"/>
 
-    <style name="TextAppearance.CarUi.ListItem.Body">
-        <item name="android:textSize">@dimen/car_ui_list_item_body_text_size</item>
-        <item name="android:textColor">@color/car_ui_list_item_body_text_color</item>
+    <style name="TextAppearance.CarUi.ListItem.Body" parent="TextAppearance.CarUi.Body3">
+        <item name="android:textColor">@color/car_ui_text_color_secondary</item>
     </style>
 
 </resources>
diff --git a/EncryptionRunner/Android.bp b/car-ui-lib/sharedlibrary/Android.bp
similarity index 63%
copy from EncryptionRunner/Android.bp
copy to car-ui-lib/sharedlibrary/Android.bp
index 54316ff..1abaa30 100644
--- a/EncryptionRunner/Android.bp
+++ b/car-ui-lib/sharedlibrary/Android.bp
@@ -1,4 +1,6 @@
-// Copyright (C) 2019 The Android Open Source Project
+
+//
+// Copyright (C) 2020 The Android Open Source Project
 //
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.
@@ -12,20 +14,18 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-android_library {
-    name: "EncryptionRunner-lib",
-    min_sdk_version: "23",
-    product_variables: {
-        pdk: {
-            enabled: false,
-        },
+android_app {
+    name: "car-ui-lib-sharedlibrary",
+    visibility: [
+        "//packages/apps/Car/libs/car-ui-lib/tests/PaintBooth:__pkg__",
+    ],
+    platform_apis: true,
+    resource_dirs: ["res"],
+    aaptflags: ["--shared-lib"],
+    optimize: {
+        enabled: false,
     },
     static_libs: [
-      "ukey2",
+        "car-ui-lib",
     ],
-    srcs: [
-        "src/**/*.java",
-    ],
-    installable: true,
 }
-
diff --git a/car-settings-lib/AndroidManifest.xml b/car-ui-lib/sharedlibrary/AndroidManifest.xml
similarity index 69%
copy from car-settings-lib/AndroidManifest.xml
copy to car-ui-lib/sharedlibrary/AndroidManifest.xml
index 5c2e6c9..61b4515 100644
--- a/car-settings-lib/AndroidManifest.xml
+++ b/car-ui-lib/sharedlibrary/AndroidManifest.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-  Copyright (C) 2018 The Android Open Source Project
+  Copyright (C) 2020 The Android Open Source Project
 
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
@@ -16,7 +16,11 @@
   -->
 
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.car.settingslib">
-    <uses-sdk android:minSdkVersion="24"/>
-    <application />
-</manifest>
\ No newline at end of file
+          package="com.android.car.ui.sharedlibrary">
+  <uses-sdk
+      android:minSdkVersion="28"
+      android:targetSdkVersion="28" />
+    <application>
+        <library android:name="com.android.car.ui.sharedlibrary" />
+    </application>
+</manifest>
diff --git a/car-ui-lib/sharedlibrary/README.md b/car-ui-lib/sharedlibrary/README.md
new file mode 100644
index 0000000..21c6172
--- /dev/null
+++ b/car-ui-lib/sharedlibrary/README.md
@@ -0,0 +1,5 @@
+# Android Automotive 'Chassis' shared library
+Please refer to [Android Automotive 'Chassiss' library](../README.md)
+
+**Required**
+This module needs to be, and is included in PRODUCT_PACKAGES in vendor/auto/embeded/products/car.mk. It needs to be pre-installed with the system image.
\ No newline at end of file
diff --git a/car-ui-lib/sharedlibrary/res/values/overlayable.xml b/car-ui-lib/sharedlibrary/res/values/overlayable.xml
new file mode 100644
index 0000000..f89e281
--- /dev/null
+++ b/car-ui-lib/sharedlibrary/res/values/overlayable.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2020 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources>
+    <overlayable name="CarUiOverlayableResources">
+        <policy type="public">
+            <item type="string" name="car_ui_dialog_preference_positive" />
+            <item type="attr" name="title" />
+            <item type="attr" name="logo" />
+            <item type="attr" name="numOfColumns" />
+            <item type="attr" name="layoutStyle" />
+
+            <!-- All app namespace attributes nees to be here go/rro-on-r -->
+            <item type="attr" name="layout_constraintTop_toTopOf" />
+            <item type="attr" name="layout_constraintTop_toBottomOf" />
+            <item type="attr" name="layout_constraintLeft_toLeftOf" />
+            <item type="attr" name="layout_constraintLeft_toRightOf" />
+            <item type="attr" name="layout_constraintBottom_toTopOf" />
+            <item type="attr" name="layout_constraintBottom_toBottomOf" />
+            <item type="attr" name="layout_constraintRight_toRightOf" />
+            <item type="attr" name="layout_constraintRight_toLeftOf" />
+            <item type="attr" name="layout_constraintGuide_begin" />
+            <item type="attr" name="layout_constraintVertical_chainStyle" />
+        </policy>
+    </overlayable>
+</resources>
\ No newline at end of file
diff --git a/car-ui-lib/sharedlibrary/res/values/public.xml b/car-ui-lib/sharedlibrary/res/values/public.xml
new file mode 100644
index 0000000..2612f2b
--- /dev/null
+++ b/car-ui-lib/sharedlibrary/res/values/public.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2020 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources>
+    <!-- Any resource or attribute that is or can be referenced from RRO needs to be public go/rro-on-r -->
+
+    <!-- To add new resources to this file follow the following naming convention -->
+    <!-- 0cXXXX is used for styles -->
+    <!-- 0dXXXX is used for attributes -->
+    <!-- 0eXXXX is used for drawables -->
+    <!-- The first time that a resource type is seen, Android resource manager, assigns YY of the ID (0xXXYYXXXX) of the resouce to that type.
+         And you'll get a compile error if you use the same type with a different YY -->
+
+    <public type="style" name="Theme.CarUi" id="0x000c0000" />
+
+    <public type="attr" name="logo" id="0x000d0001" />
+    <public type="attr" name="state" id="0x000d0002" />
+    <public type="attr" name="title" id="0x000d0003" />
+    <public type="attr" name="layoutStyle" id="0x000d0004" />
+    <public type="attr" name="numOfColumns" id="0x000d0005" />
+    <public type="attr" name="layout_constraintTop_toTopOf" id="0x000d0006" />
+    <public type="attr" name="layout_constraintTop_toBottomOf" id="0x000d0007" />
+    <public type="attr" name="layout_constraintLeft_toLeftOf" id="0x000d0008" />
+    <public type="attr" name="layout_constraintBottom_toTopOf" id="0x000d0009" />
+    <public type="attr" name="layout_constraintBottom_toBottomOf" id="0x000d0010" />
+    <public type="attr" name="layout_constraintRight_toRightOf" id="0x000d0011" />
+    <public type="attr" name="search" id="0x000d0012" />
+    <public type="attr" name="settings" id="0x000d0013" />
+    <public type="attr" name="id" id="0x000d0014" />
+    <public type="attr" name="icon" id="0x000d0015" />
+    <public type="attr" name="onClick" id="0x000d0016" />
+    <public type="attr" name="checkable" id="0x000d0017" />
+    <public type="attr" name="uxRestrictions" id="0x000d0018" />
+    <public type="attr" name="singleLineTitle" id="0x000d0019" />
+    <public type="attr" name="useSimpleSummaryProvider" id="0x000d0020" />
+    <public type="attr" name="initialExpandedChildrenCount" id="0x000d0021" />
+    <public type="attr" name="enableCopying" id="0x000d0022" />
+
+    <public type="drawable" name="car_ui_activity_background" id="0x000e0000" />
+
+</resources>
\ No newline at end of file
diff --git a/car-ui-lib/src/com/android/car/ui/AlertDialogBuilder.java b/car-ui-lib/src/com/android/car/ui/AlertDialogBuilder.java
index 9b4d578..feafd99 100644
--- a/car-ui-lib/src/com/android/car/ui/AlertDialogBuilder.java
+++ b/car-ui-lib/src/com/android/car/ui/AlertDialogBuilder.java
@@ -22,6 +22,7 @@
 import android.database.Cursor;
 import android.graphics.drawable.Drawable;
 import android.text.InputFilter;
+import android.text.TextUtils;
 import android.text.TextWatcher;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -53,6 +54,7 @@
     private CharSequence mTitle;
     private CharSequence mSubtitle;
     private Drawable mIcon;
+    private boolean mIconTinted;
 
     public AlertDialogBuilder(Context context) {
         // Resource id specified as 0 uses the parent contexts resolved value for alertDialogTheme.
@@ -150,7 +152,18 @@
      */
     public AlertDialogBuilder setIcon(Drawable icon) {
         mIcon = icon;
-        mBuilder.setIcon(icon);
+        return this;
+    }
+
+    /**
+     * Whether the icon provided by {@link #setIcon(Drawable)} should be
+     * tinted with the default system color.
+     *
+     * @return this Builder object to allow for chaining of calls to set
+     * methods.
+     */
+    public AlertDialogBuilder setIconTinted(boolean tinted) {
+        mIconTinted = tinted;
         return this;
     }
 
@@ -158,8 +171,7 @@
      * Set an icon as supplied by a theme attribute. e.g.
      * {@link android.R.attr#alertDialogIcon}.
      * <p>
-     * Takes precedence over values set using {@link #setIcon(int)} or
-     * {@link #setIcon(Drawable)}.
+     * Takes precedence over values set using {@link #setIcon(Drawable)}.
      *
      * @param attrId ID of a theme attribute that points to a drawable resource.
      */
@@ -594,21 +606,24 @@
 
     /** Final steps common to both {@link #create()} and {@link #show()} */
     private void prepareDialog() {
-        if (mSubtitle != null) {
+        View customTitle = LayoutInflater.from(mContext).inflate(
+                R.layout.car_ui_alert_dialog_title_with_subtitle, null);
 
-            View customTitle = LayoutInflater.from(mContext).inflate(
-                    R.layout.car_ui_alert_dialog_title_with_subtitle, null);
+        TextView mTitleView = customTitle.requireViewById(R.id.alertTitle);
+        TextView mSubtitleView = customTitle.requireViewById(R.id.alertSubtitle);
+        ImageView mIconView = customTitle.requireViewById(R.id.icon);
 
-            TextView mTitleView = customTitle.requireViewById(R.id.alertTitle);
-            TextView mSubtitleView = customTitle.requireViewById(R.id.alertSubtitle);
-            ImageView mIconView = customTitle.requireViewById(R.id.icon);
-
-            mTitleView.setText(mTitle);
-            mSubtitleView.setText(mSubtitle);
-            mIconView.setImageDrawable(mIcon);
-            mIconView.setVisibility(mIcon != null ? View.VISIBLE : View.GONE);
-            mBuilder.setCustomTitle(customTitle);
+        mTitleView.setText(mTitle);
+        mTitleView.setVisibility(TextUtils.isEmpty(mTitle) ? View.GONE : View.VISIBLE);
+        mSubtitleView.setText(mSubtitle);
+        mSubtitleView.setVisibility(TextUtils.isEmpty(mSubtitle) ? View.GONE : View.VISIBLE);
+        mIconView.setImageDrawable(mIcon);
+        mIconView.setVisibility(mIcon != null ? View.VISIBLE : View.GONE);
+        if (mIconTinted) {
+            mIconView.setImageTintList(
+                    mContext.getColorStateList(R.color.car_ui_dialog_icon_color));
         }
+        mBuilder.setCustomTitle(customTitle);
 
         if (!mNeutralButtonSet && !mNegativeButtonSet && !mPositiveButtonSet) {
             String mDefaultButtonText = mContext.getString(
diff --git a/car-ui-lib/src/com/android/car/ui/preference/CarUiEditTextPreference.java b/car-ui-lib/src/com/android/car/ui/preference/CarUiEditTextPreference.java
index 4480714..8774491 100644
--- a/car-ui-lib/src/com/android/car/ui/preference/CarUiEditTextPreference.java
+++ b/car-ui-lib/src/com/android/car/ui/preference/CarUiEditTextPreference.java
@@ -18,8 +18,11 @@
 
 import android.content.Context;
 import android.util.AttributeSet;
+import android.view.View;
 
+import androidx.annotation.VisibleForTesting;
 import androidx.preference.EditTextPreference;
+import androidx.preference.PreferenceViewHolder;
 
 import com.android.car.ui.R;
 
@@ -53,6 +56,18 @@
         mContext = context;
     }
 
+    protected void setTwoActionLayout() {
+        setLayoutResource(R.layout.car_ui_two_action_preference);
+    }
+
+    /**
+     * Returns the widget container if {@link #setTwoActionLayout) was called, otherwise null.
+     */
+    @VisibleForTesting(otherwise = VisibleForTesting.PROTECTED)
+    public View getWidgetActionContainer(PreferenceViewHolder holder) {
+        return holder.findViewById(R.id.action_widget_container);
+    }
+
     @Override
     public void onAttached() {
         super.onAttached();
diff --git a/car-ui-lib/src/com/android/car/ui/preference/CarUiMultiSelectListPreference.java b/car-ui-lib/src/com/android/car/ui/preference/CarUiMultiSelectListPreference.java
index 4752082..bc626a0 100644
--- a/car-ui-lib/src/com/android/car/ui/preference/CarUiMultiSelectListPreference.java
+++ b/car-ui-lib/src/com/android/car/ui/preference/CarUiMultiSelectListPreference.java
@@ -52,6 +52,11 @@
         mContext = context;
     }
 
+    /**
+     * This is to make getSelectedItems() visible from other classes in
+     * com.android.car.ui.preference.
+     */
+    @Override
     protected boolean[] getSelectedItems() {
         return super.getSelectedItems();
     }
diff --git a/car-ui-lib/src/com/android/car/ui/preference/CarUiPreference.java b/car-ui-lib/src/com/android/car/ui/preference/CarUiPreference.java
index 5db22cf..f50e03d 100644
--- a/car-ui-lib/src/com/android/car/ui/preference/CarUiPreference.java
+++ b/car-ui-lib/src/com/android/car/ui/preference/CarUiPreference.java
@@ -18,20 +18,30 @@
 
 import android.content.Context;
 import android.content.res.TypedArray;
+import android.graphics.drawable.Drawable;
 import android.util.AttributeSet;
+import android.view.View;
+import android.widget.Toast;
 
 import androidx.preference.Preference;
+import androidx.preference.PreferenceViewHolder;
 
 import com.android.car.ui.R;
+import com.android.car.ui.utils.CarUiUtils;
 
 /**
  * This class extends the base {@link Preference} class. Adds the support to add a drawable icon to
  * the preference if there is one of fragment, intent or onPreferenceClickListener set.
  */
-public class CarUiPreference extends Preference {
+public class CarUiPreference extends Preference implements IDisabledPreferenceCallback {
 
     private Context mContext;
     private boolean mShowChevron;
+    private String mMessageToShowWhenDisabledPreferenceClicked;
+
+    private boolean mShouldShowRippleOnDisabledPreference;
+    private Drawable mBackground;
+    private View mPreference;
 
     public CarUiPreference(Context context, AttributeSet attrs,
             int defStyleAttr, int defStyleRes) {
@@ -61,6 +71,18 @@
                 defStyleRes);
 
         mShowChevron = a.getBoolean(R.styleable.CarUiPreference_showChevron, true);
+        mShouldShowRippleOnDisabledPreference = a.getBoolean(
+                R.styleable.CarUiPreference_showRippleOnDisabledPreference, false);
+    }
+
+
+    @Override
+    public void onBindViewHolder(PreferenceViewHolder holder) {
+        super.onBindViewHolder(holder);
+        boolean viewEnabled = isEnabled();
+        mPreference = holder.itemView;
+        mBackground = CarUiUtils.setPreferenceViewEnabled(viewEnabled, holder.itemView, mBackground,
+                mShouldShowRippleOnDisabledPreference);
     }
 
     @Override
@@ -80,7 +102,38 @@
         }
     }
 
+    /**
+     * This is similar to {@link Preference#performClick()} with the only difference that we do not
+     * return when view is not enabled.
+     */
+    @Override
+    @SuppressWarnings("RestrictTo")
+    public void performClick() {
+        if (isEnabled()) {
+            super.performClick();
+        } else if (mMessageToShowWhenDisabledPreferenceClicked != null
+                && !mMessageToShowWhenDisabledPreferenceClicked.isEmpty()) {
+            Toast.makeText(mContext, mMessageToShowWhenDisabledPreferenceClicked,
+                    Toast.LENGTH_LONG).show();
+        }
+    }
+
     public void setShowChevron(boolean showChevron) {
         mShowChevron = showChevron;
     }
+
+    /**
+     * Sets the ripple on the disabled preference.
+     */
+    @Override
+    public void setShouldShowRippleOnDisabledPreference(boolean showRipple) {
+        mShouldShowRippleOnDisabledPreference = showRipple;
+        CarUiUtils.updateRippleStateOnDisabledPreference(isEnabled(),
+                mShouldShowRippleOnDisabledPreference, mBackground, mPreference);
+    }
+
+    @Override
+    public void setMessageToShowWhenDisabledPreferenceClicked(String message) {
+        mMessageToShowWhenDisabledPreferenceClicked = message;
+    }
 }
diff --git a/car-ui-lib/src/com/android/car/ui/preference/CarUiRadioButtonPreference.java b/car-ui-lib/src/com/android/car/ui/preference/CarUiRadioButtonPreference.java
new file mode 100644
index 0000000..288ec95
--- /dev/null
+++ b/car-ui-lib/src/com/android/car/ui/preference/CarUiRadioButtonPreference.java
@@ -0,0 +1,64 @@
+/*
+ * Copyright (C) 2019 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.car.ui.preference;
+
+import android.content.Context;
+import android.util.AttributeSet;
+import android.widget.RadioButton;
+
+import androidx.preference.PreferenceViewHolder;
+import androidx.preference.TwoStatePreference;
+
+import com.android.car.ui.R;
+
+/** A preference which shows a radio button at the start of the preference. */
+public class CarUiRadioButtonPreference extends TwoStatePreference {
+
+    public CarUiRadioButtonPreference(Context context, AttributeSet attrs,
+            int defStyleAttr, int defStyleRes) {
+        super(context, attrs, defStyleAttr, defStyleRes);
+        init();
+    }
+
+    public CarUiRadioButtonPreference(Context context, AttributeSet attrs, int defStyleAttr) {
+        super(context, attrs, defStyleAttr);
+        init();
+    }
+
+    public CarUiRadioButtonPreference(Context context, AttributeSet attrs) {
+        super(context, attrs);
+        init();
+    }
+
+    public CarUiRadioButtonPreference(Context context) {
+        super(context);
+        init();
+    }
+
+    private void init() {
+        setLayoutResource(R.layout.car_ui_preference);
+        setWidgetLayoutResource(R.layout.car_ui_radio_button_preference_widget);
+    }
+
+    @Override
+    public void onBindViewHolder(PreferenceViewHolder holder) {
+        super.onBindViewHolder(holder);
+
+        RadioButton radioButton = (RadioButton) holder.findViewById(R.id.radio_button);
+        radioButton.setChecked(isChecked());
+    }
+}
diff --git a/car-ui-lib/src/com/android/car/ui/preference/CarUiSeekBarDialogPreference.java b/car-ui-lib/src/com/android/car/ui/preference/CarUiSeekBarDialogPreference.java
new file mode 100644
index 0000000..71d3d81
--- /dev/null
+++ b/car-ui-lib/src/com/android/car/ui/preference/CarUiSeekBarDialogPreference.java
@@ -0,0 +1,262 @@
+/*
+ * Copyright 2020 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.car.ui.preference;
+
+import android.content.Context;
+import android.util.AttributeSet;
+import android.view.View;
+import android.widget.SeekBar;
+import android.widget.TextView;
+
+import androidx.preference.DialogPreference;
+
+import com.android.car.ui.R;
+
+/** A class implements some basic methods of a seekbar dialog preference. */
+public class CarUiSeekBarDialogPreference extends DialogPreference
+        implements IDialogFragmentCallbacks {
+
+    private int mSeekBarProgress;
+    private SeekBar mSeekBar;
+
+    private int mSeekBarTopTextViewVisibility;
+    private TextView mSeekBarTopTextView;
+    private String mSeekBarTopText;
+
+    private int mSeekBarLeftTextViewVisibility;
+    private TextView mSeekBarLeftTextView;
+    private String mSeekBarLeftText;
+
+    private int mSeekBarRightTextViewVisibility;
+    private TextView mSeekBarRightTextView;
+    private String mSeekBarRightText;
+
+    private SeekBar.OnSeekBarChangeListener mOnSeekBarChangeListener;
+    private int mMaxProgress = 100;
+
+    public CarUiSeekBarDialogPreference(Context context, AttributeSet attrs,
+            int defStyleAttr, int defStyleRes) {
+        super(context, attrs, defStyleAttr, defStyleRes);
+        init();
+    }
+
+    public CarUiSeekBarDialogPreference(Context context, AttributeSet attrs, int defStyleAttr) {
+        super(context, attrs, defStyleAttr);
+        init();
+    }
+
+    public CarUiSeekBarDialogPreference(Context context, AttributeSet attrs) {
+        super(context, attrs);
+        init();
+    }
+
+    public CarUiSeekBarDialogPreference(Context context) {
+        super(context);
+        init();
+    }
+
+    private void init() {
+        setDialogLayoutResource(R.layout.car_ui_seekbar_dialog);
+        setPositiveButtonText(R.string.car_ui_dialog_preference_positive);
+        setNegativeButtonText(R.string.car_ui_dialog_preference_negative);
+    }
+
+    @Override
+    public void onAttached() {
+        super.onAttached();
+        mSeekBarProgress = getPersistedInt(0);
+    }
+
+    @Override
+    public void onBindDialogView(View view) {
+        mSeekBar = view.findViewById(R.id.seek_bar);
+        mSeekBarTopTextView = view.findViewById(R.id.seek_bar_text_top);
+        mSeekBarLeftTextView = view.findViewById(R.id.seek_bar_text_left);
+        mSeekBarRightTextView = view.findViewById(R.id.seek_bar_text_right);
+
+        setProgress(mSeekBarProgress);
+
+        setSeekBarTopTextViewVisibility(mSeekBarTopTextViewVisibility);
+        setSeekBarTopTextViewText(mSeekBarTopText);
+
+        setSeekBarLeftTextViewVisibility(mSeekBarLeftTextViewVisibility);
+        setSeekBarLeftTextViewText(mSeekBarLeftText);
+
+        setSeekBarRightTextViewVisibility(mSeekBarRightTextViewVisibility);
+        setSeekBarRightTextViewText(mSeekBarRightText);
+
+        setMaxProgress(mMaxProgress);
+        setOnSeekBarChangeListener(mOnSeekBarChangeListener);
+    }
+
+    /**
+     * Get the progress bar's current level of progress. Return 0 when the progress bar is in
+     * indeterminate mode.
+     */
+    public int getProgress() {
+        if (mSeekBar != null) {
+            return mSeekBar.getProgress();
+        }
+        return mSeekBarProgress;
+    }
+
+    /**
+     * Sets the current progress to the specified value.
+     */
+    public void setProgress(int progress) {
+        if (mSeekBar != null) {
+            mSeekBar.setProgress(progress);
+        }
+        mSeekBarProgress = progress;
+    }
+
+    @Override
+    public void onDialogClosed(boolean positiveResult) {
+        if (positiveResult) {
+            mSeekBarProgress = mSeekBar.getProgress();
+            persistInt(mSeekBarProgress);
+            notifyChanged();
+        }
+
+        mSeekBarTopTextView = null;
+        mSeekBarRightTextView = null;
+        mSeekBarLeftTextView = null;
+        mSeekBar = null;
+    }
+
+    /**
+     * Sets the text view visibility on top of the seekbar.
+     */
+    public void setSeekBarTopTextViewVisibility(int visibility) {
+        if (mSeekBarTopTextView != null) {
+            mSeekBarTopTextView.setVisibility(visibility);
+        }
+        mSeekBarTopTextViewVisibility = visibility;
+    }
+
+    /**
+     * Gets the text on top of the seekbar.
+     */
+    public String getSeekBarTopTextViewText() {
+        if (mSeekBarTopTextView != null) {
+            return mSeekBarTopTextView.getText().toString();
+        }
+        return mSeekBarTopText;
+    }
+
+    /**
+     * Sets the text on top of the seekbar.
+     */
+    public void setSeekBarTopTextViewText(String text) {
+        if (mSeekBarTopTextView != null) {
+            mSeekBarTopTextView.setText(text);
+        }
+        mSeekBarTopText = text;
+    }
+
+    /**
+     * Sets the text view visibility on left of the seekbar.
+     */
+    public void setSeekBarLeftTextViewVisibility(int visibility) {
+        if (mSeekBarLeftTextView != null) {
+            mSeekBarLeftTextView.setVisibility(visibility);
+        }
+        mSeekBarLeftTextViewVisibility = visibility;
+    }
+
+    /**
+     * Gets the text on left of the seekbar.
+     */
+    public String getSeekBarLeftTextViewText() {
+        if (mSeekBarLeftTextView != null) {
+            return mSeekBarLeftTextView.getText().toString();
+        }
+        return mSeekBarLeftText;
+    }
+
+    /**
+     * Sets the text on Left of the seekbar.
+     */
+    public void setSeekBarLeftTextViewText(String text) {
+        if (mSeekBarLeftTextView != null) {
+            mSeekBarLeftTextView.setText(text);
+        }
+        mSeekBarLeftText = text;
+    }
+
+
+    /**
+     * Sets the text view visibility on right of the seekbar.
+     */
+    public void setSeekBarRightTextViewVisibility(int visibility) {
+        if (mSeekBarRightTextView != null) {
+            mSeekBarRightTextView.setVisibility(visibility);
+        }
+        mSeekBarRightTextViewVisibility = visibility;
+    }
+
+    /**
+     * Gets the text on right of the seekbar.
+     */
+    public String getSeekBarRightTextViewText() {
+        if (mSeekBarRightTextView != null) {
+            return mSeekBarRightTextView.getText().toString();
+        }
+        return mSeekBarRightText;
+    }
+
+
+    /**
+     * Sets the text on right of the seekbar.
+     */
+    public void setSeekBarRightTextViewText(String text) {
+        if (mSeekBarRightTextView != null) {
+            mSeekBarRightTextView.setText(text);
+        }
+        mSeekBarRightText = text;
+    }
+
+    /**
+     * Sets a listener to receive notifications of changes to the SeekBar's progress level. Also
+     * provides notifications of when the user starts and stops a touch gesture within the SeekBar.
+     *
+     * @param listener The seek bar notification listener
+     * @see SeekBar.OnSeekBarChangeListener
+     */
+    public void setOnSeekBarChangeListener(SeekBar.OnSeekBarChangeListener listener) {
+        if (mSeekBar != null) {
+            mSeekBar.setOnSeekBarChangeListener(listener);
+        }
+        mOnSeekBarChangeListener = listener;
+    }
+
+    /** Get the upper range of the progress bar */
+    public int getMaxProgress() {
+        if (mSeekBar != null) {
+            return mSeekBar.getMax();
+        }
+        return mMaxProgress;
+    }
+
+    /** Set the upper range of the progress bar */
+    public void setMaxProgress(int maxProgress) {
+        if (mSeekBar != null) {
+            mSeekBar.setMax(maxProgress);
+        }
+        mMaxProgress = maxProgress;
+    }
+}
diff --git a/car-ui-lib/src/com/android/car/ui/preference/CarUiSwitchPreference.java b/car-ui-lib/src/com/android/car/ui/preference/CarUiSwitchPreference.java
new file mode 100644
index 0000000..6f39364
--- /dev/null
+++ b/car-ui-lib/src/com/android/car/ui/preference/CarUiSwitchPreference.java
@@ -0,0 +1,112 @@
+/*
+ * Copyright 2020 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.car.ui.preference;
+
+import android.content.Context;
+import android.content.res.TypedArray;
+import android.graphics.drawable.Drawable;
+import android.util.AttributeSet;
+import android.view.View;
+import android.widget.Toast;
+
+import androidx.preference.PreferenceViewHolder;
+import androidx.preference.SwitchPreference;
+
+import com.android.car.ui.R;
+import com.android.car.ui.utils.CarUiUtils;
+
+/**
+ * This class extends the base {@link SwitchPreference} class. Adds the functionality to show
+ * message when preference is disabled.
+ */
+public class CarUiSwitchPreference extends SwitchPreference implements IDisabledPreferenceCallback {
+
+    private String mMessageToShowWhenDisabledPreferenceClicked;
+
+    private boolean mShouldShowRippleOnDisabledPreference;
+    private Drawable mBackground;
+    private View mPreference;
+    private Context mContext;
+
+    public CarUiSwitchPreference(Context context, AttributeSet attrs, int defStyleAttr,
+            int defStyleRes) {
+        super(context, attrs, defStyleAttr, defStyleRes);
+        init(context, attrs);
+    }
+
+    public CarUiSwitchPreference(Context context, AttributeSet attrs, int defStyleAttr) {
+        super(context, attrs, defStyleAttr);
+        init(context, attrs);
+    }
+
+    public CarUiSwitchPreference(Context context, AttributeSet attrs) {
+        super(context, attrs);
+        init(context, attrs);
+    }
+
+    public CarUiSwitchPreference(Context context) {
+        super(context);
+        init(context, null);
+    }
+
+    private void init(Context context, AttributeSet attrs) {
+        mContext = context;
+        TypedArray preferenceAttributes = getContext().obtainStyledAttributes(attrs,
+                R.styleable.CarUiPreference);
+        mShouldShowRippleOnDisabledPreference = preferenceAttributes.getBoolean(
+                R.styleable.CarUiPreference_showRippleOnDisabledPreference, false);
+    }
+
+    @Override
+    public void onBindViewHolder(PreferenceViewHolder holder) {
+        super.onBindViewHolder(holder);
+        mPreference = holder.itemView;
+        mBackground = CarUiUtils.setPreferenceViewEnabled(isEnabled(), holder.itemView, mBackground,
+                mShouldShowRippleOnDisabledPreference);
+    }
+
+    /**
+     * This is similar to {@link Preference#performClick()} with the only difference that we do not
+     * return when view is not enabled.
+     */
+    @Override
+    @SuppressWarnings("RestrictTo")
+    public void performClick() {
+        if (isEnabled()) {
+            super.performClick();
+        } else if (mMessageToShowWhenDisabledPreferenceClicked != null
+                && !mMessageToShowWhenDisabledPreferenceClicked.isEmpty()) {
+            Toast.makeText(mContext, mMessageToShowWhenDisabledPreferenceClicked,
+                    Toast.LENGTH_LONG).show();
+        }
+    }
+
+    /**
+     * Sets the ripple on the disabled preference.
+     */
+    @Override
+    public void setShouldShowRippleOnDisabledPreference(boolean showRipple) {
+        mShouldShowRippleOnDisabledPreference = showRipple;
+        CarUiUtils.updateRippleStateOnDisabledPreference(isEnabled(),
+                mShouldShowRippleOnDisabledPreference, mBackground, mPreference);
+    }
+
+    @Override
+    public void setMessageToShowWhenDisabledPreferenceClicked(String message) {
+        mMessageToShowWhenDisabledPreferenceClicked = message;
+    }
+}
diff --git a/car-ui-lib/src/com/android/car/ui/preference/CarUiTwoActionPreference.java b/car-ui-lib/src/com/android/car/ui/preference/CarUiTwoActionPreference.java
new file mode 100644
index 0000000..a96cef1
--- /dev/null
+++ b/car-ui-lib/src/com/android/car/ui/preference/CarUiTwoActionPreference.java
@@ -0,0 +1,107 @@
+/*
+ * Copyright (C) 2018 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.car.ui.preference;
+
+import android.content.Context;
+import android.content.res.TypedArray;
+import android.util.AttributeSet;
+import android.view.View;
+
+import androidx.preference.PreferenceViewHolder;
+
+import com.android.car.ui.R;
+
+/**
+ * A preference which can perform two actions. The secondary action is shown by default.
+ * {@link #showAction(boolean)} may be used to manually set the visibility of the action.
+ */
+public class CarUiTwoActionPreference extends CarUiPreference {
+
+    private boolean mIsActionShown;
+
+    public CarUiTwoActionPreference(Context context, AttributeSet attrs,
+            int defStyleAttr, int defStyleRes) {
+        super(context, attrs, defStyleAttr, defStyleRes);
+        init(attrs);
+    }
+
+    public CarUiTwoActionPreference(Context context, AttributeSet attrs, int defStyleAttr) {
+        super(context, attrs, defStyleAttr);
+        init(attrs);
+    }
+
+    public CarUiTwoActionPreference(Context context, AttributeSet attrs) {
+        super(context, attrs);
+        init(attrs);
+    }
+
+    public CarUiTwoActionPreference(Context context) {
+        super(context);
+        init(/* attrs= */ null);
+    }
+
+    /**
+     * Sets the custom two action preference layout and attributes.
+     * Check {@link #setLayoutResource} for layout requirements.
+     */
+    private void init(AttributeSet attrs) {
+        setLayoutResource(R.layout.car_ui_two_action_preference);
+        TypedArray preferenceAttributes = getContext().obtainStyledAttributes(attrs,
+                R.styleable.CarUiTwoActionPreference);
+        mIsActionShown = preferenceAttributes.getBoolean(
+                R.styleable.CarUiTwoActionPreference_actionShown, true);
+        setShowChevron(false);
+    }
+
+    /**
+     * Sets whether the secondary action is visible in the preference.
+     *
+     * @param isShown {@code true} if the secondary action should be shown.
+     */
+    public void showAction(boolean isShown) {
+        mIsActionShown = isShown;
+        notifyChanged();
+    }
+
+    /** Returns {@code true} if action is shown. */
+    public boolean isActionShown() {
+        return mIsActionShown;
+    }
+
+    @Override
+    public void onBindViewHolder(PreferenceViewHolder holder) {
+        super.onBindViewHolder(holder);
+        View actionContainer = holder.findViewById(R.id.action_widget_container);
+        View widgetFrame = holder.findViewById(android.R.id.widget_frame);
+        if (mIsActionShown) {
+            actionContainer.setVisibility(View.VISIBLE);
+            onBindWidgetFrame(widgetFrame);
+        } else {
+            actionContainer.setVisibility(View.GONE);
+        }
+    }
+
+    /**
+     * Binds the created View for the second action.
+     *
+     * <p>This is a good place to set properties on any custom view.
+     *
+     * @param widgetFrame The widget frame which controls the 2nd action.
+     */
+    protected void onBindWidgetFrame(View widgetFrame) {
+    }
+}
diff --git a/car-ui-lib/src/com/android/car/ui/preference/IDialogFragmentCallbacks.java b/car-ui-lib/src/com/android/car/ui/preference/IDialogFragmentCallbacks.java
new file mode 100644
index 0000000..6cd3e15
--- /dev/null
+++ b/car-ui-lib/src/com/android/car/ui/preference/IDialogFragmentCallbacks.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright 2020 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.car.ui.preference;
+
+import android.app.AlertDialog;
+import android.content.DialogInterface;
+import android.view.View;
+
+import androidx.preference.DialogPreference;
+
+/**
+ * Interface for preferences to handle their own dialogs.
+ *
+ * A {@link androidx.preference.Preference} should implement this, and its {@link DialogPreference}
+ * will call these methods on the Preference.
+ */
+public interface IDialogFragmentCallbacks extends DialogInterface.OnClickListener {
+
+    /** See {@link CarUiDialogFragment#onPrepareDialogBuilder(AlertDialog.Builder)}. */
+    default void onPrepareDialogBuilder(AlertDialog.Builder builder) {}
+
+    @Override
+    default void onClick(DialogInterface dialog, int which) {}
+
+    /** See {@link CarUiDialogFragment#onDialogClosed(boolean)}. */
+    default void onDialogClosed(boolean positiveResult) {}
+
+    /** See {@link CarUiDialogFragment#onBindDialogView(View)}. */
+    default void onBindDialogView(View view) {}
+}
diff --git a/car-ui-lib/src/com/android/car/ui/preference/IDisabledPreferenceCallback.java b/car-ui-lib/src/com/android/car/ui/preference/IDisabledPreferenceCallback.java
new file mode 100644
index 0000000..39b5bc2
--- /dev/null
+++ b/car-ui-lib/src/com/android/car/ui/preference/IDisabledPreferenceCallback.java
@@ -0,0 +1,33 @@
+/*
+ * Copyright 2020 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.car.ui.preference;
+
+/**
+ * Interface for preferences to handle clicks when its disabled.
+ */
+public interface IDisabledPreferenceCallback {
+
+    /**
+     * Sets if the ripple effect should be shown on disabled preference.
+     */
+    default void setShouldShowRippleOnDisabledPreference(boolean showRipple) {}
+
+    /**
+     * Sets the message to be displayed when the disabled preference is clicked.
+     */
+    default void setMessageToShowWhenDisabledPreferenceClicked(String message) {}
+}
diff --git a/car-ui-lib/src/com/android/car/ui/preference/PreferenceFragment.java b/car-ui-lib/src/com/android/car/ui/preference/PreferenceFragment.java
index de25cf8..92b2d6e 100644
--- a/car-ui-lib/src/com/android/car/ui/preference/PreferenceFragment.java
+++ b/car-ui-lib/src/com/android/car/ui/preference/PreferenceFragment.java
@@ -36,6 +36,7 @@
 import androidx.preference.PreferenceFragmentCompat;
 import androidx.preference.PreferenceGroup;
 import androidx.preference.PreferenceScreen;
+import androidx.preference.SwitchPreference;
 import androidx.recyclerview.widget.RecyclerView;
 
 import com.android.car.ui.R;
@@ -119,6 +120,8 @@
             f = ListPreferenceFragment.newInstance(preference.getKey());
         } else if (preference instanceof MultiSelectListPreference) {
             f = MultiSelectListPreferenceFragment.newInstance(preference.getKey());
+        } else if (preference instanceof CarUiSeekBarDialogPreference) {
+            f = SeekbarPreferenceDialogFragment.newInstance(preference.getKey());
         } else {
             throw new IllegalArgumentException(
                     "Cannot display dialog for an unknown Preference type: "
@@ -215,6 +218,7 @@
             new Pair<>(ListPreference.class, CarUiListPreference.class),
             new Pair<>(MultiSelectListPreference.class, CarUiMultiSelectListPreference.class),
             new Pair<>(EditTextPreference.class, CarUiEditTextPreference.class),
+            new Pair<>(SwitchPreference.class, CarUiSwitchPreference.class),
             new Pair<>(Preference.class, CarUiPreference.class)
     );
 
diff --git a/car-ui-lib/src/com/android/car/ui/preference/SeekbarPreferenceDialogFragment.java b/car-ui-lib/src/com/android/car/ui/preference/SeekbarPreferenceDialogFragment.java
new file mode 100644
index 0000000..0a536be
--- /dev/null
+++ b/car-ui-lib/src/com/android/car/ui/preference/SeekbarPreferenceDialogFragment.java
@@ -0,0 +1,68 @@
+/*
+ * Copyright 2020 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.car.ui.preference;
+
+import android.app.AlertDialog;
+import android.content.DialogInterface;
+import android.os.Bundle;
+import android.view.View;
+
+/**
+ * A fragment that provides a layout with a seekbar within a dialog.
+ */
+public class SeekbarPreferenceDialogFragment extends PreferenceDialogFragment {
+
+    /**
+     * Returns a new instance of {@link SeekbarPreferenceDialogFragment} for the {@link
+     * CarUiSeekBarDialogPreference} with the given {@code key}.
+     */
+    public static SeekbarPreferenceDialogFragment newInstance(String key) {
+        SeekbarPreferenceDialogFragment fragment = new SeekbarPreferenceDialogFragment();
+        Bundle b = new Bundle(/* capacity= */ 1);
+        b.putString(ARG_KEY, key);
+        fragment.setArguments(b);
+        return fragment;
+    }
+
+    @Override
+    protected void onBindDialogView(View view) {
+        super.onBindDialogView(view);
+
+        IDialogFragmentCallbacks dialogPreference = (IDialogFragmentCallbacks) getPreference();
+        dialogPreference.onBindDialogView(view);
+    }
+
+    @Override
+    public void onClick(DialogInterface dialog, int which) {
+        super.onClick(dialog, which);
+
+        IDialogFragmentCallbacks dialogPreference = (IDialogFragmentCallbacks) getPreference();
+        dialogPreference.onClick(dialog, which);
+    }
+
+    @Override
+    protected void onDialogClosed(boolean positiveResult) {
+        IDialogFragmentCallbacks dialogPreference = (IDialogFragmentCallbacks) getPreference();
+        dialogPreference.onDialogClosed(positiveResult);
+    }
+
+    @Override
+    protected void onPrepareDialogBuilder(AlertDialog.Builder builder) {
+        IDialogFragmentCallbacks dialogPreference = (IDialogFragmentCallbacks) getPreference();
+        dialogPreference.onPrepareDialogBuilder(builder);
+    }
+}
diff --git a/car-ui-lib/src/com/android/car/ui/recyclerview/DefaultScrollBar.java b/car-ui-lib/src/com/android/car/ui/recyclerview/DefaultScrollBar.java
index 61c526c..30d8d09 100644
--- a/car-ui-lib/src/com/android/car/ui/recyclerview/DefaultScrollBar.java
+++ b/car-ui-lib/src/com/android/car/ui/recyclerview/DefaultScrollBar.java
@@ -124,6 +124,7 @@
         getRecyclerView().setOnFlingListener(null);
         mSnapHelper.attachToRecyclerView(getRecyclerView());
 
+        mScrollView.setVisibility(View.INVISIBLE);
         mScrollView.addOnLayoutChangeListener(
                 (View v,
                         int left,
@@ -558,13 +559,14 @@
         boolean isAtEnd = isAtEnd();
         RecyclerView.LayoutManager layoutManager = getRecyclerView().getLayoutManager();
 
+        // enable/disable the button before the view is shown. So there is no flicker.
+        setUpEnabled(!isAtStart);
+        setDownEnabled(!isAtEnd);
         if ((isAtStart && isAtEnd) || layoutManager == null || layoutManager.getItemCount() == 0) {
             mScrollView.setVisibility(View.INVISIBLE);
         } else {
             mScrollView.setVisibility(View.VISIBLE);
         }
-        setUpEnabled(!isAtStart);
-        setDownEnabled(!isAtEnd);
 
         if (layoutManager == null) {
             return;
diff --git a/car-ui-lib/src/com/android/car/ui/toolbar/MenuItemRenderer.java b/car-ui-lib/src/com/android/car/ui/toolbar/MenuItemRenderer.java
index 77b9f53..8f8ae33 100644
--- a/car-ui-lib/src/com/android/car/ui/toolbar/MenuItemRenderer.java
+++ b/car-ui-lib/src/com/android/car/ui/toolbar/MenuItemRenderer.java
@@ -15,8 +15,6 @@
  */
 package com.android.car.ui.toolbar;
 
-import static com.android.car.ui.utils.CarUiUtils.requireViewByRefId;
-
 import android.app.Activity;
 import android.car.drivingstate.CarUxRestrictions;
 import android.content.Context;
@@ -97,14 +95,11 @@
         inflater.inflate(R.layout.car_ui_toolbar_menu_item, mParentView, (View view, int resid,
                 ViewGroup parent) -> {
             mView = view;
-
-            mIconContainer =
-                    requireViewByRefId(mView, R.id.car_ui_toolbar_menu_item_icon_container);
-            mIconView = requireViewByRefId(mView, R.id.car_ui_toolbar_menu_item_icon);
-            mSwitch = requireViewByRefId(mView, R.id.car_ui_toolbar_menu_item_switch);
-            mTextView = requireViewByRefId(mView, R.id.car_ui_toolbar_menu_item_text);
-            mTextWithIconView =
-                    requireViewByRefId(mView, R.id.car_ui_toolbar_menu_item_text_with_icon);
+            mIconContainer = mView.requireViewById(R.id.car_ui_toolbar_menu_item_icon_container);
+            mIconView = mView.requireViewById(R.id.car_ui_toolbar_menu_item_icon);
+            mSwitch = mView.requireViewById(R.id.car_ui_toolbar_menu_item_switch);
+            mTextView = mView.requireViewById(R.id.car_ui_toolbar_menu_item_text);
+            mTextWithIconView = mView.requireViewById(R.id.car_ui_toolbar_menu_item_text_with_icon);
             updateView();
             callback.accept(mView);
         });
diff --git a/car-ui-lib/src/com/android/car/ui/toolbar/SearchView.java b/car-ui-lib/src/com/android/car/ui/toolbar/SearchView.java
index 7f7eb80..cf7a2fc 100644
--- a/car-ui-lib/src/com/android/car/ui/toolbar/SearchView.java
+++ b/car-ui-lib/src/com/android/car/ui/toolbar/SearchView.java
@@ -15,8 +15,6 @@
  */
 package com.android.car.ui.toolbar;
 
-import static com.android.car.ui.utils.CarUiUtils.requireViewByRefId;
-
 import android.content.Context;
 import android.graphics.drawable.Drawable;
 import android.text.Editable;
@@ -86,10 +84,9 @@
         LayoutInflater inflater = LayoutInflater.from(context);
         inflater.inflate(R.layout.car_ui_toolbar_search_view, this, true);
 
-        mSearchText = requireViewByRefId(this, R.id.car_ui_toolbar_search_bar);
-        mIcon = requireViewByRefId(this, R.id.car_ui_toolbar_search_icon);
-        mCloseIcon = requireViewByRefId(this, R.id.car_ui_toolbar_search_close);
-
+        mSearchText = requireViewById(R.id.car_ui_toolbar_search_bar);
+        mIcon = requireViewById(R.id.car_ui_toolbar_search_icon);
+        mCloseIcon = requireViewById(R.id.car_ui_toolbar_search_close);
         mCloseIcon.setOnClickListener(view -> mSearchText.getText().clear());
         mCloseIcon.setVisibility(View.GONE);
 
diff --git a/car-ui-lib/src/com/android/car/ui/toolbar/TabLayout.java b/car-ui-lib/src/com/android/car/ui/toolbar/TabLayout.java
index 828e54a..2f56c13 100644
--- a/car-ui-lib/src/com/android/car/ui/toolbar/TabLayout.java
+++ b/car-ui-lib/src/com/android/car/ui/toolbar/TabLayout.java
@@ -15,8 +15,6 @@
  */
 package com.android.car.ui.toolbar;
 
-import static com.android.car.ui.utils.CarUiUtils.requireViewByRefId;
-
 import android.content.Context;
 import android.content.res.Resources;
 import android.content.res.TypedArray;
@@ -275,8 +273,8 @@
         private void presentTabItemView(int position, @NonNull View tabItemView) {
             Tab tab = mTabList.get(position);
 
-            ImageView iconView = requireViewByRefId(tabItemView, R.id.car_ui_toolbar_tab_item_icon);
-            TextView textView = requireViewByRefId(tabItemView, R.id.car_ui_toolbar_tab_item_text);
+            ImageView iconView = tabItemView.findViewById(R.id.car_ui_toolbar_tab_item_icon);
+            TextView textView = tabItemView.findViewById(R.id.car_ui_toolbar_tab_item_text);
 
             tabItemView.setOnClickListener(view -> selectTab(tab));
             tab.bindText(textView);
diff --git a/car-ui-lib/src/com/android/car/ui/toolbar/ToolbarControllerImpl.java b/car-ui-lib/src/com/android/car/ui/toolbar/ToolbarControllerImpl.java
index eb49186..f3bb47a 100644
--- a/car-ui-lib/src/com/android/car/ui/toolbar/ToolbarControllerImpl.java
+++ b/car-ui-lib/src/com/android/car/ui/toolbar/ToolbarControllerImpl.java
@@ -20,8 +20,6 @@
 import static android.view.View.INVISIBLE;
 import static android.view.View.VISIBLE;
 
-import static com.android.car.ui.utils.CarUiUtils.requireViewByRefId;
-
 import android.app.Activity;
 import android.app.AlertDialog;
 import android.content.Context;
@@ -141,17 +139,17 @@
         mShowLogo = getContext().getResources().getBoolean(
                 R.bool.car_ui_toolbar_show_logo);
 
-        mBackground = requireViewByRefId(view, R.id.car_ui_toolbar_background);
-        mTabLayout = requireViewByRefId(view, R.id.car_ui_toolbar_tabs);
-        mNavIcon = requireViewByRefId(view, R.id.car_ui_toolbar_nav_icon);
-        mLogoInNavIconSpace = requireViewByRefId(view, R.id.car_ui_toolbar_logo);
-        mNavIconContainer = requireViewByRefId(view, R.id.car_ui_toolbar_nav_icon_container);
-        mMenuItemsContainer = requireViewByRefId(view, R.id.car_ui_toolbar_menu_items_container);
-        mTitle = requireViewByRefId(view, R.id.car_ui_toolbar_title);
-        mTitleLogoContainer = requireViewByRefId(view, R.id.car_ui_toolbar_title_logo_container);
-        mTitleLogo = requireViewByRefId(view, R.id.car_ui_toolbar_title_logo);
-        mSearchViewContainer = requireViewByRefId(view, R.id.car_ui_toolbar_search_view_container);
-        mProgressBar = requireViewByRefId(view, R.id.car_ui_toolbar_progress_bar);
+        mBackground = view.requireViewById(R.id.car_ui_toolbar_background);
+        mTabLayout = view.requireViewById(R.id.car_ui_toolbar_tabs);
+        mNavIcon = view.requireViewById(R.id.car_ui_toolbar_nav_icon);
+        mLogoInNavIconSpace = view.requireViewById(R.id.car_ui_toolbar_logo);
+        mNavIconContainer = view.requireViewById(R.id.car_ui_toolbar_nav_icon_container);
+        mMenuItemsContainer = view.requireViewById(R.id.car_ui_toolbar_menu_items_container);
+        mTitle = view.requireViewById(R.id.car_ui_toolbar_title);
+        mTitleLogoContainer = view.requireViewById(R.id.car_ui_toolbar_title_logo_container);
+        mTitleLogo = view.requireViewById(R.id.car_ui_toolbar_title_logo);
+        mSearchViewContainer = view.requireViewById(R.id.car_ui_toolbar_search_view_container);
+        mProgressBar = view.requireViewById(R.id.car_ui_toolbar_progress_bar);
 
         mTabLayout.addListener(new TabLayout.Listener() {
             @Override
diff --git a/car-ui-lib/src/com/android/car/ui/utils/CarUiUtils.java b/car-ui-lib/src/com/android/car/ui/utils/CarUiUtils.java
index 54d64f1..8dd6f07 100644
--- a/car-ui-lib/src/com/android/car/ui/utils/CarUiUtils.java
+++ b/car-ui-lib/src/com/android/car/ui/utils/CarUiUtils.java
@@ -20,22 +20,23 @@
 import android.content.ContextWrapper;
 import android.content.res.Resources;
 import android.content.res.TypedArray;
+import android.graphics.drawable.Drawable;
 import android.util.TypedValue;
 import android.view.View;
+import android.view.ViewGroup;
 
 import androidx.annotation.DimenRes;
-import androidx.annotation.IdRes;
-import androidx.annotation.NonNull;
 import androidx.annotation.Nullable;
 import androidx.annotation.StyleRes;
-import androidx.annotation.UiThread;
+import androidx.core.view.ViewCompat;
 
 /**
  * Collection of utility methods
  */
 public final class CarUiUtils {
     /** This is a utility class */
-    private CarUiUtils() {}
+    private CarUiUtils() {
+    }
 
     /**
      * Reads a float value from a dimens resource. This is necessary as {@link Resources#getFloat}
@@ -84,38 +85,66 @@
     }
 
     /**
-     * It behaves similar to @see View#findViewById, except it resolves the ID reference first.
-     *
-     * @param id the ID to search for
-     * @return a view with given ID if found, or {@code null} otherwise
-     * @see View#requireViewById(int)
+     * Updates the preference view enabled state. If the view is disabled we just disable the child
+     * of preference like TextView, ImageView. The preference itself is always enabled to get the
+     * click events. Ripple effect in background is also removed by default. If the ripple is
+     * needed see
+     * {@link IDisabledPreferenceCallback#setShouldShowRippleOnDisabledPreference(boolean)}
      */
-    @Nullable
-    @UiThread
-    public static <T extends View> T findViewByRefId(@NonNull View root, @IdRes int id) {
-        if (id == View.NO_ID) {
-            return null;
+    public static Drawable setPreferenceViewEnabled(boolean viewEnabled, View itemView,
+            Drawable background, boolean shouldShowRippleOnDisabledPreference) {
+        if (viewEnabled) {
+            if (background != null) {
+                ViewCompat.setBackground(itemView, background);
+            }
+            setChildViewsEnabled(itemView, true, false);
+        } else {
+            itemView.setEnabled(true);
+            if (background == null) {
+                // store the original background.
+                background = itemView.getBackground();
+            }
+            updateRippleStateOnDisabledPreference(false, shouldShowRippleOnDisabledPreference,
+                    background, itemView);
+            setChildViewsEnabled(itemView, false, true);
         }
-
-        TypedValue value = new TypedValue();
-        root.getResources().getValue(id, value, true);
-        return root.findViewById(value.resourceId);
+        return background;
     }
 
     /**
-     * It behaves similar to @see View#requireViewById, except it resolves the ID reference first.
-     *
-     * @param id the ID to search for
-     * @return a view with given ID
-     * @see View#findViewById(int)
+     * Sets the enabled state on the views of the preference. If the view is being disabled we want
+     * only child views of preference to be disabled.
      */
-    @NonNull
-    @UiThread
-    public static <T extends View> T requireViewByRefId(@NonNull View root, @IdRes int id) {
-        T view = findViewByRefId(root, id);
-        if (view == null) {
-            throw new IllegalArgumentException("ID does not reference a View inside this View");
+    private static void setChildViewsEnabled(View view, boolean enabled, boolean isRootView) {
+        if (!isRootView) {
+            view.setEnabled(enabled);
         }
-        return view;
+        if (view instanceof ViewGroup) {
+            ViewGroup grp = (ViewGroup) view;
+            for (int index = 0; index < grp.getChildCount(); index++) {
+                setChildViewsEnabled(grp.getChildAt(index), enabled, false);
+            }
+        }
+    }
+
+    /**
+     * Updates the ripple state on the given preference.
+     *
+     * @param isEnabled whether the preference is enabled or not
+     * @param shouldShowRippleOnDisabledPreference should ripple be displayed when the preference is
+     * clicked
+     * @param background drawable that represents the ripple
+     * @param preference preference on which drawable will be applied
+     */
+    public static void updateRippleStateOnDisabledPreference(boolean isEnabled,
+            boolean shouldShowRippleOnDisabledPreference, Drawable background, View preference) {
+        if (isEnabled || preference == null) {
+            return;
+        }
+        if (shouldShowRippleOnDisabledPreference && background != null) {
+            ViewCompat.setBackground(preference, background);
+        } else {
+            ViewCompat.setBackground(preference, null);
+        }
     }
 }
diff --git a/car-ui-lib/src/com/android/car/ui/utils/CarUxRestrictionsUtil.java b/car-ui-lib/src/com/android/car/ui/utils/CarUxRestrictionsUtil.java
index 31ac24a..dc627a0 100644
--- a/car-ui-lib/src/com/android/car/ui/utils/CarUxRestrictionsUtil.java
+++ b/car-ui-lib/src/com/android/car/ui/utils/CarUxRestrictionsUtil.java
@@ -18,7 +18,6 @@
 import static android.car.drivingstate.CarUxRestrictions.UX_RESTRICTIONS_LIMIT_STRING_LENGTH;
 
 import android.car.Car;
-import android.car.CarNotConnectedException;
 import android.car.drivingstate.CarUxRestrictions;
 import android.car.drivingstate.CarUxRestrictions.CarUxRestrictionsInfo;
 import android.car.drivingstate.CarUxRestrictionsManager;
@@ -45,12 +44,11 @@
 public class CarUxRestrictionsUtil {
     private static final String TAG = "CarUxRestrictionsUtil";
 
-    private final Car mCarApi;
-    private CarUxRestrictionsManager mCarUxRestrictionsManager;
     @NonNull
     private CarUxRestrictions mCarUxRestrictions = getDefaultRestrictions();
 
-    private Set<OnUxRestrictionsChangedListener> mObservers;
+    private final Set<OnUxRestrictionsChangedListener> mObservers =
+            Collections.newSetFromMap(new WeakHashMap<>());
     private static CarUxRestrictionsUtil sInstance = null;
 
     private CarUxRestrictionsUtil(Context context) {
@@ -67,20 +65,20 @@
                     }
                 };
 
-        mCarApi = Car.createCar(context.getApplicationContext());
-        mObservers = Collections.newSetFromMap(new WeakHashMap<>());
-
-        try {
-            mCarUxRestrictionsManager =
-                    (CarUxRestrictionsManager) mCarApi.getCarManager(
-                            Car.CAR_UX_RESTRICTION_SERVICE);
-            mCarUxRestrictionsManager.registerListener(listener);
-            listener.onUxRestrictionsChanged(
-                    mCarUxRestrictionsManager.getCurrentCarUxRestrictions());
-        } catch (CarNotConnectedException | NullPointerException e) {
-            Log.e(TAG, "Car not connected", e);
-            // mCarUxRestrictions will be the default
-        }
+        Car.createCar(context.getApplicationContext(), null, Car.CAR_WAIT_TIMEOUT_DO_NOT_WAIT,
+                (Car car, boolean ready) -> {
+                    if (ready) {
+                        CarUxRestrictionsManager carUxRestrictionsManager =
+                                (CarUxRestrictionsManager) car.getCarManager(
+                                        Car.CAR_UX_RESTRICTION_SERVICE);
+                        carUxRestrictionsManager.registerListener(listener);
+                        listener.onUxRestrictionsChanged(
+                                carUxRestrictionsManager.getCurrentCarUxRestrictions());
+                    } else {
+                        Log.w(TAG, "Car service disconnected, assuming fully restricted uxr");
+                        listener.onUxRestrictionsChanged(null);
+                    }
+                });
     }
 
     @NonNull
diff --git a/car-ui-lib/tests/apitest/current.xml b/car-ui-lib/tests/apitest/current.xml
index fa2213c..5a7515d 100644
--- a/car-ui-lib/tests/apitest/current.xml
+++ b/car-ui-lib/tests/apitest/current.xml
@@ -17,16 +17,10 @@
   <public type="bool" name="car_ui_toolbar_tabs_on_second_row"/>
   <public type="color" name="car_ui_activity_background_color"/>
   <public type="color" name="car_ui_color_accent"/>
-  <public type="color" name="car_ui_list_item_body_text_color"/>
+  <public type="color" name="car_ui_dialog_icon_color"/>
   <public type="color" name="car_ui_list_item_divider"/>
-  <public type="color" name="car_ui_list_item_header_text_color"/>
-  <public type="color" name="car_ui_list_item_title_text_color"/>
-  <public type="color" name="car_ui_preference_category_title_text_color"/>
-  <public type="color" name="car_ui_preference_edit_text_dialog_message_text_color"/>
   <public type="color" name="car_ui_preference_icon_color"/>
-  <public type="color" name="car_ui_preference_summary_text_color"/>
-  <public type="color" name="car_ui_preference_switch_track_text_color"/>
-  <public type="color" name="car_ui_preference_title_text_color"/>
+  <public type="color" name="car_ui_preference_two_action_divider_color"/>
   <public type="color" name="car_ui_recyclerview_divider_color"/>
   <public type="color" name="car_ui_ripple_color"/>
   <public type="color" name="car_ui_scrollbar_thumb"/>
@@ -51,17 +45,15 @@
   <public type="dimen" name="car_ui_dialog_edittext_margin_top"/>
   <public type="dimen" name="car_ui_dialog_icon_size"/>
   <public type="dimen" name="car_ui_dialog_title_margin"/>
+  <public type="dimen" name="car_ui_divider_width"/>
   <public type="dimen" name="car_ui_keyline_1"/>
   <public type="dimen" name="car_ui_keyline_2"/>
   <public type="dimen" name="car_ui_keyline_3"/>
   <public type="dimen" name="car_ui_keyline_4"/>
-  <public type="dimen" name="car_ui_letter_spacing_body1"/>
-  <public type="dimen" name="car_ui_letter_spacing_body3"/>
   <public type="dimen" name="car_ui_list_item_action_divider_height"/>
   <public type="dimen" name="car_ui_list_item_action_divider_width"/>
   <public type="dimen" name="car_ui_list_item_avatar_icon_height"/>
   <public type="dimen" name="car_ui_list_item_avatar_icon_width"/>
-  <public type="dimen" name="car_ui_list_item_body_text_size"/>
   <public type="dimen" name="car_ui_list_item_check_box_end_inset"/>
   <public type="dimen" name="car_ui_list_item_check_box_height"/>
   <public type="dimen" name="car_ui_list_item_check_box_icon_container_width"/>
@@ -71,7 +63,6 @@
   <public type="dimen" name="car_ui_list_item_end_inset"/>
   <public type="dimen" name="car_ui_list_item_header_height"/>
   <public type="dimen" name="car_ui_list_item_header_start_inset"/>
-  <public type="dimen" name="car_ui_list_item_header_text_size"/>
   <public type="dimen" name="car_ui_list_item_height"/>
   <public type="dimen" name="car_ui_list_item_icon_container_width"/>
   <public type="dimen" name="car_ui_list_item_icon_size"/>
@@ -83,7 +74,6 @@
   <public type="dimen" name="car_ui_list_item_supplemental_icon_size"/>
   <public type="dimen" name="car_ui_list_item_text_no_icon_start_margin"/>
   <public type="dimen" name="car_ui_list_item_text_start_margin"/>
-  <public type="dimen" name="car_ui_list_item_title_text_size"/>
   <public type="dimen" name="car_ui_margin"/>
   <public type="dimen" name="car_ui_padding_0"/>
   <public type="dimen" name="car_ui_padding_1"/>
@@ -95,7 +85,6 @@
   <public type="dimen" name="car_ui_preference_category_icon_margin_end"/>
   <public type="dimen" name="car_ui_preference_category_icon_size"/>
   <public type="dimen" name="car_ui_preference_category_min_height"/>
-  <public type="dimen" name="car_ui_preference_category_text_size"/>
   <public type="dimen" name="car_ui_preference_content_margin_bottom"/>
   <public type="dimen" name="car_ui_preference_content_margin_top"/>
   <public type="dimen" name="car_ui_preference_dropdown_padding_start"/>
@@ -104,17 +93,10 @@
   <public type="dimen" name="car_ui_preference_edit_text_dialog_message_margin_bottom"/>
   <public type="dimen" name="car_ui_preference_edit_text_dialog_message_margin_end"/>
   <public type="dimen" name="car_ui_preference_edit_text_dialog_message_margin_start"/>
-  <public type="dimen" name="car_ui_preference_edit_text_dialog_message_text_size"/>
   <public type="dimen" name="car_ui_preference_edit_text_dialog_text_margin_end"/>
   <public type="dimen" name="car_ui_preference_edit_text_dialog_text_margin_start"/>
   <public type="dimen" name="car_ui_preference_icon_margin_end"/>
   <public type="dimen" name="car_ui_preference_icon_size"/>
-  <public type="dimen" name="car_ui_preference_summary_text_size"/>
-  <public type="dimen" name="car_ui_preference_switch_height"/>
-  <public type="dimen" name="car_ui_preference_switch_text_size"/>
-  <public type="dimen" name="car_ui_preference_switch_width"/>
-  <public type="dimen" name="car_ui_preference_switch_width_half"/>
-  <public type="dimen" name="car_ui_preference_title_text_size"/>
   <public type="dimen" name="car_ui_primary_icon_size"/>
   <public type="dimen" name="car_ui_recyclerview_divider_bottom_margin"/>
   <public type="dimen" name="car_ui_recyclerview_divider_end_margin"/>
@@ -164,10 +146,14 @@
   <public type="dimen" name="wrap_content"/>
   <public type="drawable" name="car_ui_activity_background"/>
   <public type="drawable" name="car_ui_divider"/>
+  <public type="drawable" name="car_ui_icon_add"/>
   <public type="drawable" name="car_ui_icon_arrow_back"/>
   <public type="drawable" name="car_ui_icon_close"/>
+  <public type="drawable" name="car_ui_icon_delete"/>
   <public type="drawable" name="car_ui_icon_down"/>
+  <public type="drawable" name="car_ui_icon_edit"/>
   <public type="drawable" name="car_ui_icon_overflow_menu"/>
+  <public type="drawable" name="car_ui_icon_save"/>
   <public type="drawable" name="car_ui_icon_search"/>
   <public type="drawable" name="car_ui_icon_search_nav_icon"/>
   <public type="drawable" name="car_ui_icon_settings"/>
@@ -197,8 +183,6 @@
   <public type="string" name="car_ui_dialog_preference_negative"/>
   <public type="string" name="car_ui_dialog_preference_positive"/>
   <public type="string" name="car_ui_ellipsis"/>
-  <public type="string" name="car_ui_list_item_header_font_family"/>
-  <public type="string" name="car_ui_preference_category_title_font_family"/>
   <public type="string" name="car_ui_preference_switch_off"/>
   <public type="string" name="car_ui_preference_switch_on"/>
   <public type="string" name="car_ui_restricted_while_driving"/>
@@ -215,6 +199,12 @@
   <public type="style" name="Preference.CarUi.CheckBoxPreference"/>
   <public type="style" name="Preference.CarUi.DialogPreference"/>
   <public type="style" name="Preference.CarUi.DialogPreference.EditTextPreference"/>
+  <public type="style" name="Preference.CarUi.DialogSeekBarPreference"/>
+  <public type="style" name="Preference.CarUi.DialogSeekBarPreference.LeftText"/>
+  <public type="style" name="Preference.CarUi.DialogSeekBarPreference.RightText"/>
+  <public type="style" name="Preference.CarUi.DialogSeekBarPreference.Seekbar"/>
+  <public type="style" name="Preference.CarUi.DialogSeekBarPreference.TopText"/>
+  <public type="style" name="Preference.CarUi.Divider"/>
   <public type="style" name="Preference.CarUi.DropDown"/>
   <public type="style" name="Preference.CarUi.Icon"/>
   <public type="style" name="Preference.CarUi.Information"/>
@@ -226,6 +216,8 @@
   <public type="style" name="PreferenceFragmentList.CarUi"/>
   <public type="style" name="TextAppearance.CarUi"/>
   <public type="style" name="TextAppearance.CarUi.AlertDialog.Subtitle"/>
+  <public type="style" name="TextAppearance.CarUi.Body1"/>
+  <public type="style" name="TextAppearance.CarUi.Body3"/>
   <public type="style" name="TextAppearance.CarUi.ListItem"/>
   <public type="style" name="TextAppearance.CarUi.ListItem.Body"/>
   <public type="style" name="TextAppearance.CarUi.ListItem.Header"/>
diff --git a/EncryptionRunner/Android.bp b/car-ui-lib/tests/captureviewhierarchy/Android.bp
similarity index 67%
rename from EncryptionRunner/Android.bp
rename to car-ui-lib/tests/captureviewhierarchy/Android.bp
index 54316ff..5681ce2 100644
--- a/EncryptionRunner/Android.bp
+++ b/car-ui-lib/tests/captureviewhierarchy/Android.bp
@@ -1,4 +1,5 @@
-// Copyright (C) 2019 The Android Open Source Project
+//
+// Copyright (C) 2020 The Android Open Source Project
 //
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.
@@ -13,19 +14,19 @@
 // limitations under the License.
 
 android_library {
-    name: "EncryptionRunner-lib",
-    min_sdk_version: "23",
-    product_variables: {
-        pdk: {
-            enabled: false,
-        },
-    },
-    static_libs: [
-      "ukey2",
-    ],
+    name: "car-ui-capture-view-hierarchy",
+	  sdk_version: "system_current",
+    min_sdk_version: "28",
     srcs: [
         "src/**/*.java",
+        "src/**/*.kt",
     ],
-    installable: true,
+    optimize: {
+        enabled: false,
+    },
+    static_libs: [
+    	"guava",
+    	"gson-prebuilt-jar",
+    	"androidx-constraintlayout_constraintlayout",
+    ],
 }
-
diff --git a/car-settings-lib/AndroidManifest.xml b/car-ui-lib/tests/captureviewhierarchy/AndroidManifest.xml
similarity index 75%
rename from car-settings-lib/AndroidManifest.xml
rename to car-ui-lib/tests/captureviewhierarchy/AndroidManifest.xml
index 5c2e6c9..fe3f22a 100644
--- a/car-settings-lib/AndroidManifest.xml
+++ b/car-ui-lib/tests/captureviewhierarchy/AndroidManifest.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-  Copyright (C) 2018 The Android Open Source Project
+  Copyright (C) 2020 The Android Open Source Project
 
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
@@ -16,7 +16,8 @@
   -->
 
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.car.settingslib">
-    <uses-sdk android:minSdkVersion="24"/>
-    <application />
-</manifest>
\ No newline at end of file
+          package="com.android.car.ui.tests.captureviewhierarchy">
+    <uses-sdk
+        android:minSdkVersion="28"
+        android:targetSdkVersion="28" />
+</manifest>
diff --git a/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/model/DisplayInfo.kt b/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/model/DisplayInfo.kt
new file mode 100644
index 0000000..358dc9f
--- /dev/null
+++ b/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/model/DisplayInfo.kt
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2020 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.car.ui.captureviewhierarchy.model
+
+/**
+ * Contains information used to draw selection boxes over each [ViewNode]. Created using
+ * [com.android.car.ui.captureviewhierarchy.parser.DisplayInfoFactory]
+ */
+data class DisplayInfo(
+    val willNotDraw: Boolean,
+    val isVisible: Boolean,
+    val left: Int,
+    val top: Int,
+    val width: Int,
+    val height: Int,
+    val scrollX: Int,
+    val scrollY: Int,
+    val clipChildren: Boolean,
+    val translateX: Float,
+    val translateY: Float,
+    val scaleX: Float,
+    val scaleY: Float,
+    val contentDesc: String?
+) {
+  fun getCopyAtOrigin() : DisplayInfo {
+    return this.copy(left = 0, top = 0)
+  }
+}
diff --git a/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/model/ViewNode.kt b/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/model/ViewNode.kt
new file mode 100644
index 0000000..e743c45
--- /dev/null
+++ b/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/model/ViewNode.kt
@@ -0,0 +1,128 @@
+/*
+ * Copyright (C) 2020 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.car.ui.captureviewhierarchy.model
+
+import androidx.constraintlayout.solver.widgets.Rectangle
+import com.google.common.collect.Lists
+import com.google.common.collect.Maps
+import java.util.Collections
+import java.util.Enumeration
+import java.util.LinkedList
+
+/**
+ * Represents an Android View object. Holds properties and a previewBox that contains the display
+ * area of the object on screen. Created by parsing view dumps using
+ * [com.android.car.ui.captureviewhierarchy.parser.ViewNodeParser].
+ */
+data class ViewNode internal constructor(private val parent: ViewNode?, val name: String, val hash: String){
+    // If the force state is set, the preview tries to render/hide the view
+    // (depending on the parent's state)
+    enum class ForcedState {
+        NONE,
+        VISIBLE,
+        INVISIBLE
+    }
+
+    val groupedProperties: MutableMap<String, MutableList<ViewProperty>> = Maps.newHashMap()
+    val namedProperties: MutableMap<String, ViewProperty> = Maps.newHashMap()
+    val properties: MutableList<ViewProperty> = Lists.newArrayList()
+    val children: MutableList<ViewNode> = Lists.newArrayList()
+    val previewBox: Rectangle = Rectangle()
+
+    // default in case properties are not available
+    var index: Int = 0
+    var id: String? = null
+
+    lateinit var displayInfo: DisplayInfo
+
+    var isParentVisible: Boolean = false
+        private set
+    var isDrawn: Boolean = false
+        private set
+    var forcedState: ForcedState = ForcedState.NONE
+
+    fun addPropertyToGroup(property: ViewProperty, groupKey: String) {
+        val propertiesList = groupedProperties.getOrDefault(
+          groupKey,
+            LinkedList()
+        )
+        propertiesList.add(property)
+        groupedProperties[groupKey] = propertiesList
+    }
+
+    fun getProperty(name: String, vararg altNames: String): ViewProperty? {
+        var property: ViewProperty? = namedProperties[name]
+        var i = 0
+        while (property == null && i < altNames.size) {
+            property = namedProperties[altNames[i]]
+            i++
+        }
+        return property
+    }
+
+    /** Recursively updates all the visibility parameter of the nodes.  */
+    fun updateNodeDrawn() {
+        updateNodeDrawn(isParentVisible)
+    }
+
+    fun updateNodeDrawn(parentVisible: Boolean) {
+        var parentVisible = parentVisible
+        isParentVisible = parentVisible
+        if (forcedState == ForcedState.NONE) {
+            isDrawn = !displayInfo.willNotDraw && parentVisible && displayInfo.isVisible
+            parentVisible = parentVisible && displayInfo.isVisible
+        } else {
+            isDrawn = forcedState == ForcedState.VISIBLE && parentVisible
+            parentVisible = isDrawn
+        }
+        for (child in children) {
+            child.updateNodeDrawn(parentVisible)
+            isDrawn = isDrawn or (child.isDrawn && child.displayInfo.isVisible)
+        }
+    }
+
+    override fun toString(): String {
+        return "$name@$hash"
+    }
+
+     fun getChildAt(childIndex: Int): ViewNode {
+        return children[childIndex]
+    }
+
+     fun getChildCount(): Int {
+        return children.size
+    }
+
+     fun getParent(): ViewNode? {
+        return parent
+    }
+
+     fun getIndex(node: ViewNode): Int {
+        return children.indexOf(node as ViewNode)
+    }
+
+     fun getAllowsChildren(): Boolean {
+        return true
+    }
+
+     fun isLeaf(): Boolean {
+        return getChildCount() == 0
+    }
+
+     fun children(): Enumeration<*> {
+        return Collections.enumeration(children)
+    }
+}
diff --git a/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/model/ViewProperty.kt b/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/model/ViewProperty.kt
new file mode 100644
index 0000000..45d2e72
--- /dev/null
+++ b/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/model/ViewProperty.kt
@@ -0,0 +1,51 @@
+/*
+ * Copyright (C) 2020 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.car.ui.captureviewhierarchy.model
+
+import com.google.common.collect.ComparisonChain
+import com.google.common.collect.Ordering
+
+/**
+ * Represents a property of a [com.android.car.ui.captureviewhierarchy.model.ViewNode].
+ */
+data class ViewProperty(val fullName: String, val name: String, val category: String?,
+                        val value: String, val valueObject: ViewNode?) :
+    Comparable<ViewProperty> {
+    override fun toString(): String {
+        return fullName + '=' + value
+    }
+
+    override fun compareTo(other: ViewProperty): Int {
+        return ComparisonChain.start()
+            .compare(category, other.category, CATEGORY_COMPARATOR)
+            .compare(name, other.name)
+            .result()
+    }
+
+    override fun equals(other: Any?): Boolean {
+        if (other !is ViewProperty) {
+            return false
+        }
+
+        val other = other as ViewProperty?
+        return !(category != other!!.category || name != other.name)
+    }
+
+    companion object {
+        private val CATEGORY_COMPARATOR =
+            Ordering.natural<Comparable<in String>>().nullsFirst<String>()
+    }
+}
diff --git a/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/parser/DisplayInfoFactory.kt b/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/parser/DisplayInfoFactory.kt
new file mode 100644
index 0000000..8dc6228
--- /dev/null
+++ b/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/parser/DisplayInfoFactory.kt
@@ -0,0 +1,122 @@
+/*
+ * Copyright (C) 2020 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.car.ui.captureviewhierarchy.parser
+
+import com.android.car.ui.captureviewhierarchy.model.DisplayInfo
+import com.android.car.ui.captureviewhierarchy.model.ViewNode
+import com.android.car.ui.captureviewhierarchy.model.ViewProperty
+
+object DisplayInfoFactory {
+    fun createDisplayInfoFromNode(node: ViewNode): DisplayInfo {
+        val left = getInt(node.getProperty("mLeft", "layout:mLeft", "left"), 0)
+        val top = getInt(node.getProperty("mTop", "layout:mTop", "top"), 0)
+        val width = getInt(node.getProperty("getWidth()", "layout:getWidth()", "width"), 10)
+        val height = getInt(node.getProperty("getHeight()", "layout:getHeight()", "height"), 10)
+        val scrollX = getInt(node.getProperty("mScrollX", "scrolling:mScrollX", "scrollX"), 0)
+        val scrollY = getInt(node.getProperty("mScrollY", "scrolling:mScrollY", "scrollY"), 0)
+
+        val willNotDraw =
+            getBoolean(node.getProperty("willNotDraw()", "drawing:willNotDraw()", "willNotDraw"), false)
+        val clipChildren = getBoolean(
+            node.getProperty("getClipChildren()", "drawing:getClipChildren()", "clipChildren"), true
+        )
+
+        val translateX =
+            getFloat(node.getProperty("getTranslationX", "drawing:getTranslationX()", "translationX"), 0f)
+        val translateY =
+            getFloat(node.getProperty("getTranslationY", "drawing:getTranslationY()", "translationY"), 0f)
+        val scaleX = getFloat(node.getProperty("getScaleX()", "drawing:getScaleX()", "scaleX"), 1f)
+        val scaleY = getFloat(node.getProperty("getScaleY()", "drawing:getScaleY()", "scaleY"), 1f)
+
+        var descProp = node.getProperty("accessibility:getContentDescription()", "contentDescription")
+        var contentDescription = getString(node.getProperty(
+          "accessibility:getContentDescription()",
+          "contentDescription"))
+          ?: getString(node.getProperty("text:mText"))
+
+        if (contentDescription == null) {
+            descProp = node.getProperty("text:mText")
+            contentDescription = if (descProp != null && descProp.value != "null")
+                descProp.value
+            else
+                null
+        }
+
+        val visibility = node.getProperty("getVisibility()", "misc:getVisibility()", "visibility")
+        val isVisible = (visibility == null
+                || "0" == visibility.value
+                || "VISIBLE" == visibility.value)
+        return DisplayInfo(
+            willNotDraw,
+            isVisible,
+            left,
+            top,
+            width,
+            height,
+            scrollX,
+            scrollY,
+            clipChildren,
+            translateX,
+            translateY,
+            scaleX,
+            scaleY,
+            contentDescription
+        )
+    }
+
+    private fun getString(descProp: ViewProperty?): String?{
+        return if (descProp != null && descProp.value != "null")
+            descProp.value
+        else
+            null
+    }
+
+    private fun getBoolean(p: ViewProperty?, defaultValue: Boolean): Boolean {
+        if (p != null) {
+            return try {
+                java.lang.Boolean.parseBoolean(p.value)
+            } catch (e: NumberFormatException) {
+                defaultValue
+            }
+
+        }
+        return defaultValue
+    }
+
+    private fun getInt(p: ViewProperty?, defaultValue: Int): Int {
+        if (p != null) {
+            return try {
+                Integer.parseInt(p.value)
+            } catch (e: NumberFormatException) {
+                defaultValue
+            }
+
+        }
+        return defaultValue
+    }
+
+    private fun getFloat(p: ViewProperty?, defaultValue: Float): Float {
+        if (p != null) {
+            return try {
+                java.lang.Float.parseFloat(p.value)
+            } catch (e: NumberFormatException) {
+                defaultValue
+            }
+
+        }
+        return defaultValue
+    }
+}
diff --git a/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/parser/ViewNodeV2Decoder.kt b/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/parser/ViewNodeV2Decoder.kt
new file mode 100644
index 0000000..6e47ee1
--- /dev/null
+++ b/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/parser/ViewNodeV2Decoder.kt
@@ -0,0 +1,99 @@
+/*
+ * Copyright (C) 2020 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.car.ui.captureviewhierarchy.parser
+
+import java.nio.ByteBuffer
+import java.nio.charset.Charset
+import java.util.HashMap
+
+/**
+ * Decodes view hierarchy v2 protocol created by ViewHierarchyEncoder in Android framework.
+ */
+internal class ViewNodeV2Decoder(private val mBuf: ByteBuffer) {
+    // Prefixes for simple primitives. These match the JNI definitions.
+    private val SIG_BOOLEAN = 'Z'.toByte()
+    private val SIG_BYTE = 'B'.toByte()
+    private val SIG_SHORT = 'S'.toByte()
+    private val SIG_INT = 'I'.toByte()
+    private val SIG_LONG = 'J'.toByte()
+    private val SIG_FLOAT = 'F'.toByte()
+    private val SIG_DOUBLE = 'D'.toByte()
+
+    // Prefixes for some commonly used objects
+    private val SIG_STRING = 'R'.toByte()
+
+    private val SIG_MAP = 'M'.toByte() // a map with an short key
+    private val SIG_END_MAP: Short = 0
+
+    fun hasRemaining(): Boolean {
+        return mBuf.hasRemaining()
+    }
+
+    fun readObject(): Any {
+        val sig = mBuf.get()
+        return when (sig) {
+            SIG_BOOLEAN -> mBuf.get().toInt() != 0
+            SIG_BYTE -> mBuf.get()
+            SIG_SHORT -> mBuf.short
+            SIG_INT -> mBuf.int
+            SIG_LONG -> mBuf.long
+            SIG_FLOAT -> mBuf.float
+            SIG_DOUBLE -> mBuf.double
+            SIG_STRING -> readString()
+            SIG_MAP -> readMap()
+            else -> throw DecoderException(
+              sig,
+              mBuf.position() - 1
+            )
+        }
+    }
+
+    private fun readString(): String {
+        val len = mBuf.short.toInt()
+        val b = ByteArray(len)
+        mBuf.get(b, 0, len)
+        return String(b, Charset.forName("utf-8"))
+    }
+
+    private fun readMap(): Map<Short, Any> {
+        val m = HashMap<Short, Any>()
+
+        while (true) {
+            val o = readObject()
+            if (o !is Short) {
+                break
+            }
+
+            if (o == SIG_END_MAP) {
+                break
+            }
+
+            m[o] = readObject()
+        }
+
+        return m
+    }
+
+    class DecoderException : RuntimeException {
+        constructor(
+            seen: Byte,
+            pos: Int
+        ) : super(String.format("Unexpected byte %c seen at position %d", seen.toChar(), pos))
+
+        constructor(msg: String) : super(msg)
+    }
+}
diff --git a/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/parser/ViewNodeV2Parser.kt b/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/parser/ViewNodeV2Parser.kt
new file mode 100644
index 0000000..64b601d
--- /dev/null
+++ b/car-ui-lib/tests/captureviewhierarchy/src/com/android/car/ui/captureviewhierarchy/parser/ViewNodeV2Parser.kt
@@ -0,0 +1,188 @@
+/*
+ * Copyright (C) 2020 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.car.ui.captureviewhierarchy.parser
+
+import android.content.Context
+import com.android.car.ui.captureviewhierarchy.model.ViewNode
+import com.android.car.ui.captureviewhierarchy.model.ViewProperty
+import com.google.common.base.Verify.verify
+import com.google.common.collect.Lists
+import com.google.common.collect.Maps
+import java.nio.ByteBuffer
+import java.util.HashMap
+
+private const val META_KEY = "meta"
+private const val HASH_KEY = "$META_KEY:__hash__"
+private const val NAME_KEY = "$META_KEY:__name__"
+private const val CHILD_COUNT_KEY = "__childCount__"
+private const val CHILD_KEY = "__child__"
+private const val THEME = "theme"
+private const val ID = "id"
+
+/**
+ * Parses the ByteArray data of viewHierarchy generated by ViewHierarchyEncoder in Android
+ * framework.
+ */
+class ViewNodeV2Parser {
+    private var mPropertyKeysByName: Map<String, Short>? = null
+    private var mPropertyNamesByKey: Map<Short, Any>? = null
+    private val mViews: MutableList<Map<Short, Any>> = Lists.newArrayListWithExpectedSize(100)
+
+    fun parse(data: ByteArray, context: Context): ViewNode? {
+        val d = ViewNodeV2Decoder(ByteBuffer.wrap(data))
+        while (d.hasRemaining()) {
+            val o = d.readObject()
+            if (o is Map<*, *>) {
+                mViews.add(o as Map<Short, Any>)
+            }
+        }
+
+        if (mViews.isEmpty()) {
+            return null
+        }
+
+        // the last one is the property map
+        mPropertyNamesByKey = mViews.removeAt(mViews.size - 1)
+        mPropertyKeysByName = pivot(mPropertyNamesByKey!!)
+
+        val rootMap = mViews[0]
+        val root = createViewNode(rootMap)
+        root.updateNodeDrawn(true)
+        return root
+    }
+
+    private fun createViewNode(
+        propMap: Map<Short, Any>,
+        parent: ViewNode? = null
+    ): ViewNode {
+        // create ViewNode
+        val hashProperty = getProperty(propMap, HASH_KEY)
+        var hash = ""
+        if (hashProperty is Int) {
+            hash = Integer.toHexString(hashProperty)
+        }
+        return ViewNode(parent, getStringProperty(propMap, NAME_KEY), hash).apply {
+            loadProperties(this, propMap)
+            displayInfo = DisplayInfoFactory.createDisplayInfoFromNode(this)
+        }
+    }
+
+    private fun getProperty(props: Map<Short, Any>, key: String): Any? {
+        return props[mPropertyKeysByName!![key]]
+    }
+
+    private fun pivot(m: Map<Short, Any>): Map<String, Short> {
+        val r = HashMap<String, Short>(m.size)
+
+        for ((key, value) in m) {
+            r[value as String] = key
+        }
+
+        return r
+    }
+
+    private fun getPropertyKey(name: String): Short? {
+        return mPropertyKeysByName!![name]
+    }
+
+    private fun getPropertyName(key: Short): String? {
+        val v = mPropertyNamesByKey!![key]
+        return v as? String
+    }
+
+    private fun getStringProperty(view: Map<Short, Any>, key: String): String {
+        val v = view[getPropertyKey(key)]
+        if (v is String) {
+            return v
+        }
+        return ""
+    }
+
+    private fun getChildIndex(name: String): Int {
+        return name.substring(name.indexOf(CHILD_KEY) + CHILD_KEY.length).toInt()
+    }
+
+    private fun loadProperties(node: ViewNode, viewProperties: Map<Short, Any>) {
+        val namedProperties: MutableMap<String, ViewProperty> = Maps.newHashMap()
+        val properties: MutableList<ViewProperty> = Lists.newArrayList()
+        val childrenProps: MutableMap<String, Any> = Maps.newHashMap()
+        var vn: ViewNode? = null
+        for (p in viewProperties.entries) {
+            val fullName = getPropertyName(p.key)!!
+            val value = p.value
+            if(fullName.equals(THEME)) {
+                val valObj: Map<Short, Any> = p.value as Map<Short, Any>;
+                vn = createViewNode(valObj);
+            }
+            if (fullName.startsWith("$META_KEY:$CHILD_KEY")) {
+                childrenProps[fullName] = value
+            } else {
+                val property = parse(
+                    fullName,
+                    value.toString(),
+                    vn
+                )
+                properties.add(property)
+                namedProperties[property.name] = property
+            }
+        }
+
+        node.namedProperties.putAll(namedProperties)
+        node.properties.addAll(properties)
+        node.properties.map { node.addPropertyToGroup(it, getGroupKey(it)) }
+        node.namedProperties[ID]?.let {
+            node.id = it.value
+        }
+
+        // hide meta props
+        val metaProps = node.groupedProperties.remove(META_KEY)
+        addChildren(node, metaProps!!, childrenProps)
+    }
+
+    private fun parse(propertyFullName: String, value: String, valueObject: ViewNode?) : ViewProperty {
+        val parts = propertyFullName.split(":", limit = 2)
+        return ViewProperty(propertyFullName,
+          if (parts.size > 1) parts[1] else propertyFullName,
+          if (parts.size > 1) parts[0] else null,
+          value,
+          valueObject)
+    }
+
+    private fun getGroupKey(property: ViewProperty): String {
+        return property.category ?: if (property.fullName.endsWith("()")) {
+            "methods"
+        } else {
+            "properties"
+        }
+    }
+
+    private fun addChildren(
+        parent: ViewNode,
+        metaProps: MutableList<ViewProperty>,
+        childrenProps: Map<String, Any>
+    ) {
+        // no children if there is no matching prop
+        val childCountProp = metaProps.find { it.name == CHILD_COUNT_KEY } ?: return
+        val childCount = childCountProp.value.toInt()
+        val children = childrenProps.entries
+          .sortedBy { getChildIndex(it.key) }
+          .map { createViewNode(it.value as Map<Short, Any>, parent) }
+        verify(childCount == children.size,
+          "Expect view node $parent to have $childCount children but instead found ${children.size}")
+        parent.children.addAll(children)
+    }
+}
diff --git a/car-ui-lib/tests/paintbooth/Android.bp b/car-ui-lib/tests/paintbooth/Android.bp
new file mode 100644
index 0000000..e303d83
--- /dev/null
+++ b/car-ui-lib/tests/paintbooth/Android.bp
@@ -0,0 +1,56 @@
+//
+// Copyright (C) 2019 The Android Open Source Project
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+android_app {
+    name: "PaintBooth",
+
+    srcs: [
+    	"src/**/*.java",
+    	"src/**/*.kt",
+    ],
+
+    required: ["privapp_whitelist_com.android.car.ui.paintbooth"],
+
+    resource_dirs: ["res", "res-public"],
+
+    platform_apis: true,
+
+    certificate: "platform",
+
+    privileged: true,
+
+    static_libs: [
+        "car-ui-lib",
+        "android.car.userlib",
+		"guava",
+		"gson-prebuilt-jar",
+    ],
+
+    optimize: {
+        enabled: false,
+    },
+
+    dex_preopt: {
+        enabled: false,
+    },
+
+    product_variables: {
+        pdk: {
+            enabled: false,
+        },
+    },
+    export_package_resources: true,
+}
diff --git a/car-ui-lib/tests/paintbooth/Android.mk b/car-ui-lib/tests/paintbooth/Android.mk
deleted file mode 100644
index fca93f1..0000000
--- a/car-ui-lib/tests/paintbooth/Android.mk
+++ /dev/null
@@ -1,49 +0,0 @@
-#
-# Copyright (C) 2019 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-ifneq ($(TARGET_BUILD_PDK), true)
-
-LOCAL_PATH:= $(call my-dir)
-
-include $(CLEAR_VARS)
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_PACKAGE_NAME := PaintBooth
-
-LOCAL_PRIVATE_PLATFORM_APIS := true
-
-LOCAL_CERTIFICATE := platform
-
-LOCAL_MODULE_TAGS := optional
-
-LOCAL_STATIC_ANDROID_LIBRARIES := \
-        car-ui-lib
-
-LOCAL_STATIC_JAVA_LIBRARIES += \
-    android.car.userlib \
-
-LOCAL_USE_AAPT2 := true
-
-LOCAL_PROGUARD_ENABLED := disabled
-
-LOCAL_DEX_PREOPT := false
-
-include $(BUILD_PACKAGE)
-
-endif
diff --git a/car-ui-lib/tests/paintbooth/AndroidManifest-gradle.xml b/car-ui-lib/tests/paintbooth/AndroidManifest-gradle.xml
index 464e81a..ee0a328 100644
--- a/car-ui-lib/tests/paintbooth/AndroidManifest-gradle.xml
+++ b/car-ui-lib/tests/paintbooth/AndroidManifest-gradle.xml
@@ -40,10 +40,6 @@
         android:exported="false"
         android:parentActivityName=".MainActivity"/>
     <activity
-        android:name=".caruirecyclerview.CarUiListItemActivity"
-        android:exported="false"
-        android:parentActivityName=".MainActivity"/>
-    <activity
         android:name=".caruirecyclerview.GridCarUiRecyclerViewActivity"
         android:exported="false"
         android:parentActivityName=".MainActivity"/>
@@ -58,5 +54,32 @@
         android:theme="@style/Theme.CarUi.WithActionBar">
       <meta-data android:name="distractionOptimized" android:value="true"/>
     </activity>
+    <activity
+        android:name=".overlays.OverlayActivity"
+        android:exported="false"
+        android:parentActivityName=".MainActivity">
+      <meta-data android:name="distractionOptimized" android:value="true"/>
+    </activity>
+    <activity
+        android:name=".widgets.WidgetActivity"
+        android:exported="false"
+        android:parentActivityName=".MainActivity"/>
+    <activity
+        android:name=".caruirecyclerview.CarUiListItemActivity"
+        android:exported="false"
+        android:parentActivityName=".MainActivity"/>
+
+
+    <service
+        android:label="Current Activity Service"
+        android:name=".currentactivity.CurrentActivityService"
+        android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE">
+      <intent-filter>
+        <action android:name="android.accessibilityservice.AccessibilityService"/>
+      </intent-filter>
+      <meta-data
+          android:name="android.accessibilityservice"
+          android:resource="@xml/current_activity_service"/>
+    </service>
   </application>
 </manifest>
diff --git a/car-ui-lib/tests/paintbooth/AndroidManifest.xml b/car-ui-lib/tests/paintbooth/AndroidManifest.xml
index 2279415..2783a74 100644
--- a/car-ui-lib/tests/paintbooth/AndroidManifest.xml
+++ b/car-ui-lib/tests/paintbooth/AndroidManifest.xml
@@ -26,6 +26,12 @@
   <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL"/>
   <uses-permission android:name="android.permission.CHANGE_OVERLAY_PACKAGES"/>
   <uses-permission android:name="android.permission.MANAGE_USERS"/>
+  <!-- Required to use the TYPE_DISPLAY_OVERLAY layout param for the current activity overlay -->
+  <uses-permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW" />
+  <!-- Required for listening to android task stack changes -->
+  <uses-permission android:name="android.permission.MANAGE_ACTIVITY_STACKS" />
+  <uses-permission android:name="android.permission.REAL_GET_TASKS" />
+  <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
 
   <application
       android:icon="@drawable/ic_launcher"
@@ -77,5 +83,15 @@
         android:name=".caruirecyclerview.CarUiListItemActivity"
         android:exported="false"
         android:parentActivityName=".MainActivity"/>
+
+    <service
+        android:label="Current Activity Service"
+        android:exported="false"
+        android:name=".currentactivity.CurrentActivityService">
+      <intent-filter>
+        <action android:name="com.android.car.ui.paintbooth.StopService" />
+      </intent-filter>
+    </service>
+
   </application>
 </manifest>
diff --git a/car-ui-lib/tests/paintbooth/build.gradle b/car-ui-lib/tests/paintbooth/build.gradle
index 0ef3514..2891586 100644
--- a/car-ui-lib/tests/paintbooth/build.gradle
+++ b/car-ui-lib/tests/paintbooth/build.gradle
@@ -36,9 +36,12 @@
             manifest.srcFile 'AndroidManifest-gradle.xml'
             java {
                 srcDirs = ['src']
-                filter.excludes = ["com/android/car/ui/paintbooth/overlays/OverlayManagerImpl.java"]
+                filter.excludes = [
+                        "com/android/car/ui/paintbooth/overlays/OverlayManagerImpl.java",
+                        "com/android/car/ui/paintbooth/currentactivity/ActivityTaskManagerImpl.java",
+                ]
             }
-            res.srcDirs = ['res']
+            res.srcDirs = ['res', 'res-public']
         }
     }
 }
diff --git a/car-ui-lib/tests/paintbooth/res-public/values/public.xml b/car-ui-lib/tests/paintbooth/res-public/values/public.xml
new file mode 100644
index 0000000..5f00a8e
--- /dev/null
+++ b/car-ui-lib/tests/paintbooth/res-public/values/public.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+    <public type="color" name="dialog_activity_background_color" id="0x7f050040" />
+</resources>
\ No newline at end of file
diff --git a/car-ui-lib/tests/paintbooth/res/drawable/ic_settings_gear.xml b/car-ui-lib/tests/paintbooth/res/drawable/ic_settings_gear.xml
new file mode 100644
index 0000000..d1557f4
--- /dev/null
+++ b/car-ui-lib/tests/paintbooth/res/drawable/ic_settings_gear.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+    Copyright 2017 The Android Open Source Project
+
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+<vector
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="48dp"
+    android:height="48dp"
+    android:viewportHeight="48.0"
+    android:viewportWidth="48.0">
+    <path
+        android:fillColor="#fff"
+        android:pathData="M38.86,25.95c0.08,-0.64 0.14,-1.29 0.14,-1.95s-0.06,-1.31 -0.14,-1.95l4.23,-3.31c0.38,-0.3 0.49,-0.84 0.24,-1.28l-4,-6.93c-0.25,-0.43 -0.77,-0.61 -1.22,-0.43l-4.98,2.01c-1.03,-0.79 -2.16,-1.46 -3.38,-1.97L29,4.84c-0.09,-0.47 -0.5,-0.84 -1,-0.84h-8c-0.5,0 -0.91,0.37 -0.99,0.84l-0.75,5.3c-1.22,0.51 -2.35,1.17 -3.38,1.97L9.9,10.1c-0.45,-0.17 -0.97,0 -1.22,0.43l-4,6.93c-0.25,0.43 -0.14,0.97 0.24,1.28l4.22,3.31C9.06,22.69 9,23.34 9,24s0.06,1.31 0.14,1.95l-4.22,3.31c-0.38,0.3 -0.49,0.84 -0.24,1.28l4,6.93c0.25,0.43 0.77,0.61 1.22,0.43l4.98,-2.01c1.03,0.79 2.16,1.46 3.38,1.97l0.75,5.3c0.08,0.47 0.49,0.84 0.99,0.84h8c0.5,0 0.91,-0.37 0.99,-0.84l0.75,-5.3c1.22,-0.51 2.35,-1.17 3.38,-1.97l4.98,2.01c0.45,0.17 0.97,0 1.22,-0.43l4,-6.93c0.25,-0.43 0.14,-0.97 -0.24,-1.28l-4.22,-3.31zM24,31c-3.87,0 -7,-3.13 -7,-7s3.13,-7 7,-7 7,3.13 7,7 -3.13,7 -7,7z"/>
+</vector>
diff --git a/car-settings-lib/tests/robotests/AndroidManifest.xml b/car-ui-lib/tests/paintbooth/res/layout/details_preference_widget.xml
similarity index 67%
rename from car-settings-lib/tests/robotests/AndroidManifest.xml
rename to car-ui-lib/tests/paintbooth/res/layout/details_preference_widget.xml
index dd1a985..4f9fc41 100644
--- a/car-settings-lib/tests/robotests/AndroidManifest.xml
+++ b/car-ui-lib/tests/paintbooth/res/layout/details_preference_widget.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-    Copyright (C) 2018 Google Inc.
+    Copyright 2018 The Android Open Source Project
 
     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
@@ -15,7 +15,9 @@
     limitations under the License.
 -->
 
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.car.settingslib.robotests">
-
-</manifest>
+<ImageView
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:layout_gravity="center"
+    android:src="@drawable/ic_settings_gear"/>
diff --git a/car-ui-lib/tests/paintbooth/res/layout/list_item_switch.xml b/car-ui-lib/tests/paintbooth/res/layout/list_item_switch.xml
new file mode 100644
index 0000000..499f3e4
--- /dev/null
+++ b/car-ui-lib/tests/paintbooth/res/layout/list_item_switch.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright 2019 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content">
+
+  <Switch
+      android:id="@+id/button"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_centerHorizontal="true"
+      android:textSize="25sp"
+      android:layout_marginTop="20dp"/>
+</RelativeLayout>
diff --git a/car-ui-lib/tests/paintbooth/res/values/overlayable.xml b/car-ui-lib/tests/paintbooth/res/values/overlayable.xml
new file mode 100644
index 0000000..7e62819
--- /dev/null
+++ b/car-ui-lib/tests/paintbooth/res/values/overlayable.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2018 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<resources>
+    <overlayable name="MyOverlayableResources">
+        <policy type="public">
+            <item type="drawable" name="ic_launcher" />
+            <item type="string" name="app_name" />
+            <item type="layout" name="main_activity" />
+            <item type="id" name="home" />
+            <item type="id" name="toolbar" />
+            <item type="id" name="activities" />
+            <item type="attr" name="title" />
+            <item type="attr" name="logo" />
+            <item type="attr" name="layout_constraintTop_toTopOf" />
+            <item type="attr" name="layout_constraintTop_toBottomOf" />
+            <item type="attr" name="layout_constraintLeft_toLeftOf" />
+            <item type="attr" name="layout_constraintBottom_toTopOf" />
+            <item type="attr" name="layout_constraintBottom_toBottomOf" />
+            <item type="attr" name="layout_constraintRight_toRightOf" />
+            <item type="attr" name="numOfColumns" />
+            <item type="attr" name="layoutStyle" />
+        </policy>
+    </overlayable>
+</resources>
\ No newline at end of file
diff --git a/car-ui-lib/tests/paintbooth/res/values/strings.xml b/car-ui-lib/tests/paintbooth/res/values/strings.xml
index cd45f77..fdceeaf 100644
--- a/car-ui-lib/tests/paintbooth/res/values/strings.xml
+++ b/car-ui-lib/tests/paintbooth/res/values/strings.xml
@@ -18,6 +18,9 @@
   <!-- Application name [CHAR LIMIT=30] -->
   <string name="app_name" translatable="false">Paint Booth (Gerrit)</string>
 
+  <!-- Description of the CurrentActivityService. [CHAR_LIMIT=200] -->
+  <string name="current_activity_service_description">Shows the current activity</string>
+
   <!-- Strings for Preference Samples -->
   <eat-comment/>
 
@@ -56,6 +59,11 @@
   <!-- Category title for preferences with widgets [CHAR_LIMIT=12]-->
   <string name="widgets">Widgets</string>
 
+  <!-- Title of a two action preference [CHAR_LIMIT=31]-->
+  <string name="title_twoaction_preference">TwoAction preference</string>
+  <!-- Summary of a two action preference [CHAR_LIMIT=70]-->
+  <string name="summary_twoaction_preference">A widget should be visible on the right</string>
+
   <!-- Title of a checkbox preference [CHAR_LIMIT=31]-->
   <string name="title_checkbox_preference">Checkbox preference</string>
   <!-- Summary of a checkbox preference [CHAR_LIMIT=78]-->
@@ -71,6 +79,8 @@
 
   <!-- Title of a seekbar preference [CHAR_LIMIT=30]-->
   <string name="title_seekbar_preference">Seekbar preference</string>
+  <!-- Summary of an seekbar preference [CHAR_LIMIT=32]-->
+  <string name="summary_seekbar_preference">Seekbar summary</string>
 
   <!--This section is for preferences that launch a dialog to edit the preference -->
   <eat-comment/>
@@ -257,5 +267,5 @@
   <string name="widget_checkbox_text">I\'m a check box</string>
   <!-- Text for switch [CHAR_LIMIT=25]-->
   <string name="widget_switch_text">I\'m a switch</string>
-  
+
 </resources>
diff --git a/car-ui-lib/tests/paintbooth/res/xml/current_activity_service.xml b/car-ui-lib/tests/paintbooth/res/xml/current_activity_service.xml
new file mode 100644
index 0000000..f6143cd
--- /dev/null
+++ b/car-ui-lib/tests/paintbooth/res/xml/current_activity_service.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<accessibility-service
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:accessibilityEventTypes="typeWindowStateChanged"
+    android:accessibilityFeedbackType="feedbackGeneric"
+    android:accessibilityFlags="flagIncludeNotImportantViews"
+    android:description="@string/current_activity_service_description"/>
diff --git a/car-ui-lib/tests/paintbooth/res/xml/preference_samples.xml b/car-ui-lib/tests/paintbooth/res/xml/preference_samples.xml
index b49dd0d..0a0836a 100644
--- a/car-ui-lib/tests/paintbooth/res/xml/preference_samples.xml
+++ b/car-ui-lib/tests/paintbooth/res/xml/preference_samples.xml
@@ -19,132 +19,155 @@
     xmlns:app="http://schemas.android.com/apk/res-auto"
     app:title="@string/preferences_screen_title">
 
-  <PreferenceCategory
-      android:title="@string/basic_preferences">
+    <PreferenceCategory
+        android:title="@string/basic_preferences">
 
-    <Preference
-        android:key="preference"
-        android:title="@string/title_basic_preference"
-        android:summary="@string/summary_basic_preference"/>
+        <Preference
+            android:key="preference"
+            android:summary="@string/summary_basic_preference"
+            android:title="@string/title_basic_preference"/>
 
-    <Preference
-        android:key="stylized"
-        android:title="@string/title_stylish_preference"
-        android:summary="@string/summary_stylish_preference"/>
+        <Preference
+            android:key="preference_disabled_without_ripple"
+            android:summary="Without ripple"
+            android:title="@string/title_basic_preference"/>
 
-    <Preference
-        android:key="icon"
-        android:title="@string/title_icon_preference"
-        android:summary="@string/summary_icon_preference"
-        android:icon="@drawable/ic_settings_wifi"/>
+        <Preference
+            android:key="preference_disabled_with_ripple"
+            android:summary="With ripple"
+            android:title="@string/title_basic_preference"/>
 
-    <Preference
-        android:key="single_line_title"
-        android:title="@string/title_single_line_title_preference"
-        android:summary="@string/summary_single_line_title_preference"
-        app:singleLineTitle="true"/>
+        <Preference
+            android:key="stylized"
+            android:dependency="preference"
+            android:summary="@string/summary_stylish_preference"
+            android:title="@string/title_stylish_preference"/>
 
-    <Preference
-        android:key="single_line_no_summary"
-        android:title="@string/title_single_line_no_summary"
-        app:singleLineTitle="true"/>
-  </PreferenceCategory>
+        <Preference
+            android:icon="@drawable/ic_settings_wifi"
+            android:key="icon"
+            android:summary="@string/summary_icon_preference"
+            android:title="@string/title_icon_preference"/>
 
-  <PreferenceCategory
-      android:title="@string/widgets">
+        <Preference
+            android:key="single_line_title"
+            android:summary="@string/summary_single_line_title_preference"
+            android:title="@string/title_single_line_title_preference"
+            app:singleLineTitle="true"/>
 
-    <CheckBoxPreference
-        android:key="checkbox"
-        android:title="@string/title_checkbox_preference"
-        android:summary="@string/summary_checkbox_preference"/>
+        <Preference
+            android:key="single_line_no_summary"
+            android:title="@string/title_single_line_no_summary"
+            app:singleLineTitle="true"/>
+    </PreferenceCategory>
 
-    <SwitchPreference
-        android:key="switch"
-        android:title="@string/title_switch_preference"
-        android:summary="@string/summary_switch_preference"/>
+    <PreferenceCategory
+        android:title="@string/widgets">
 
-    <DropDownPreference
-        android:key="dropdown"
-        android:title="@string/title_dropdown_preference"
-        android:entries="@array/entries"
-        app:useSimpleSummaryProvider="true"
-        android:entryValues="@array/entry_values"/>
+        <CheckBoxPreference
+            android:key="checkbox"
+            android:summary="@string/summary_checkbox_preference"
+            android:title="@string/title_checkbox_preference"/>
 
-    <SeekBarPreference
-        android:key="seekbar"
-        android:title="@string/title_seekbar_preference"
-        android:max="10"
-        android:defaultValue="5"/>
-  </PreferenceCategory>
+        <DropDownPreference
+            android:entries="@array/entries"
+            android:entryValues="@array/entry_values"
+            android:key="dropdown"
+            android:title="@string/title_dropdown_preference"
+            app:useSimpleSummaryProvider="true"/>
 
-  <PreferenceCategory
-      android:title="@string/dialogs">
+        <SeekBarPreference
+            android:defaultValue="5"
+            android:key="seekbar"
+            android:max="10"
+            android:title="@string/title_seekbar_preference"/>
 
-    <EditTextPreference
-        android:key="edittext"
-        android:title="@string/title_edittext_preference"
-        app:useSimpleSummaryProvider="true"
-        android:dialogTitle="@string/dialog_title_edittext_preference"/>
+        <SwitchPreference
+            android:key="switch"
+            android:summary="@string/summary_switch_preference"
+            android:title="@string/title_switch_preference"/>
 
-    <ListPreference
-        android:key="list"
-        android:title="@string/title_list_preference"
-        app:useSimpleSummaryProvider="true"
-        android:entries="@array/entries"
-        android:entryValues="@array/entry_values"
-        android:dialogTitle="@string/dialog_title_list_preference"/>
+        <com.android.car.ui.preference.CarUiTwoActionPreference
+            android:key="twoaction"
+            android:summary="@string/summary_twoaction_preference"
+            android:title="@string/title_twoaction_preference"
+            android:widgetLayout="@layout/details_preference_widget"/>
+    </PreferenceCategory>
 
-    <MultiSelectListPreference
-        android:key="multi_select_list"
-        android:title="@string/title_multi_list_preference"
-        android:summary="@string/summary_multi_list_preference"
-        android:entries="@array/entries"
-        android:entryValues="@array/entry_values"
-        android:dialogTitle="@string/dialog_title_multi_list_preference"/>
-  </PreferenceCategory>
+    <PreferenceCategory
+        android:title="@string/dialogs">
 
-  <PreferenceCategory
-      android:key="@string/advanced_preference"
-      android:title="@string/advanced_attributes"
-      app:initialExpandedChildrenCount="1">
+        <EditTextPreference
+            android:dialogTitle="@string/dialog_title_edittext_preference"
+            android:key="edittext"
+            android:title="@string/title_edittext_preference"
+            app:useSimpleSummaryProvider="true"/>
 
-    <Preference
-        android:key="expandable"
-        android:title="@string/title_expandable_preference"
-        android:summary="@string/summary_expandable_preference"/>
+        <ListPreference
+            android:dialogTitle="@string/dialog_title_list_preference"
+            android:entries="@array/entries"
+            android:entryValues="@array/entry_values"
+            android:key="list"
+            android:title="@string/title_list_preference"
+            app:useSimpleSummaryProvider="true"/>
 
-    <Preference
-        android:title="@string/title_intent_preference"
-        android:summary="@string/summary_intent_preference">
+        <MultiSelectListPreference
+            android:dialogTitle="@string/dialog_title_multi_list_preference"
+            android:entries="@array/entries"
+            android:entryValues="@array/entry_values"
+            android:key="multi_select_list"
+            android:summary="@string/summary_multi_list_preference"
+            android:title="@string/title_multi_list_preference"/>
 
-      <intent android:action="android.intent.action.VIEW"
-          android:data="http://www.android.com"/>
+        <com.android.car.ui.preference.CarUiSeekBarDialogPreference
+            android:dialogTitle="Seekbar Dialog"
+            android:key="seekbarDialog"
+            android:summary="@string/summary_seekbar_preference"
+            android:title="@string/title_seekbar_preference"/>
+    </PreferenceCategory>
 
-    </Preference>
+    <PreferenceCategory
+        android:key="@string/advanced_preference"
+        android:title="@string/advanced_attributes"
+        app:initialExpandedChildrenCount="1">
 
-    <SwitchPreference
-        android:key="parent"
-        android:title="@string/title_parent_preference"
-        android:summary="@string/summary_parent_preference"/>
+        <Preference
+            android:key="expandable"
+            android:summary="@string/summary_expandable_preference"
+            android:title="@string/title_expandable_preference"/>
 
-    <SwitchPreference
-        android:key="child"
-        android:dependency="parent"
-        android:title="@string/title_child_preference"
-        android:summary="@string/summary_child_preference"/>
+        <Preference
+            android:summary="@string/summary_intent_preference"
+            android:title="@string/title_intent_preference">
 
-    <SwitchPreference
-        android:key="toggle_summary"
-        android:title="@string/title_toggle_summary_preference"
-        android:summaryOn="@string/summary_on_toggle_summary_preference"
-        android:summaryOff="@string/summary_off_toggle_summary_preference"/>
+            <intent android:action="android.intent.action.VIEW"
+                    android:data="http://www.android.com"/>
 
-    <Preference
-        android:key="copyable"
-        android:title="@string/title_copyable_preference"
-        android:summary="@string/summary_copyable_preference"
-        android:selectable="false"
-        app:enableCopying="true"/>
-  </PreferenceCategory>
+        </Preference>
+
+        <Preference
+            android:key="copyable"
+            android:selectable="false"
+            android:summary="@string/summary_copyable_preference"
+            android:title="@string/title_copyable_preference"
+            app:enableCopying="true"/>
+
+        <SwitchPreference
+            android:dependency="parent"
+            android:key="child"
+            android:summary="@string/summary_child_preference"
+            android:title="@string/title_child_preference"/>
+
+        <SwitchPreference
+            android:key="toggle_summary"
+            android:summaryOff="@string/summary_off_toggle_summary_preference"
+            android:summaryOn="@string/summary_on_toggle_summary_preference"
+            android:title="@string/title_toggle_summary_preference"/>
+
+        <SwitchPreference
+            android:key="parent"
+            android:summary="@string/summary_parent_preference"
+            android:title="@string/title_parent_preference"/>
+    </PreferenceCategory>
 
 </PreferenceScreen>
\ No newline at end of file
diff --git a/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/MainActivity.java b/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/MainActivity.java
index f05a827..31c8f94 100644
--- a/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/MainActivity.java
+++ b/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/MainActivity.java
@@ -17,6 +17,8 @@
 package com.android.car.ui.paintbooth;
 
 import android.app.Activity;
+import android.app.ActivityManager;
+import android.content.Context;
 import android.content.Intent;
 import android.os.Bundle;
 import android.util.Log;
@@ -25,6 +27,7 @@
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.Button;
+import android.widget.Switch;
 import android.widget.Toast;
 
 import androidx.annotation.NonNull;
@@ -33,6 +36,7 @@
 import com.android.car.ui.paintbooth.caruirecyclerview.CarUiListItemActivity;
 import com.android.car.ui.paintbooth.caruirecyclerview.CarUiRecyclerViewActivity;
 import com.android.car.ui.paintbooth.caruirecyclerview.GridCarUiRecyclerViewActivity;
+import com.android.car.ui.paintbooth.currentactivity.CurrentActivityService;
 import com.android.car.ui.paintbooth.dialogs.DialogsActivity;
 import com.android.car.ui.paintbooth.overlays.OverlayActivity;
 import com.android.car.ui.paintbooth.preferences.PreferenceActivity;
@@ -63,6 +67,16 @@
             Pair.create("ListItem sample", CarUiListItemActivity.class)
     );
 
+    private final List<Pair<String, View.OnClickListener>> mSwitches = Arrays.asList(
+            Pair.create("Show foreground activities", v -> {
+                Intent intent = new Intent(this, CurrentActivityService.class);
+                if (isCurrentActivityServiceRunning()) {
+                    intent.setAction(CurrentActivityService.STOP_SERVICE);
+                }
+                startForegroundService(intent);
+            })
+    );
+
     private class ViewHolder extends RecyclerView.ViewHolder {
         private Button mButton;
 
@@ -71,36 +85,60 @@
             mButton = itemView.findViewById(R.id.button);
         }
 
-        void update(String title, Class<? extends Activity> activityClass) {
-            mButton.setText(title);
-            mButton.setOnClickListener(e -> {
-                Intent intent = new Intent(mButton.getContext(), activityClass);
-                startActivity(intent);
-            });
+        void bind(String text, View.OnClickListener listener) {
+            mButton.setText(text);
+            mButton.setOnClickListener(listener);
+
+            if (mButton instanceof Switch) {
+                ((Switch) mButton).setChecked(isCurrentActivityServiceRunning());
+            }
         }
     }
 
     private final RecyclerView.Adapter<ViewHolder> mAdapter =
             new RecyclerView.Adapter<ViewHolder>() {
-        @NonNull
-        @Override
-        public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
-            View item = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_item, parent,
-                    false);
-            return new ViewHolder(item);
-        }
 
-        @Override
-        public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
-            Pair<String, Class<? extends Activity>> item = mActivities.get(position);
-            holder.update(item.first, item.second);
-        }
+                private static final int TYPE_SWITCH = 0;
+                private static final int TYPE_ACTIVITY = 1;
 
-        @Override
-        public int getItemCount() {
-            return mActivities.size();
-        }
-    };
+                @NonNull
+                @Override
+                public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
+                    View item = LayoutInflater.from(parent.getContext()).inflate(
+                            viewType == TYPE_SWITCH ? R.layout.list_item_switch
+                                    : R.layout.list_item,
+                            parent, false);
+                    return new ViewHolder(item);
+                }
+
+                @Override
+                public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
+                    if (getItemViewType(position) == TYPE_SWITCH) {
+                        Pair<String, View.OnClickListener> item = mSwitches.get(position);
+                        holder.bind(item.first, item.second);
+                    } else {
+                        Pair<String, Class<? extends Activity>> item =
+                                mActivities.get(position - mSwitches.size());
+                        holder.bind(item.first, v -> {
+                            Intent intent = new Intent(holder.itemView.getContext(), item.second);
+                            startActivity(intent);
+                        });
+                    }
+                }
+
+                @Override
+                public int getItemCount() {
+                    return mSwitches.size() + mActivities.size();
+                }
+
+                @Override
+                public int getItemViewType(int position) {
+                    if (position < mSwitches.size()) {
+                        return TYPE_SWITCH;
+                    }
+                    return TYPE_ACTIVITY;
+                }
+            };
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -189,4 +227,15 @@
             // LeakCanary is not used in this build, do nothing.
         }
     }
+
+    private boolean isCurrentActivityServiceRunning() {
+        ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
+        for (ActivityManager.RunningServiceInfo service : manager.getRunningServices(
+                Integer.MAX_VALUE)) {
+            if (CurrentActivityService.class.getName().equals(service.service.getClassName())) {
+                return true;
+            }
+        }
+        return false;
+    }
 }
diff --git a/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/currentactivity/ActivityTaskManager.java b/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/currentactivity/ActivityTaskManager.java
new file mode 100644
index 0000000..ec26665
--- /dev/null
+++ b/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/currentactivity/ActivityTaskManager.java
@@ -0,0 +1,84 @@
+/*
+ * Copyright (C) 2019 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.car.ui.paintbooth.currentactivity;
+
+import android.app.ActivityManager;
+import android.app.ActivityManager.RunningTaskInfo;
+import android.content.ComponentName;
+import android.os.RemoteException;
+import android.util.Log;
+
+import androidx.annotation.NonNull;
+
+import java.lang.reflect.Constructor;
+import java.lang.reflect.InvocationTargetException;
+import java.util.List;
+
+/**
+ * Interface for wrappers around {@link android.app.ActivityTaskManager} so that we can exclude them
+ * from non-system builds like gradle and google3.
+ */
+interface ActivityTaskManager {
+
+    interface TaskStackListener {
+        void onTaskCreated(int taskId, ComponentName componentName);
+
+        void onTaskRemoved(int taskId);
+
+        void onTaskDescriptionChanged(ActivityManager.RunningTaskInfo taskInfo);
+
+        void onTaskMovedToFront(ActivityManager.RunningTaskInfo taskInfo);
+    }
+
+    List<RunningTaskInfo> getTasks(int maxNum) throws RemoteException;
+
+    void registerTaskStackListener(TaskStackListener listener) throws RemoteException;
+
+    void unregisterTaskStackListener(TaskStackListener listener) throws RemoteException;
+
+    final class ActivityTaskManagerStub implements ActivityTaskManager {
+        @Override
+        public List<RunningTaskInfo> getTasks(int num) throws RemoteException {
+            throw new RemoteException("ActivityTaskManager is not available");
+        }
+
+        @Override
+        public void registerTaskStackListener(TaskStackListener listener) throws RemoteException {
+            throw new RemoteException("ActivityTaskManager is not available");
+        }
+
+        @Override
+        public void unregisterTaskStackListener(TaskStackListener listener) throws RemoteException {
+            throw new RemoteException("ActivityTaskManager is not available");
+        }
+    }
+
+    @NonNull
+    static ActivityTaskManager getService() {
+        try {
+            Class clazz = Class.forName(
+                    "com.android.car.ui.paintbooth.currentactivity.ActivityTaskManagerImpl");
+            Constructor constructor = clazz.getDeclaredConstructor();
+            constructor.setAccessible(true);
+            return (ActivityTaskManager) constructor.newInstance();
+        } catch (ClassNotFoundException | IllegalAccessException | InstantiationException
+                | NoSuchMethodException | InvocationTargetException e) {
+            Log.e("paintbooth", "ActivityTaskManager is not available", e);
+            return new ActivityTaskManagerStub();
+        }
+    }
+}
diff --git a/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/currentactivity/ActivityTaskManagerImpl.java b/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/currentactivity/ActivityTaskManagerImpl.java
new file mode 100644
index 0000000..8adbdad
--- /dev/null
+++ b/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/currentactivity/ActivityTaskManagerImpl.java
@@ -0,0 +1,77 @@
+/*
+ * Copyright (C) 2019 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.car.ui.paintbooth.currentactivity;
+
+import android.app.ActivityManager;
+import android.app.ActivityManager.RunningTaskInfo;
+import android.app.IActivityTaskManager;
+import android.content.ComponentName;
+import android.os.RemoteException;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * This class is a wrapper around {@link android.app.ActivityTaskManager} that is excluded from
+ * the gradle and google3 builds.
+ */
+class ActivityTaskManagerImpl implements ActivityTaskManager {
+
+    IActivityTaskManager mActivityTaskManager = android.app.ActivityTaskManager.getService();
+
+    Map<TaskStackListener, android.app.TaskStackListener> mListenerMapping = new HashMap<>();
+
+    @Override
+    public List<RunningTaskInfo> getTasks(int maxNum) throws RemoteException {
+        return mActivityTaskManager.getTasks(maxNum);
+    }
+
+    @Override
+    public void registerTaskStackListener(TaskStackListener listener) throws RemoteException {
+        mListenerMapping.put(listener, new android.app.TaskStackListener() {
+            @Override
+            public void onTaskCreated(int taskId, ComponentName componentName) {
+                listener.onTaskCreated(taskId, componentName);
+            }
+
+            @Override
+            public void onTaskRemoved(int taskId) {
+                listener.onTaskRemoved(taskId);
+            }
+
+            @Override
+            public void onTaskDescriptionChanged(ActivityManager.RunningTaskInfo taskInfo) {
+                listener.onTaskDescriptionChanged(taskInfo);
+            }
+
+            @Override
+            public void onTaskMovedToFront(ActivityManager.RunningTaskInfo taskInfo) {
+                listener.onTaskMovedToFront(taskInfo);
+            }
+        });
+
+        mActivityTaskManager.registerTaskStackListener(mListenerMapping.get(listener));
+    }
+
+    @Override
+    public void unregisterTaskStackListener(TaskStackListener listener) throws RemoteException {
+        mActivityTaskManager.unregisterTaskStackListener(mListenerMapping.get(listener));
+        mListenerMapping.remove(listener);
+    }
+
+}
diff --git a/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/currentactivity/CurrentActivityService.java b/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/currentactivity/CurrentActivityService.java
new file mode 100644
index 0000000..aa26a92
--- /dev/null
+++ b/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/currentactivity/CurrentActivityService.java
@@ -0,0 +1,231 @@
+/*
+ * Copyright (C) 2019 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.car.ui.paintbooth.currentactivity;
+
+import android.app.ActivityManager;
+import android.app.Notification;
+import android.app.NotificationChannel;
+import android.app.NotificationManager;
+import android.app.PendingIntent;
+import android.app.Service;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.content.pm.PackageManager;
+import android.graphics.Color;
+import android.graphics.PixelFormat;
+import android.os.Handler;
+import android.os.IBinder;
+import android.os.Looper;
+import android.os.RemoteException;
+import android.view.Gravity;
+import android.view.MotionEvent;
+import android.view.View;
+import android.view.WindowManager;
+import android.widget.TextView;
+import android.widget.Toast;
+
+import androidx.core.app.NotificationCompat;
+import androidx.core.content.ContextCompat;
+
+import com.android.car.ui.paintbooth.R;
+import com.android.car.ui.paintbooth.currentactivity.ActivityTaskManager.TaskStackListener;
+
+import java.util.List;
+
+/**
+ * To start the service:
+ * adb shell am start-foreground-service -n com.android.car.ui.paintbooth/.CurrentActivityService
+ *
+ * To stop the service:
+ * adb shell am start-foreground-service -n com.android.car.ui.paintbooth/.CurrentActivityService -a
+ * com.android.car.ui.paintbooth.StopService
+ */
+public class CurrentActivityService extends Service {
+
+    public static final String STOP_SERVICE = "com.android.car.ui.paintbooth.StopService";
+    private static final int FOREGROUND_SERVICE_ID = 111;
+
+    private WindowManager mWindowManager;
+    private TextView mTextView;
+    private Handler mHandler;
+
+    @Override
+    public void onCreate() {
+        mHandler = new Handler(Looper.getMainLooper());
+
+        if (ContextCompat.checkSelfPermission(this, "android.permission.REAL_GET_TASKS")
+                != PackageManager.PERMISSION_GRANTED) {
+            Toast.makeText(this, "android.permission.REAL_GET_TASKS is not granted!",
+                    Toast.LENGTH_LONG).show();
+        }
+
+        Intent notificationIntent = new Intent(this, CurrentActivityService.class);
+
+        PendingIntent pendingIntent = PendingIntent.getActivity(this, 0,
+                notificationIntent, 0);
+
+        NotificationChannel channel = new NotificationChannel("CurrentActivityService",
+                "Show current activity",
+                NotificationManager.IMPORTANCE_DEFAULT);
+        NotificationManager notificationManager =
+                (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+        notificationManager.createNotificationChannel(channel);
+
+        Notification notification =
+                new NotificationCompat.Builder(this, "CurrentActivityService")
+                        .setSmallIcon(R.drawable.ic_launcher)
+                        .setContentTitle("CurrentActivityService")
+                        .setContentText("Show current activity")
+                        .setContentIntent(pendingIntent).build();
+
+        startForeground(FOREGROUND_SERVICE_ID, notification);
+
+        try {
+            ActivityTaskManager.getService().registerTaskStackListener(mTaskStackListener);
+        } catch (RemoteException e) {
+            Toast.makeText(this, e.getLocalizedMessage(), Toast.LENGTH_LONG).show();
+        }
+
+        mWindowManager = (WindowManager) getSystemService(WINDOW_SERVICE);
+        final WindowManager.LayoutParams layoutParams = new WindowManager.LayoutParams(
+                WindowManager.LayoutParams.WRAP_CONTENT,
+                WindowManager.LayoutParams.WRAP_CONTENT,
+                WindowManager.LayoutParams.TYPE_SYSTEM_ALERT,
+                WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
+                        | WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL,
+                PixelFormat.TRANSLUCENT);
+
+        mTextView = new TextView(this);
+        layoutParams.gravity = Gravity.TOP | Gravity.LEFT;
+        layoutParams.x = 0;
+        layoutParams.y = 100;
+        mTextView.setLayoutParams(layoutParams);
+        mTextView.setBackgroundColor(Color.argb(50, 0, 255, 0));
+
+        mTextView.setOnTouchListener(new View.OnTouchListener() {
+
+            private int mInitialX = 0;
+            private int mInitialY = 0;
+            private float mInitialTouchX;
+            private float mInitialTouchY;
+
+            @Override
+            public boolean onTouch(View view, MotionEvent event) {
+                switch (event.getAction() & MotionEvent.ACTION_MASK) {
+                    case MotionEvent.ACTION_DOWN:
+                        mInitialX = layoutParams.x;
+                        mInitialY = layoutParams.y;
+                        mInitialTouchX = event.getRawX();
+                        mInitialTouchY = event.getRawY();
+                        break;
+                    case MotionEvent.ACTION_MOVE:
+                        WindowManager.LayoutParams layoutParams =
+                                (WindowManager.LayoutParams) view.getLayoutParams();
+                        layoutParams.x = mInitialX + (int) (event.getRawX() - mInitialTouchX);
+                        layoutParams.y = mInitialY + (int) (event.getRawY() - mInitialTouchY);
+                        mWindowManager.updateViewLayout(view, layoutParams);
+                        return true;
+                    default:
+                        break;
+                }
+
+                return false;
+            }
+        });
+
+        try {
+            mWindowManager.addView(mTextView, layoutParams);
+        } catch (RuntimeException e) {
+            Toast.makeText(this, "Couldn't display overlay", Toast.LENGTH_SHORT)
+                .show();
+        }
+
+        showCurrentTask();
+    }
+
+    @Override
+    public int onStartCommand(Intent intent, int flags, int startId) {
+        if (STOP_SERVICE.equals(intent.getAction())) {
+            stopSelf();
+        }
+
+        return START_STICKY;
+    }
+
+    @Override
+    public IBinder onBind(Intent intent) {
+        return null;
+    }
+
+    @Override
+    public void onDestroy() {
+        mHandler.removeCallbacksAndMessages(null);
+        mWindowManager.removeView(mTextView);
+        try {
+            ActivityTaskManager.getService().unregisterTaskStackListener(mTaskStackListener);
+        } catch (RemoteException e) {
+            Toast.makeText(this, e.getLocalizedMessage(), Toast.LENGTH_LONG).show();
+        }
+    }
+
+    /**
+     * This requires system permissions or else it will only fetch the current app and the launcher
+     * app
+     */
+    private void showCurrentTask() {
+        try {
+            List<ActivityManager.RunningTaskInfo> tasks =
+                    ActivityTaskManager.getService().getTasks(1);
+            if (!tasks.isEmpty()) {
+                updateComponentName(tasks.get(0).topActivity);
+            }
+        } catch (RemoteException e) {
+            Toast.makeText(this, e.getLocalizedMessage(), Toast.LENGTH_LONG).show();
+        }
+    }
+
+    private void updateComponentName(ComponentName componentName) {
+        mHandler.post(() -> {
+            if (mTextView != null && componentName != null) {
+                mTextView.setText(componentName.flattenToShortString().replace('/', '\n'));
+            }
+        });
+    }
+
+    private final TaskStackListener mTaskStackListener = new TaskStackListener() {
+        @Override
+        public void onTaskCreated(int taskId, ComponentName componentName) {
+            updateComponentName(componentName);
+        }
+
+        @Override
+        public void onTaskRemoved(int taskId) {
+            showCurrentTask();
+        }
+
+        @Override
+        public void onTaskDescriptionChanged(ActivityManager.RunningTaskInfo taskInfo) {
+            updateComponentName(taskInfo.topActivity);
+        }
+
+        @Override
+        public void onTaskMovedToFront(ActivityManager.RunningTaskInfo taskInfo) {
+            updateComponentName(taskInfo.topActivity);
+        }
+    };
+}
diff --git a/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/dialogs/DialogsActivity.java b/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/dialogs/DialogsActivity.java
index 769a1ab..3fa6ab1 100644
--- a/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/dialogs/DialogsActivity.java
+++ b/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/dialogs/DialogsActivity.java
@@ -26,6 +26,7 @@
 import android.widget.Toast;
 
 import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
 
 import com.android.car.ui.AlertDialogBuilder;
 import com.android.car.ui.paintbooth.R;
@@ -188,7 +189,7 @@
                 .show();
     }
 
-    private static class ViewHolder extends CarUiRecyclerView.ViewHolder {
+    private static class ViewHolder extends RecyclerView.ViewHolder {
 
         private final Button mButton;
 
@@ -203,8 +204,8 @@
         }
     }
 
-    private final CarUiRecyclerView.Adapter<ViewHolder> mAdapter =
-            new CarUiRecyclerView.Adapter<ViewHolder>() {
+    private final RecyclerView.Adapter<ViewHolder> mAdapter =
+            new RecyclerView.Adapter<ViewHolder>() {
                 @Override
                 public int getItemCount() {
                     return mButtons.size();
diff --git a/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/overlays/OverlayManagerImpl.java b/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/overlays/OverlayManagerImpl.java
index 32fcbc9..3a27534 100644
--- a/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/overlays/OverlayManagerImpl.java
+++ b/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/overlays/OverlayManagerImpl.java
@@ -16,7 +16,7 @@
 
 package com.android.car.ui.paintbooth.overlays;
 
-import android.car.userlib.CarUserManagerHelper;
+import android.app.ActivityManager;
 import android.content.Context;
 import android.content.om.IOverlayManager;
 import android.os.RemoteException;
@@ -35,11 +35,9 @@
  * image.
  */
 public class OverlayManagerImpl implements OverlayManager {
-    private final CarUserManagerHelper mCarUserManagerHelper;
     private final IOverlayManager mOverlayManager;
 
     public OverlayManagerImpl(Context context) {
-        mCarUserManagerHelper = new CarUserManagerHelper(context);
         mOverlayManager = IOverlayManager.Stub.asInterface(
                 ServiceManager.getService(Context.OVERLAY_SERVICE));
     }
@@ -62,8 +60,8 @@
     @Override
     @NonNull
     public Map<String, List<OverlayManager.OverlayInfo>> getOverlays() throws RemoteException {
-        Map<String, List<android.content.om.OverlayInfo>> overlays = mOverlayManager
-                .getAllOverlays(mCarUserManagerHelper.getCurrentForegroundUserId());
+        Map<String, List<android.content.om.OverlayInfo>> overlays =
+                mOverlayManager.getAllOverlays(ActivityManager.getCurrentUser());
         return overlays.entrySet()
                 .stream()
                 .collect(toMap(Map.Entry::getKey, e -> e.getValue()
@@ -74,7 +72,6 @@
 
     @Override
     public void applyOverlay(@NonNull String packageName, boolean enable) throws RemoteException {
-        mOverlayManager.setEnabled(packageName, enable,
-                mCarUserManagerHelper.getCurrentForegroundUserId());
+        mOverlayManager.setEnabled(packageName, enable, ActivityManager.getCurrentUser());
     }
 }
diff --git a/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/preferences/PreferenceDemoFragment.java b/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/preferences/PreferenceDemoFragment.java
index ccd21ef..233c873 100644
--- a/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/preferences/PreferenceDemoFragment.java
+++ b/car-ui-lib/tests/paintbooth/src/com/android/car/ui/paintbooth/preferences/PreferenceDemoFragment.java
@@ -19,6 +19,8 @@
 import android.os.Bundle;
 
 import com.android.car.ui.paintbooth.R;
+import com.android.car.ui.preference.CarUiPreference;
+import com.android.car.ui.preference.CarUiSwitchPreference;
 import com.android.car.ui.preference.PreferenceFragment;
 
 /**
@@ -30,5 +32,23 @@
     public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
         // Load the preferences from an XML resource
         setPreferencesFromResource(R.xml.preference_samples, rootKey);
+        CarUiPreference preferenceDisabledWithoutRipple = findPreference(
+                "preference_disabled_without_ripple");
+        preferenceDisabledWithoutRipple.setEnabled(false);
+        preferenceDisabledWithoutRipple.setMessageToShowWhenDisabledPreferenceClicked(
+                "I am disabled because...");
+        preferenceDisabledWithoutRipple.setShouldShowRippleOnDisabledPreference(false);
+
+        CarUiPreference preferenceDisabledWithRipple = findPreference(
+                "preference_disabled_with_ripple");
+        preferenceDisabledWithRipple.setEnabled(false);
+        preferenceDisabledWithRipple.setMessageToShowWhenDisabledPreferenceClicked(
+                "I am disabled because...");
+        preferenceDisabledWithRipple.setShouldShowRippleOnDisabledPreference(true);
+
+        CarUiSwitchPreference carUiSwitchPreference = findPreference("switch");
+        carUiSwitchPreference.setEnabled(false);
+        carUiSwitchPreference.setMessageToShowWhenDisabledPreferenceClicked(
+                "I am disabled because...");
     }
 }
diff --git a/car-ui-lib/tests/robotests/Android.bp b/car-ui-lib/tests/robotests/Android.bp
new file mode 100644
index 0000000..20e67ef
--- /dev/null
+++ b/car-ui-lib/tests/robotests/Android.bp
@@ -0,0 +1,53 @@
+//
+// Copyright (C) 2019 The Android Open Source Project
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+//###########################################################
+// CarUi lib just for Robolectric test target.     #
+//###########################################################
+android_app {
+    name: "CarUi",
+
+    resource_dirs: [
+        "res",
+    ],
+
+    platform_apis: true,
+
+    privileged: true,
+
+    libs: ["android.car"],
+
+    static_libs: ["car-ui-lib"],
+
+}
+
+//###############################################
+// Car Ui Robolectric test target. #
+//###############################################
+android_robolectric_test {
+    name: "CarUiRoboTests",
+
+    srcs: ["src/**/*.java"],
+
+    java_resource_dirs: ["config"],
+
+    libs: [
+        "android.car",
+        "testng",
+    ],
+
+    instrumentation_for: "CarUi",
+}
diff --git a/car-ui-lib/tests/robotests/Android.mk b/car-ui-lib/tests/robotests/Android.mk
deleted file mode 100644
index a532bc9..0000000
--- a/car-ui-lib/tests/robotests/Android.mk
+++ /dev/null
@@ -1,90 +0,0 @@
-#
-# Copyright (C) 2019 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-LOCAL_PATH := $(call my-dir)
-
-############################################################
-# CarUi lib just for Robolectric test target.     #
-############################################################
-include $(CLEAR_VARS)
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res \
-    $(LOCAL_PATH)/tests/robotests/res \
-
-LOCAL_PACKAGE_NAME := CarUi
-LOCAL_PRIVATE_PLATFORM_APIS := true
-LOCAL_MODULE_TAGS := optional
-
-LOCAL_USE_AAPT2 := true
-
-LOCAL_PRIVILEGED_MODULE := true
-
-LOCAL_JAVA_LIBRARIES := android.car
-
-LOCAL_STATIC_ANDROID_LIBRARIES := \
-    car-ui-lib
-
-include $(BUILD_PACKAGE)
-
-################################################
-# Car Ui Robolectric test target. #
-################################################
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := CarUiRoboTests
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-
-LOCAL_JAVA_RESOURCE_DIRS := config
-
-# Include the testing libraries
-LOCAL_JAVA_LIBRARIES := \
-    android.car \
-    robolectric_android-all-stub \
-    Robolectric_all-target \
-    mockito-robolectric-prebuilt \
-    testng \
-    truth-prebuilt
-
-LOCAL_INSTRUMENTATION_FOR := CarUi
-
-LOCAL_MODULE_TAGS := optional
-
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-##################################################################
-# Car Ui runner target to run the previous target. #
-##################################################################
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := RunCarUiRoboTests
-
-LOCAL_JAVA_LIBRARIES := \
-    android.car \
-    CarUiRoboTests \
-    robolectric_android-all-stub \
-    Robolectric_all-target \
-    mockito-robolectric-prebuilt \
-    testng \
-    truth-prebuilt
-
-LOCAL_TEST_PACKAGE := CarUi
-
-LOCAL_ROBOTEST_FILES := $(filter-out %/BaseRobolectricTest.java,\
-    $(call find-files-in-subdirs,$(LOCAL_PATH)/src,*Test.java,.))
-
-LOCAL_INSTRUMENT_SOURCE_DIRS := $(dir $(LOCAL_PATH))../src
-
-include external/robolectric-shadows/run_robotests.mk
diff --git a/car-ui-lib/tests/robotests/build.gradle b/car-ui-lib/tests/robotests/build.gradle
index 7625bf0..b741419 100644
--- a/car-ui-lib/tests/robotests/build.gradle
+++ b/car-ui-lib/tests/robotests/build.gradle
@@ -82,5 +82,5 @@
     testImplementation "com.google.truth:truth:0.29"
     testImplementation "org.testng:testng:6.9.9"
 
-    implementation files('../../../../../../../out/target/common/obj/JAVA_LIBRARIES/android.car_intermediates/classes-pre-proguard.jar')
+    implementation files('../../../../../../../out/target/common/obj/JAVA_LIBRARIES/android.car_intermediates/classes.jar')
 }
diff --git a/car-ui-lib/tests/robotests/config/robolectric.properties b/car-ui-lib/tests/robotests/config/robolectric.properties
index 8768f6b..849e07f 100644
--- a/car-ui-lib/tests/robotests/config/robolectric.properties
+++ b/car-ui-lib/tests/robotests/config/robolectric.properties
@@ -13,5 +13,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
-manifest=packages/apps/Car/libs/car-ui-lib/tests/robotests/AndroidManifest.xml
 sdk=NEWEST_SDK
diff --git a/car-ui-lib/tests/robotests/src/com/android/car/ui/TestConfig.java b/car-ui-lib/tests/robotests/src/com/android/car/ui/TestConfig.java
deleted file mode 100644
index 46a9d0c..0000000
--- a/car-ui-lib/tests/robotests/src/com/android/car/ui/TestConfig.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright (C) 2019 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.car.ui;
-
-public class TestConfig {
-    public static final int SDK_VERSION = 28;
-    public static final String MANIFEST_PATH =
-            "packages/apps/Car/car-ui-lib/AndroidManifest.xml";
-}
diff --git a/car-ui-lib/tests/robotests/src/com/android/car/ui/toolbar/ShadowAsyncLayoutInflater.java b/car-ui-lib/tests/robotests/src/com/android/car/ui/toolbar/ShadowAsyncLayoutInflater.java
new file mode 100644
index 0000000..817ab97
--- /dev/null
+++ b/car-ui-lib/tests/robotests/src/com/android/car/ui/toolbar/ShadowAsyncLayoutInflater.java
@@ -0,0 +1,45 @@
+/*
+ * Copyright (C) 2020 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.car.ui.toolbar;
+
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+import androidx.annotation.LayoutRes;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.asynclayoutinflater.view.AsyncLayoutInflater;
+
+import org.robolectric.annotation.Implementation;
+import org.robolectric.annotation.Implements;
+
+/**
+ * Shadow of {@link AsyncLayoutInflater} that inflates synchronously, so that tests
+ * don't have to have complicated code to wait for these inflations.
+ */
+@Implements(AsyncLayoutInflater.class)
+public class ShadowAsyncLayoutInflater {
+    @Implementation
+    public void inflate(@LayoutRes int resid, @Nullable ViewGroup parent,
+            @NonNull AsyncLayoutInflater.OnInflateFinishedListener callback) {
+        View result = LayoutInflater.from(parent.getContext())
+                .inflate(resid, parent, false);
+
+        callback.onInflateFinished(result, resid, parent);
+    }
+}
diff --git a/car-ui-lib/tests/robotests/src/com/android/car/ui/toolbar/ToolbarTest.java b/car-ui-lib/tests/robotests/src/com/android/car/ui/toolbar/ToolbarTest.java
index f943ec5..5d99f95 100644
--- a/car-ui-lib/tests/robotests/src/com/android/car/ui/toolbar/ToolbarTest.java
+++ b/car-ui-lib/tests/robotests/src/com/android/car/ui/toolbar/ToolbarTest.java
@@ -42,7 +42,8 @@
 import java.util.List;
 
 @RunWith(RobolectricTestRunner.class)
-@Config(shadows = {ExtendedShadowTypeface.class}, qualifiers = "land")
+@Config(shadows = {ExtendedShadowTypeface.class, ShadowAsyncLayoutInflater.class},
+        qualifiers = "land")
 public class ToolbarTest {
 
     private Context mContext;
diff --git a/car-ui-lib/tests/robotests/src/com/android/car/ui/utils/CarUxRestrictionsUtilTest.java b/car-ui-lib/tests/robotests/src/com/android/car/ui/utils/CarUxRestrictionsUtilTest.java
index fe6f80c..ea62ee5 100644
--- a/car-ui-lib/tests/robotests/src/com/android/car/ui/utils/CarUxRestrictionsUtilTest.java
+++ b/car-ui-lib/tests/robotests/src/com/android/car/ui/utils/CarUxRestrictionsUtilTest.java
@@ -20,17 +20,13 @@
 
 import android.car.drivingstate.CarUxRestrictions;
 
-import com.android.car.ui.TestConfig;
-
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.MockitoAnnotations;
 import org.robolectric.RobolectricTestRunner;
-import org.robolectric.annotation.Config;
 
 @RunWith(RobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class CarUxRestrictionsUtilTest {
     private int[] mRestrictionsArray;
 
diff --git a/car-ui-lib/tests/tools/quick_rro.py b/car-ui-lib/tests/tools/quick_rro.py
index 3d7d9ea..aaf186b 100755
--- a/car-ui-lib/tests/tools/quick_rro.py
+++ b/car-ui-lib/tests/tools/quick_rro.py
@@ -142,11 +142,11 @@
     if len(packages) == 0:
         print('No quick RROs to uninstall')
 
-def delete_arsc_flat_files(path):
-    """Deletes all .arsc.flat files under `path`"""
+def delete_flat_files(path):
+    """Deletes all .flat files under `path`"""
     for filename in os.listdir(path):
-        if filename.endswith('.arsc.flat'):
-            run_command(['rm', os.path.join(path, filename)])
+        if filename.endswith('.flat'):
+            os.remove(os.path.join(path, filename))
 
 def build(args, package_name):
     """Builds the RRO apk"""
@@ -200,7 +200,7 @@
     run_command(['aapt2', 'compile', '-o', os.path.join(root_folder, 'compiled.zip'),
                  '--dir', resource_folder])
 
-    delete_arsc_flat_files(root_folder)
+    delete_flat_files(root_folder)
 
     run_command(['unzip', os.path.join(root_folder, 'compiled.zip'),
                  '-d', root_folder])
@@ -209,14 +209,14 @@
                     '-o', unsigned_apk, '--manifest', manifest_file,
                     '-I', android_jar_path]
     for filename in os.listdir(root_folder):
-        if filename.endswith('.arsc.flat'):
+        if filename.endswith('.flat'):
             link_command.extend(['-R', os.path.join(root_folder, filename)])
     run_command(link_command)
 
-    # For some reason signapk.jar requires a relative path to out/host/linux-x86/lib64
+    # For some reason signapk.jar requires a relative path to out/soong/host/linux-x86/lib64
     os.chdir(os.environ['ANDROID_BUILD_TOP'])
-    run_command(['java', '-Djava.library.path=out/host/linux-x86/lib64',
-                 '-jar', 'out/host/linux-x86/framework/signapk.jar',
+    run_command(['java', '-Djava.library.path=out/soong/host/linux-x86/lib64',
+                 '-jar', 'out/soong/host/linux-x86/framework/signapk.jar',
                  'build/target/product/security/platform.x509.pem',
                  'build/target/product/security/platform.pk8',
                  unsigned_apk, signed_apk])
@@ -281,8 +281,8 @@
         sys.exit(1)
 
     if not os.path.isfile(os.path.join(
-            os.environ['ANDROID_BUILD_TOP'], 'out/host/linux-x86/framework/signapk.jar')):
-        print('out/host/linux-x86/framework/signapk.jar missing, please do an android build first')
+            os.environ['ANDROID_BUILD_TOP'], 'out/soong/host/linux-x86/framework/signapk.jar')):
+        print('out/soong/host/linux-x86/framework/signapk.jar missing, please do an android build first')
         sys.exit(1)
 
     package_name = get_package_name(args)
@@ -299,7 +299,7 @@
     print('Enabling...')
     # Enabling RROs sometimes fails shortly after installing them
     time.sleep(1)
-    run_command(['adb', 'shell', 'cmd', 'overlay', 'enable', '--user', '10', package_name])
+    run_command(['adb', 'shell', 'cmd', 'overlay', 'enable', '--user', 'current', package_name])
 
     print('Done!')
 
diff --git a/connected-device-lib/Android.bp b/connected-device-lib/Android.bp
index 85490be..192aa25 100644
--- a/connected-device-lib/Android.bp
+++ b/connected-device-lib/Android.bp
@@ -30,13 +30,13 @@
     libs: ["android.car"],
 
     static_libs: [
-        "EncryptionRunner-lib",
+        "EncryptionRunner",
         "androidx.room_room-runtime",
         "connected-device-protos",
     ],
 
     plugins: [
-        "car-androidx-room-compiler",
+        "androidx.room_room-compiler-plugin",
     ],
 
     platform_apis: true,
diff --git a/connected-device-lib/lib/kotlin-reflect-sources.jar b/connected-device-lib/lib/kotlin-reflect-sources.jar
deleted file mode 100644
index 917a722..0000000
--- a/connected-device-lib/lib/kotlin-reflect-sources.jar
+++ /dev/null
Binary files differ
diff --git a/connected-device-lib/lib/kotlin-reflect.jar b/connected-device-lib/lib/kotlin-reflect.jar
deleted file mode 100644
index e872351..0000000
--- a/connected-device-lib/lib/kotlin-reflect.jar
+++ /dev/null
Binary files differ
diff --git a/connected-device-lib/lib/kotlin-stdlib-jdk7-sources.jar b/connected-device-lib/lib/kotlin-stdlib-jdk7-sources.jar
deleted file mode 100644
index 551568d..0000000
--- a/connected-device-lib/lib/kotlin-stdlib-jdk7-sources.jar
+++ /dev/null
Binary files differ
diff --git a/connected-device-lib/lib/kotlin-stdlib-jdk7.jar b/connected-device-lib/lib/kotlin-stdlib-jdk7.jar
deleted file mode 100644
index d80ae96..0000000
--- a/connected-device-lib/lib/kotlin-stdlib-jdk7.jar
+++ /dev/null
Binary files differ
diff --git a/connected-device-lib/lib/kotlin-stdlib-jdk8-sources.jar b/connected-device-lib/lib/kotlin-stdlib-jdk8-sources.jar
deleted file mode 100644
index 3538660..0000000
--- a/connected-device-lib/lib/kotlin-stdlib-jdk8-sources.jar
+++ /dev/null
Binary files differ
diff --git a/connected-device-lib/lib/kotlin-stdlib-jdk8.jar b/connected-device-lib/lib/kotlin-stdlib-jdk8.jar
deleted file mode 100644
index 08101a3..0000000
--- a/connected-device-lib/lib/kotlin-stdlib-jdk8.jar
+++ /dev/null
Binary files differ
diff --git a/connected-device-lib/lib/kotlin-stdlib-sources.jar b/connected-device-lib/lib/kotlin-stdlib-sources.jar
deleted file mode 100644
index 2bdaf9e..0000000
--- a/connected-device-lib/lib/kotlin-stdlib-sources.jar
+++ /dev/null
Binary files differ
diff --git a/connected-device-lib/lib/kotlin-stdlib.jar b/connected-device-lib/lib/kotlin-stdlib.jar
deleted file mode 100644
index 2bd7644..0000000
--- a/connected-device-lib/lib/kotlin-stdlib.jar
+++ /dev/null
Binary files differ
diff --git a/connected-device-lib/lib/kotlin-test-sources.jar b/connected-device-lib/lib/kotlin-test-sources.jar
deleted file mode 100644
index 7bd21ce..0000000
--- a/connected-device-lib/lib/kotlin-test-sources.jar
+++ /dev/null
Binary files differ
diff --git a/connected-device-lib/lib/kotlin-test.jar b/connected-device-lib/lib/kotlin-test.jar
deleted file mode 100644
index ede1d8b..0000000
--- a/connected-device-lib/lib/kotlin-test.jar
+++ /dev/null
Binary files differ
diff --git a/connected-device-lib/src/com/android/car/connecteddevice/ConnectedDeviceManager.java b/connected-device-lib/src/com/android/car/connecteddevice/ConnectedDeviceManager.java
index 9fefecf..8218a94 100644
--- a/connected-device-lib/src/com/android/car/connecteddevice/ConnectedDeviceManager.java
+++ b/connected-device-lib/src/com/android/car/connecteddevice/ConnectedDeviceManager.java
@@ -111,6 +111,8 @@
 
     private AssociationCallback mAssociationCallback;
 
+    private MessageDeliveryDelegate mMessageDeliveryDelegate;
+
     @Retention(SOURCE)
     @IntDef(prefix = { "DEVICE_ERROR_" },
             value = {
@@ -187,22 +189,20 @@
     public void start() {
         logd(TAG, "Starting ConnectedDeviceManager.");
         EventLog.onConnectedDeviceManagerStarted();
-        //mCentralManager.start();
+        // TODO (b/141312136) Start central manager
         mPeripheralManager.start();
         connectToActiveUserDevice();
     }
 
-    /** Clean up internal processes and disconnect any active connections. */
-    public void cleanup() {
-        logd(TAG, "Cleaning up ConnectedDeviceManager.");
-        mIsConnectingToUserDevice.set(false);
-        mCentralManager.stop();
+    /** Reset internal processes and disconnect any active connections. */
+    public void reset() {
+        logd(TAG, "Resetting ConnectedDeviceManager.");
+        for (InternalConnectedDevice device : mConnectedDevices.values()) {
+            removeConnectedDevice(device.mConnectedDevice.getDeviceId(), device.mCarBleManager);
+        }
         mPeripheralManager.stop();
-        mDeviceCallbacks.clear();
-        mDeviceAssociationCallbacks.clear();
-        mActiveUserConnectionCallbacks.clear();
-        mAllUserConnectionCallbacks.clear();
-        mStorage.clearAssociationDeviceCallback();
+        // TODO (b/141312136) Stop central manager
+        mIsConnectingToUserDevice.set(false);
     }
 
     /** Returns {@link List<ConnectedDevice>} of devices currently connected. */
@@ -423,6 +423,15 @@
         }
     }
 
+    /**
+     * Set the delegate for message delivery operations.
+     *
+     * @param delegate The {@link MessageDeliveryDelegate} to set. {@code null} to unset.
+     */
+    public void setMessageDeliveryDelegate(@Nullable MessageDeliveryDelegate delegate) {
+        mMessageDeliveryDelegate = delegate;
+    }
+
     private void notifyOfBlacklisting(@NonNull ConnectedDevice device, @NonNull UUID recipientId,
             @NonNull DeviceCallback callback, @NonNull Executor executor) {
         loge(TAG, "Multiple callbacks registered for recipient " + recipientId + "! Your "
@@ -604,7 +613,7 @@
         invokeConnectionCallbacks(isAssociated,
                 callback -> callback.onDeviceDisconnected(connectedDevice.mConnectedDevice));
 
-        if (isAssociated) {
+        if (isAssociated || mConnectedDevices.isEmpty()) {
             // Try to regain connection to active user's device.
             connectToActiveUserDevice();
         }
@@ -650,6 +659,15 @@
                     + "recipient " + message.getRecipient() + ".");
             return;
         }
+
+        if (mMessageDeliveryDelegate != null
+                && !mMessageDeliveryDelegate.shouldDeliverMessageForDevice(
+                        connectedDevice.mConnectedDevice)) {
+            logw(TAG, "The message delegate has rejected this message. It will not be "
+                    + "delivered to the intended recipient.");
+            return;
+        }
+
         UUID recipientId = message.getRecipient();
         Map<UUID, ThreadSafeCallbacks<DeviceCallback>> deviceCallbacks =
                 mDeviceCallbacks.get(deviceId);
@@ -883,6 +901,13 @@
         void onAssociatedDeviceUpdated(@NonNull AssociatedDevice device);
     }
 
+    /** Delegate for message delivery operations. */
+    public interface MessageDeliveryDelegate {
+
+        /** Indicate whether a message should be delivered for the specified device. */
+        boolean shouldDeliverMessageForDevice(@NonNull ConnectedDevice device);
+    }
+
     private static class InternalConnectedDevice {
         private final ConnectedDevice mConnectedDevice;
         private final CarBleManager mCarBleManager;
diff --git a/connected-device-lib/src/com/android/car/connecteddevice/ble/CarBleManager.java b/connected-device-lib/src/com/android/car/connecteddevice/ble/CarBleManager.java
index a00ff18..0b05906 100644
--- a/connected-device-lib/src/com/android/car/connecteddevice/ble/CarBleManager.java
+++ b/connected-device-lib/src/com/android/car/connecteddevice/ble/CarBleManager.java
@@ -64,7 +64,6 @@
             }
         }
         mConnectedDevices.clear();
-        mCallbacks.clear();
     }
 
     /**
diff --git a/connected-device-lib/src/com/android/car/connecteddevice/ble/CarBlePeripheralManager.java b/connected-device-lib/src/com/android/car/connecteddevice/ble/CarBlePeripheralManager.java
index 3a4ebcc..5dec98d 100644
--- a/connected-device-lib/src/com/android/car/connecteddevice/ble/CarBlePeripheralManager.java
+++ b/connected-device-lib/src/com/android/car/connecteddevice/ble/CarBlePeripheralManager.java
@@ -494,8 +494,8 @@
                     }
 
                     logd(TAG, "Received new message from " + connectedDevice.mDeviceId
-                            + " with " + deviceMessage.getMessage().length + " in its payload. "
-                            + "Notifying " + mCallbacks.size() + " callbacks.");
+                            + " with " + deviceMessage.getMessage().length + " bytes in its "
+                            + "payload. Notifying " + mCallbacks.size() + " callbacks.");
                     mCallbacks.invoke(
                             callback ->callback.onMessageReceived(connectedDevice.mDeviceId,
                                     deviceMessage));
diff --git a/connected-device-lib/tests/unit/src/com/android/car/connecteddevice/ConnectedDeviceManagerTest.java b/connected-device-lib/tests/unit/src/com/android/car/connecteddevice/ConnectedDeviceManagerTest.java
index a57d3e5..3d48578 100644
--- a/connected-device-lib/tests/unit/src/com/android/car/connecteddevice/ConnectedDeviceManagerTest.java
+++ b/connected-device-lib/tests/unit/src/com/android/car/connecteddevice/ConnectedDeviceManagerTest.java
@@ -37,6 +37,7 @@
 import com.android.car.connecteddevice.ConnectedDeviceManager.ConnectionCallback;
 import com.android.car.connecteddevice.ConnectedDeviceManager.DeviceAssociationCallback;
 import com.android.car.connecteddevice.ConnectedDeviceManager.DeviceCallback;
+import com.android.car.connecteddevice.ConnectedDeviceManager.MessageDeliveryDelegate;
 import com.android.car.connecteddevice.ble.CarBleCentralManager;
 import com.android.car.connecteddevice.ble.CarBleManager;
 import com.android.car.connecteddevice.ble.CarBlePeripheralManager;
@@ -540,8 +541,7 @@
     }
 
     @Test
-    public void removeConnectedDevice_startsAdvertisingForActiveUserDevice()
-            throws InterruptedException {
+    public void removeConnectedDevice_startsAdvertisingForActiveUserDeviceOnActiveUserDisconnect() {
         String deviceId = UUID.randomUUID().toString();
         when(mMockStorage.getActiveUserAssociatedDeviceIds()).thenReturn(
                 Collections.singletonList(deviceId));
@@ -551,15 +551,12 @@
                 Collections.singletonList(device));
         mConnectedDeviceManager.addConnectedDevice(deviceId, mMockPeripheralManager);
         mConnectedDeviceManager.removeConnectedDevice(deviceId, mMockPeripheralManager);
-        Thread.sleep(100);  // Async process so need to allow it time to complete.
-        // ConnectedDeviceManager.start() also invokes connectToDevice(), so expect # of calls = 2.
-        verify(mMockPeripheralManager, timeout(1000).times(2))
+        verify(mMockPeripheralManager, timeout(1000))
                 .connectToDevice(eq(UUID.fromString(deviceId)));
     }
 
     @Test
-    public void removeConnectedDevice__doesNotAdvertiseForNonActiveUserDevice()
-            throws InterruptedException {
+    public void removeConnectedDevice_startsAdvertisingForActiveUserDeviceOnLastDeviceDisconnect() {
         String deviceId = UUID.randomUUID().toString();
         String userDeviceId = UUID.randomUUID().toString();
         when(mMockStorage.getActiveUserAssociatedDeviceIds()).thenReturn(
@@ -570,12 +567,28 @@
                 Collections.singletonList(userDevice));
         mConnectedDeviceManager.addConnectedDevice(deviceId, mMockPeripheralManager);
         mConnectedDeviceManager.removeConnectedDevice(deviceId, mMockPeripheralManager);
-        // ConnectedDeviceManager.start() invokes connectToDevice(), so expect # of calls = 1.
         verify(mMockPeripheralManager, timeout(1000))
                 .connectToDevice(eq(UUID.fromString(userDeviceId)));
     }
 
     @Test
+    public void removeConnectedDevice__doesNotAdvertiseForNonActiveUserDeviceNotLastDevice() {
+        String deviceId = UUID.randomUUID().toString();
+        String userDeviceId = UUID.randomUUID().toString();
+        when(mMockStorage.getActiveUserAssociatedDeviceIds()).thenReturn(
+                Collections.singletonList(userDeviceId));
+        AssociatedDevice userDevice = new AssociatedDevice(userDeviceId, TEST_DEVICE_ADDRESS,
+                TEST_DEVICE_NAME, /* isConnectionEnabled = */ true);
+        when(mMockStorage.getActiveUserAssociatedDevices()).thenReturn(
+                Collections.singletonList(userDevice));
+        mConnectedDeviceManager.addConnectedDevice(deviceId, mMockPeripheralManager);
+        mConnectedDeviceManager.addConnectedDevice(userDeviceId, mMockCentralManager);
+        mConnectedDeviceManager.removeConnectedDevice(deviceId, mMockPeripheralManager);
+        verify(mMockPeripheralManager, timeout(1000).times(0))
+                .connectToDevice(eq(UUID.fromString(userDeviceId)));
+    }
+
+    @Test
     public void removeActiveUserAssociatedDevice_deletesAssociatedDeviceFromStorage() {
         String deviceId = UUID.randomUUID().toString();
         mConnectedDeviceManager.removeActiveUserAssociatedDevice(deviceId);
@@ -610,6 +623,54 @@
         verify(mMockPeripheralManager).disconnectDevice(deviceId);
     }
 
+    @Test
+    public void onMessageReceived_deliversMessageIfDelegateIsNull() throws InterruptedException {
+        connectNewDevice(mMockCentralManager);
+        ConnectedDevice connectedDevice =
+                mConnectedDeviceManager.getActiveUserConnectedDevices().get(0);
+        Semaphore semaphore = new Semaphore(0);
+        DeviceCallback deviceCallback = createDeviceCallback(semaphore);
+        mConnectedDeviceManager.registerDeviceCallback(connectedDevice, mRecipientId,
+                deviceCallback, mCallbackExecutor);
+        DeviceMessage message = new DeviceMessage(mRecipientId, false, new byte[10]);
+        mConnectedDeviceManager.setMessageDeliveryDelegate(null);
+        mConnectedDeviceManager.onMessageReceived(connectedDevice.getDeviceId(), message);
+        assertThat(tryAcquire(semaphore)).isTrue();
+    }
+
+    @Test
+    public void onMessageReceived_deliversMessageIfDelegateAccepts() throws InterruptedException {
+        connectNewDevice(mMockCentralManager);
+        ConnectedDevice connectedDevice =
+                mConnectedDeviceManager.getActiveUserConnectedDevices().get(0);
+        Semaphore semaphore = new Semaphore(0);
+        DeviceCallback deviceCallback = createDeviceCallback(semaphore);
+        mConnectedDeviceManager.registerDeviceCallback(connectedDevice, mRecipientId,
+                deviceCallback, mCallbackExecutor);
+        DeviceMessage message = new DeviceMessage(mRecipientId, false, new byte[10]);
+        MessageDeliveryDelegate delegate = device -> true;
+        mConnectedDeviceManager.setMessageDeliveryDelegate(delegate);
+        mConnectedDeviceManager.onMessageReceived(connectedDevice.getDeviceId(), message);
+        assertThat(tryAcquire(semaphore)).isTrue();
+    }
+
+    @Test
+    public void onMessageReceived_doesNotDeliverMessageIfDelegateRejects()
+            throws InterruptedException {
+        connectNewDevice(mMockCentralManager);
+        ConnectedDevice connectedDevice =
+                mConnectedDeviceManager.getActiveUserConnectedDevices().get(0);
+        Semaphore semaphore = new Semaphore(0);
+        DeviceCallback deviceCallback = createDeviceCallback(semaphore);
+        mConnectedDeviceManager.registerDeviceCallback(connectedDevice, mRecipientId,
+                deviceCallback, mCallbackExecutor);
+        DeviceMessage message = new DeviceMessage(mRecipientId, false, new byte[10]);
+        MessageDeliveryDelegate delegate = device -> false;
+        mConnectedDeviceManager.setMessageDeliveryDelegate(delegate);
+        mConnectedDeviceManager.onMessageReceived(connectedDevice.getDeviceId(), message);
+        assertThat(tryAcquire(semaphore)).isFalse();
+    }
+
     @NonNull
     private String connectNewDevice(@NonNull CarBleManager carBleManager) {
         String deviceId = UUID.randomUUID().toString();
diff --git a/glide/Android.mk b/glide/Android.mk
deleted file mode 100644
index 41e3937..0000000
--- a/glide/Android.mk
+++ /dev/null
@@ -1,52 +0,0 @@
-#
-# Copyright (C) 2018 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-LOCAL_MODULE := car-glide-disklrucache
-LOCAL_SDK_VERSION := current
-LOCAL_SRC_FILES := ../../../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/disklrucache/SNAPSHOT/disklrucache-SNAPSHOT$(COMMON_JAVA_PACKAGE_SUFFIX)
-LOCAL_NOTICE_FILE := prebuilts/maven_repo/bumptech/LICENSE
-LOCAL_JETIFIER_ENABLED := true
-LOCAL_UNINSTALLABLE_MODULE := true
-
-include $(BUILD_PREBUILT)
-
-include $(CLEAR_VARS)
-
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-LOCAL_MODULE := car-gifdecoder
-LOCAL_SDK_VERSION := current
-LOCAL_SRC_FILES := ../../../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/gifdecoder/SNAPSHOT/gifdecoder-SNAPSHOT$(COMMON_JAVA_PACKAGE_SUFFIX)
-LOCAL_NOTICE_FILE := prebuilts/maven_repo/bumptech/LICENSE
-LOCAL_JETIFIER_ENABLED := true
-LOCAL_UNINSTALLABLE_MODULE := true
-
-include $(BUILD_PREBUILT)
-
-include $(CLEAR_VARS)
-
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-LOCAL_MODULE := car-glide
-LOCAL_SDK_VERSION := current
-LOCAL_SRC_FILES := ../../../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/glide/SNAPSHOT/glide-SNAPSHOT$(COMMON_JAVA_PACKAGE_SUFFIX)
-LOCAL_NOTICE_FILE := prebuilts/maven_repo/bumptech/LICENSE
-LOCAL_JETIFIER_ENABLED := true
-LOCAL_UNINSTALLABLE_MODULE := true
-
-include $(BUILD_PREBUILT)
\ No newline at end of file