diff --git a/Android.bp b/Android.bp
new file mode 100644
index 0000000..fd0ed55
--- /dev/null
+++ b/Android.bp
@@ -0,0 +1,104 @@
+//  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.
+
+package {
+    // See: http://go/android-license-faq
+    default_applicable_licenses: [
+        "Android-Apache-2.0",
+    ],
+}
+
+soong_config_module_type {
+    name: "messaging_java_defaults",
+    module_type: "java_defaults",
+    config_namespace: "messaging",
+    bool_variables: ["build_variant_eng"],
+    properties: ["optimize"],
+}
+
+messaging_java_defaults {
+    name: "messaging_defaults",
+    soong_config_variables: {
+        build_variant_eng: {
+            optimize: {
+                proguard_flags_files: [
+                    "proguard.flags",
+                    "proguard-test.flags",
+                ],
+            },
+            conditions_default: {
+                optimize: {
+                    proguard_flags_files: [
+                        "proguard.flags",
+                        "proguard-release.flags",
+                    ],
+                }
+            },
+        },
+    },
+}
+
+
+android_app {
+    name: "messaging",
+
+    srcs: ["src/**/*.java"],
+
+    defaults: ["messaging_defaults"],
+
+    static_libs: [
+        "androidx.appcompat_appcompat",
+        "androidx.collection_collection",
+        "androidx.core_core",
+        "androidx.fragment_fragment",
+        "androidx.media_media",
+        "androidx.legacy_legacy-support-core-utils",
+        "androidx.legacy_legacy-support-core-ui",
+        "androidx.palette_palette",
+        "androidx.recyclerview_recyclerview",
+        "androidx.viewpager_viewpager",
+        "androidx.legacy_legacy-support-v13",
+        "colorpicker",
+        "libchips",
+        "libphotoviewer",
+        "androidx.annotation_annotation",
+        "android-common",
+        "android-common-framesequence",
+        "com.android.vcard",
+        "guava",
+        "libphonenumber",
+    ],
+
+    aaptflags: [
+        "--version-name",
+        "1.0.001",
+        "--version-code",
+        "10001040",
+    ],
+    required: [
+        "libframesequence",
+        "libgiftranscode",
+    ],
+    optimize: {
+        obfuscate: true,
+        optimize: true,
+        enabled: true,
+    },
+
+    certificate: "platform",
+
+    sdk_version: "current",
+
+    product_specific: true,
+}
diff --git a/Android.mk b/Android.mk
deleted file mode 100644
index b2cd0b9..0000000
--- a/Android.mk
+++ /dev/null
@@ -1,85 +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_MODULE_TAGS := optional
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-LOCAL_USE_AAPT2 := true
-
-LOCAL_STATIC_ANDROID_LIBRARIES := \
-    androidx.appcompat_appcompat \
-    androidx.collection_collection \
-    androidx.core_core \
-    androidx.fragment_fragment \
-    androidx.media_media \
-    androidx.legacy_legacy-support-core-utils \
-    androidx.legacy_legacy-support-core-ui \
-    androidx.palette_palette \
-    androidx.recyclerview_recyclerview \
-    androidx.viewpager_viewpager \
-    androidx.legacy_legacy-support-v13 \
-    colorpicker \
-    libchips \
-    libphotoviewer
-
-LOCAL_STATIC_JAVA_LIBRARIES := \
-    androidx.annotation_annotation \
-    android-common \
-    android-common-framesequence \
-    com.android.vcard \
-    guava \
-    libphonenumber
-
-include $(LOCAL_PATH)/version.mk
-
-LOCAL_AAPT_FLAGS += --version-name "$(version_name_package)"
-LOCAL_AAPT_FLAGS += --version-code $(version_code_package)
-
-ifdef TARGET_BUILD_APPS
-    LOCAL_JNI_SHARED_LIBRARIES := libframesequence libgiftranscode
-else
-    LOCAL_REQUIRED_MODULES:= libframesequence libgiftranscode
-endif
-
-LOCAL_PROGUARD_ENABLED := obfuscation optimization
-
-LOCAL_PROGUARD_FLAG_FILES := proguard.flags
-ifeq (eng,$(TARGET_BUILD_VARIANT))
-    LOCAL_PROGUARD_FLAG_FILES += proguard-test.flags
-else
-    LOCAL_PROGUARD_FLAG_FILES += proguard-release.flags
-endif
-
-LOCAL_PACKAGE_NAME := messaging
-LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD SPDX-license-identifier-MIT
-LOCAL_LICENSE_CONDITIONS := notice
-
-LOCAL_CERTIFICATE := platform
-
-LOCAL_SDK_VERSION := current
-
-LOCAL_PRODUCT_MODULE := true
-
-LOCAL_MODULE_PATH := $(TARGET_OUT_PRODUCT_APPS)
-
-LOCAL_COMPATIBILITY_SUITE := general-tests
-
-include $(BUILD_PACKAGE)
-
-include $(call all-makefiles-under, $(LOCAL_PATH))
