Merge changes Ia1d03ae7,I6ecf0396 into main

* changes:
  Build a file in kotlin
  Move change-ids in its own separate lib
diff --git a/android/app/Android.bp b/android/app/Android.bp
index 1c1ec72..2da5e5a 100644
--- a/android/app/Android.bp
+++ b/android/app/Android.bp
@@ -200,7 +200,6 @@
 }
 
 // Bluetooth APK
-
 android_app {
     name: "Bluetooth",
     defaults: ["bluetooth_framework_errorprone_rules"],
@@ -211,6 +210,7 @@
         ":system-messages-proto-src",
         "proto/keystore.proto",
         "src/**/*.java",
+        "src/**/*.kt",
     ],
     proto: {
         type: "lite",
@@ -226,7 +226,6 @@
 
     jni_uses_platform_apis: true,
     libs: [
-        "app-compat-annotations",
         "bluetooth_constants_java",
         "bluetooth_flags_java_lib",
         "error_prone_annotations",
@@ -238,7 +237,6 @@
         "framework-mediaprovider.stubs.module_lib",
         "framework-statsd.stubs.module_lib",
         "framework-tethering.stubs.module_lib",
-        "unsupportedappusage",
 
         // Need to link the class at runtime
         "framework-bluetooth.stubs.module_lib",
@@ -339,24 +337,6 @@
 }
 
 java_library {
-    name: "bluetooth.change-ids",
-    srcs: [
-        "src/com/android/bluetooth/ChangeIds.java",
-    ],
-    libs: [
-        "app-compat-annotations",
-    ],
-    apex_available: ["com.android.bt"],
-    min_sdk_version: "Tiramisu",
-    sdk_version: "module_current",
-}
-
-platform_compat_config {
-    name: "bluetoothapk-platform-compat-config",
-    src: ":bluetooth.change-ids",
-}
-
-java_library {
     name: "bluetooth-proto-enums-java-gen",
     installable: false,
     proto: {
diff --git a/android/app/change-ids/Android.bp b/android/app/change-ids/Android.bp
new file mode 100644
index 0000000..ab4e853c
--- /dev/null
+++ b/android/app/change-ids/Android.bp
@@ -0,0 +1,31 @@
+// Copyright 2025 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 {
+    default_applicable_licenses: ["Android-Apache-2.0"],
+}
+
+java_library {
+    name: "bluetooth.change-ids",
+    srcs: ["com/android/bluetooth/ChangeIds.java"],
+    libs: ["app-compat-annotations"],
+    apex_available: ["com.android.bt"],
+    min_sdk_version: "Tiramisu",
+    sdk_version: "module_current",
+}
+
+platform_compat_config {
+    name: "bluetoothapk-platform-compat-config",
+    src: ":bluetooth.change-ids",
+}
diff --git a/android/app/src/com/android/bluetooth/ChangeIds.java b/android/app/change-ids/com/android/bluetooth/ChangeIds.java
similarity index 100%
rename from android/app/src/com/android/bluetooth/ChangeIds.java
rename to android/app/change-ids/com/android/bluetooth/ChangeIds.java
diff --git a/android/app/src/com/android/bluetooth/gatt/GattServiceConfig.java b/android/app/src/com/android/bluetooth/gatt/GattServiceConfig.kt
similarity index 74%
rename from android/app/src/com/android/bluetooth/gatt/GattServiceConfig.java
rename to android/app/src/com/android/bluetooth/gatt/GattServiceConfig.kt
index cbf5746..c31521d 100644
--- a/android/app/src/com/android/bluetooth/gatt/GattServiceConfig.java
+++ b/android/app/src/com/android/bluetooth/gatt/GattServiceConfig.kt
@@ -14,10 +14,9 @@
  * limitations under the License.
  */
 
-package com.android.bluetooth.gatt;
+package com.android.bluetooth.gatt
 
-/** GattService configuration. */
-public class GattServiceConfig {
-    public static final String TAG_PREFIX = "BtGatt.";
-    public static final boolean DEBUG_ADMIN = false;
+object GattServiceConfig {
+    @JvmField val TAG_PREFIX = "BtGatt."
+    @JvmField val DEBUG_ADMIN = false
 }