Code:
*** Disclaimer
I am not responsible for any damage you made to your device
You have been warned
crDroid is designed to increase performance and reliability over stock Android for your device also attempting to bringing many of the best features existent today
Features:
https://github.com/crdroidandroid/crdroid_features/blob/11.0/README.mkdn
Flashing Instructions:
Sources:
ROM: https://github.com/crdroidandroid
Device tree: device tree url
SM6150 common tree: device tree url
Kernel: kernel url
Vendor: vendor url
Download:
ROM
Known issues:
Credits:
Visit official website @ crDroid.net
crDroid Mi 11 Lite 4G Telegram
crDroid Community Telegram
Donate to help our team pay server costsView attachment 5368535View attachment 5368537
AoA Golbinex I am Following this procedure to compile the CRDROID rom for courbet Device.
1.First i Cloned the source of Crdroid Repo
mkdir crDroid
$ cd crDroid
# Install Repo in the created directory
$ repo init -u git://github.com/crdroidandroid/android.git -b 11.0
$repo sync
2.Cloned Device Tree from
https://gitlab.com/Golbinex/android_device_xiaomi_courbet/
Branch crdroid-7.x.
Copied this source in my crdroid/device/xiaomi/courbet folder
3.Cloned
SM6150 common tree From https://github.com/xiaomi-sm6150/android_device_xiaomi_sm6150-common
Branch is lineage-18.1-courbet
copy that source in crdroid/device/xiaomi/sm6150-common folder
4.Cloned kernel from https://github.com/vantoman/kernel_xiaomi_sm6150/tree/courbet
Branch is courbet
copy that source in crdroid/kernel/xiaomi/sm6150/
5.cloned vendor from https://github.com/xiaomi-sm6150/android_vendor_xiaomi/tree/lineage-18.1-courbet
branch is lineage-18.1-courbet
copy that source in crdroid/vendor/xiaomi/
6.source build/envsetup.sh
7.lunch
You're building on Linux
Lunch menu... pick a combo:
1. aosp_arm-eng
2. aosp_arm64-eng
3. aosp_car_arm-userdebug
4. aosp_car_arm64-userdebug
5. aosp_car_x86-userdebug
6. aosp_car_x86_64-userdebug
7. aosp_cf_arm64_auto-userdebug
8. aosp_cf_arm64_phone-userdebug
9. aosp_cf_x86_64_phone-userdebug
10. aosp_cf_x86_auto-userdebug
11. aosp_cf_x86_phone-userdebug
12. aosp_cf_x86_tv-userdebug
13. aosp_x86-eng
14. aosp_x86_64-eng
15. arm_krait-eng
16. arm_v7_v8-eng
17. armv8-eng
18. armv8_kryo385-eng
19. car_x86_64-userdebug
20. lineage_arm-userdebug
21. lineage_arm64-userdebug
22. lineage_arm64_ab-userdebug
23. lineage_arm_ab-userdebug
24. lineage_courbet-eng
25. lineage_courbet-user
26. lineage_courbet-userdebug
27. lineage_tv_arm-userdebug
28. lineage_tv_arm64-userdebug
29. lineage_tv_x86-userdebug
30. lineage_tv_x86_64-userdebug
31. lineage_x86-userdebug
32. lineage_x86_64-userdebug
33. lineage_x86_64_ab-userdebug
34. lineage_x86_ab-userdebug
35. qemu_trusty_arm64-userdebug
36. silvermont-eng
37. uml-userdebug
selected 26. lineage_courbet-userdebug
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=11
CR_VERSION=7.11
TARGET_DEVICE=courbet
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_ARCH=arm64
TARGET_ARCH_VARIANT=armv8-a
TARGET_CPU_VARIANT=generic
TARGET_2ND_ARCH=arm
TARGET_2ND_ARCH_VARIANT=armv8-a
TARGET_2ND_CPU_VARIANT=generic
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-4.15.0-161-generic-x86_64-Ubuntu-18.04.6-LTS
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=RQ3A.211001.001
OUT_DIR=out
PRODUCT_SOONG_NAMESPACES=vendor/xiaomi/sm6150-common device/xiaomi/sm6150-common hardware/google/interfaces hardware/google/pixel hardware/xiaomi device/xiaomi/courbet vendor/xiaomi/courbet hardware/qcom-caf/sm8150 vendor/qcom/opensource/commonsys-intf/display vendor/qcom/opensource/data-ipa-cfg-mgr vendor/qcom/opensource/dataservices packages/apps/Bluetooth
8.make -j32
Gives Following Error
[100% 25963/25963] out/soong/.bootstrap/bin/soong_build out/soong/build.ninja
FAILED: out/soong/build.ninja
out/soong/.bootstrap/bin/soong_build -t -l out/.module_paths/Android.bp.list -b out/soong -n out -d out/soong/build.ninja.d -globFile out/soong/.bootstrap/build-globs.ninja -o out/soong/build.ninja Android.bp
error: device/xiaomi/sm6150-common/Android.bp:1:1: module "soong_namespace": namespace hardware/xiaomi does not exist
10:42:36 soong bootstrap failed with: exit status 1
#### failed to build some targets (02:37 (mm:ss)) ####
9.The "namespace hardware/xiaomi does not exist" error resolved by clone
Contribute to LineageOS/android_hardware_xiaomi development by creating an account on GitHub.
github.com
branch lineage-18.1
copying in crdroid/hardware/xiaomi/
10. make -j32
Gives me following error
FAILED: out/soong/.intermediates/frameworks/base/api-stubs-docs-non-updatable/android_common/check_current_api.timestamp
( true && diff -u -F '{ *$' frameworks/base/non-updatable-api/current.txt out/soong/.intermediates/frameworks/base/api-stubs-docs-non-updatable/android_common/api-stubs-docs-non-updatable_api.txt && diff -u -F '{ *$' frameworks/base/non-updatable-api/removed.txt out/soong/.intermediates/frameworks/base/api-stubs-docs-non-updatable/android_common/api-stubs-docs-non-updatable_removed.txt && touch out/soong/.intermediates/frameworks/base/api-stubs-docs-non-updatable/android_common/check_current_api.timestamp ) || ( echo -e "\n******************************\nYou have tried to change the API from what has been previously approved.\n\nTo make these errors go away, you have two choices:\n 1. You can add '
@hide' javadoc comments (and remove @SystemApi/@TestApi/etc)\n to the new methods, etc. shown in the above diff.\n\n 2. You can update current.txt and/or removed.txt by executing the following command:\n make api-stubs-docs-non-updatable-update-current-api\n\n To submit the revised current.txt to the main Android repository,\n you will need approval.\n******************************\n" ; exit 38 )
--- frameworks/base/non-updatable-api/current.txt 2021-10-29 06:05:41.353363762 +0500
+++ out/soong/.intermediates/frameworks/base/api-stubs-docs-non-updatable/android_common/api-stubs-docs-non-updatable_api.txt 2021-11-03 12:54:40.313394608 +0500
@@ -23996,6 +23996,7 @@ public final class AudioAttributes imple
field public static final int USAGE_NOTIFICATION_COMMUNICATION_REQUEST = 7; // 0x7
field public static final int USAGE_NOTIFICATION_EVENT = 10; // 0xa
field public static final int USAGE_NOTIFICATION_RINGTONE = 6; // 0x6
+ field public static final int USAGE_STITCH = 9528; // 0x2538
field public static final int USAGE_UNKNOWN = 0; // 0x0
field public static final int USAGE_VOICE_COMMUNICATION = 2; // 0x2
field public static final int USAGE_VOICE_COMMUNICATION_SIGNALLING = 3; // 0x3
@@ -24221,6 +24222,7 @@ public class AudioManager {
method public void setRingerMode(int);
method
@deprecated public void setRouting(int, int, int);
method public void setSpeakerphoneOn(boolean);
+ method public void setStreamMaxVolume(int, int);
method
@deprecated public void setStreamMute(int, boolean);
method
@deprecated public void setStreamSolo(int, boolean);
method public void setStreamVolume(int, int, int);
@@ -27713,6 +27715,55 @@ public static class BassBoost.Settings {
field public short strength;
}
+ public class DiracSound extends android.media.audiofx.AudioEffect {
+ ctor public DiracSound(int, int);
+ method public int getHeadsetType() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public int getHifiMode() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public float getLevel(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public int getMode() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public int getMovie() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public int getMovieMode() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public int getMusic() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public int getSpeakerStereoMode() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public void setHeadsetType(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public void setHifiMode(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public void setLevel(int, float) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public void setMode(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public void setMovie(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public void setMovieMode(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public void setMusic(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public void setSpeakerStereoMode(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ field public static final int DIRACSOUND_HEADSET_EM001 = 15; // 0xf
+ field public static final int DIRACSOUND_HEADSET_EM006 = 18; // 0x12
+ field public static final int DIRACSOUND_HEADSET_EM007 = 16; // 0x10
+ field public static final int DIRACSOUND_HEADSET_EM013 = 19; // 0x13
+ field public static final int DIRACSOUND_HEADSET_EM015 = 20; // 0x14
+ field public static final int DIRACSOUND_HEADSET_EM017 = 21; // 0x15
+ field public static final int DIRACSOUND_HEADSET_EM018 = 22; // 0x16
+ field public static final int DIRACSOUND_HEADSET_EM019 = 23; // 0x17
+ field public static final int DIRACSOUND_HEADSET_EM303 = 13; // 0xd
+ field public static final int DIRACSOUND_HEADSET_EM304 = 14; // 0xe
+ field public static final int DIRACSOUND_HEADSET_GENERAL = 5; // 0x5
+ field public static final int DIRACSOUND_HEADSET_GENERAL_INEAR = 6; // 0x6
+ field public static final int DIRACSOUND_HEADSET_HM004 = 17; // 0x11
+ field public static final int DIRACSOUND_HEADSET_MEP100 = 1; // 0x1
+ field public static final int DIRACSOUND_HEADSET_MEP200 = 2; // 0x2
+ field public static final int DIRACSOUND_HEADSET_MK101 = 7; // 0x7
+ field public static final int DIRACSOUND_HEADSET_MK301 = 8; // 0x8
+ field public static final int DIRACSOUND_HEADSET_MK303 = 9; // 0x9
+ field public static final int DIRACSOUND_HEADSET_MO701 = 10; // 0xa
+ field public static final int DIRACSOUND_HEADSET_MR102 = 11; // 0xb
+ field public static final int DIRACSOUND_HEADSET_NONE = 0; // 0x0
+ field public static final int DIRACSOUND_HEADSET_PHD = 12; // 0xc
+ field public static final int DIRACSOUND_HEADSET_PISTON100 = 3; // 0x3
+ field public static final int DIRACSOUND_HEADSET_PISTON200 = 4; // 0x4
+ field public static final int DIRACSOUND_MODE_MOVIE = 1; // 0x1
+ field public static final int DIRACSOUND_MODE_MOVIE_CINEMA = 0; // 0x0
+ field public static final int DIRACSOUND_MODE_MOVIE_CINIMA = 0; // 0x0
+ field public static final int DIRACSOUND_MODE_MOVIE_STUDIO = 1; // 0x1
+ field public static final int DIRACSOUND_MODE_MUSIC = 0; // 0x0
+ }
+
public final class DynamicsProcessing extends android.media.audiofx.AudioEffect {
ctor public DynamicsProcessing(int);
ctor public DynamicsProcessing(int, int,
@nullable android.media.audiofx.DynamicsProcessing.Config);
@@ -28011,6 +28062,55 @@ public class LoudnessEnhancer extends an
field public static final int PARAM_TARGET_GAIN_MB = 0; // 0x0
}
+ public class MiSound extends android.media.audiofx.AudioEffect {
+ ctor public MiSound(int, int);
+ method public int getHeadsetType() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public int getHifiMode() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public float getLevel(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public int getMode() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public int getMovie() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public int getMovieMode() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public int getMusic() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public int getSpeakerStereoMode() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public void setHeadsetType(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public void setHifiMode(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public void setLevel(int, float) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public void setMode(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public void setMovie(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public void setMovieMode(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public void setMusic(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ method public void setSpeakerStereoMode(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException;
+ field public static final int MISOUND_HEADSET_EM001 = 15; // 0xf
+ field public static final int MISOUND_HEADSET_EM006 = 18; // 0x12
+ field public static final int MISOUND_HEADSET_EM007 = 16; // 0x10
+ field public static final int MISOUND_HEADSET_EM013 = 19; // 0x13
+ field public static final int MISOUND_HEADSET_EM015 = 20; // 0x14
+ field public static final int MISOUND_HEADSET_EM017 = 21; // 0x15
+ field public static final int MISOUND_HEADSET_EM018 = 22; // 0x16
+ field public static final int MISOUND_HEADSET_EM019 = 23; // 0x17
+ field public static final int MISOUND_HEADSET_EM303 = 13; // 0xd
+ field public static final int MISOUND_HEADSET_EM304 = 14; // 0xe
+ field public static final int MISOUND_HEADSET_GENERAL = 5; // 0x5
+ field public static final int MISOUND_HEADSET_GENERAL_INEAR = 6; // 0x6
+ field public static final int MISOUND_HEADSET_HM004 = 17; // 0x11
+ field public static final int MISOUND_HEADSET_MEP100 = 1; // 0x1
+ field public static final int MISOUND_HEADSET_MEP200 = 2; // 0x2
+ field public static final int MISOUND_HEADSET_MK101 = 7; // 0x7
+ field public static final int MISOUND_HEADSET_MK301 = 8; // 0x8
+ field public static final int MISOUND_HEADSET_MK303 = 9; // 0x9
+ field public static final int MISOUND_HEADSET_MO701 = 10; // 0xa
+ field public static final int MISOUND_HEADSET_MR102 = 11; // 0xb
+ field public static final int MISOUND_HEADSET_NONE = 0; // 0x0
+ field public static final int MISOUND_HEADSET_PHD = 12; // 0xc
+ field public static final int MISOUND_HEADSET_PISTON100 = 3; // 0x3
+ field public static final int MISOUND_HEADSET_PISTON200 = 4; // 0x4
+ field public static final int MISOUND_MODE_MOVIE = 1; // 0x1
+ field public static final int MISOUND_MODE_MOVIE_CINEMA = 0; // 0x0
+ field public static final int MISOUND_MODE_MOVIE_CINIMA = 0; // 0x0
+ field public static final int MISOUND_MODE_MOVIE_STUDIO = 1; // 0x1
+ field public static final int MISOUND_MODE_MUSIC = 0; // 0x0
+ }
+
public class NoiseSuppressor extends android.media.audiofx.AudioEffect {
method public static android.media.audiofx.NoiseSuppressor create(int);
method public static boolean isAvailable();
@@ -38957,6 +39057,7 @@ public static final class Settings.Syste
field public static final String DTMF_TONE_WHEN_DIALING = "dtmf_tone";
field public static final String END_BUTTON_BEHAVIOR = "end_button_behavior";
field public static final String FONT_SCALE = "font_scale";
+ field public static final String GAMING_MODE_DUMMY = "gaming_mode_dummy";
field public static final String HAPTIC_FEEDBACK_ENABLED = "haptic_feedback_enabled";
field
@deprecated public static final String HTTP_PROXY = "http_proxy";
field
@deprecated public static final String INSTALL_NON_MARKET_APPS = "install_non_market_apps";
@@ -38984,12 +39085,14 @@ public static final class Settings.Syste
field public static final int SCREEN_BRIGHTNESS_MODE_AUTOMATIC = 1; // 0x1
field public static final int SCREEN_BRIGHTNESS_MODE_MANUAL = 0; // 0x0
field public static final String SCREEN_OFF_TIMEOUT = "screen_off_timeout";
+ field public static final String SENSOR_BLOCKED_APP_DUMMY = "sensor_blocked_app_dummy";
field
@deprecated public static final String SETTINGS_CLASSNAME = "settings_classname";
field public static final String SETUP_WIZARD_HAS_RUN = "setup_wizard_has_run";
field public static final String SHOW_GTALK_SERVICE_STATUS = "SHOW_GTALK_SERVICE_STATUS";
field
@deprecated public static final String SHOW_PROCESSES = "show_processes";
field
@deprecated public static final String SHOW_WEB_SUGGESTIONS = "show_web_suggestions";
field public static final String SOUND_EFFECTS_ENABLED = "sound_effects_enabled";
+ field public static final String STATUS_BAR_CLOCK_AUTO_HIDE = "status_bar_clock_auto_hide";
field
@deprecated public static final String STAY_ON_WHILE_PLUGGED_IN = "stay_on_while_plugged_in";
field public static final String TEXT_AUTO_CAPS = "auto_caps";
field public static final String TEXT_AUTO_PUNCTUATE = "auto_punctuate";
-e
******************************
You have tried to change the API from what has been previously approved.
To make these errors go away, you have two choices:
1. You can add '
@hide' javadoc comments (and remove @SystemApi/@TestApi/etc)
to the new methods, etc. shown in the above diff.
2. You can update current.txt and/or removed.txt by executing the following command:
make api-stubs-docs-non-updatable-update-current-api
To submit the revised current.txt to the main Android repository,
you will need approval.
******************************
[ 96% 114309/118946] //frameworks/base:module-lib-api-stubs-docs-non-updatable metalava merged [common]
metalava detected access to files that are not explicitly specified. See /media/aospserver/964aa911-23dc-4bb8-ae33-f17e726c936e/crdroid-courbet/out/soong/.intermediates/frameworks/base/module-lib-api-stubs-docs-non-updatable/android_common/module-lib-api-stubs-docs-non-updatable-violations.txt for details.
[ 96% 114315/118946] //frameworks/base:module-lib-api metalava merged [common]
metalava detected access to files that are not explicitly specified. See /media/aospserver/964aa911-23dc-4bb8-ae33-f17e726c936e/crdroid-courbet/out/soong/.intermediates/frameworks/base/module-lib-api/android_common/module-lib-api-violations.txt for details.
[ 96% 114316/118946] //frameworks/base:api-stubs-docs metalava merged [common]
metalava detected access to files that are not explicitly specified. See /media/aospserver/964aa911-23dc-4bb8-ae33-f17e726c936e/crdroid-courbet/out/soong/.intermediates/frameworks/base/api-stubs-docs/android_common/api-stubs-docs-violations.txt for details.
[ 96% 114319/118946] //frameworks/base:system-api-stubs-docs-non-updatable metalava merged [common]
metalava detected access to files that are not explicitly specified. See /media/aospserver/964aa911-23dc-4bb8-ae33-f17e726c936e/crdroid-courbet/out/soong/.intermediates/frameworks/base/system-api-stubs-docs-non-updatable/android_common/system-api-stubs-docs-non-updatable-violations.txt for details.
[ 96% 114320/118946] //frameworks/base:test-api-stubs-docs metalava merged [common]
frameworks/base/core/java/android/companion/CompanionDeviceManager.java:265: warning: When a method overload is needed to target a specific UserHandle, callers should be directed to use Context.createPackageContextAsUser() and re-obtain the relevant Manager, and no new API should be added [UserHandle]
frameworks/base/core/java/android/content/pm/PackageManager.java:4449: warning: When a method overload is needed to target a specific UserHandle, callers should be directed to use Context.createPackageContextAsUser() and re-obtain the relevant Manager, and no new API should be added [UserHandle]
frameworks/base/core/java/android/hardware/soundtrigger/KeyphraseEnrollmentInfo.java:326: warning: Methods creating an Intent should be named `create<Foo>Intent()`, was `getManageKeyphraseIntent` [IntentBuilderName]
frameworks/base/core/java/android/hardware/soundtrigger/KeyphraseEnrollmentInfo.java:338: warning: Type `java.util.Locale` should be replaced with richer ICU type `android.icu.util.ULocale` [UseIcu]
frameworks/base/core/java/android/hardware/soundtrigger/KeyphraseEnrollmentInfo.java:369: warning: Type `java.util.Locale` should be replaced with richer ICU type `android.icu.util.ULocale` [UseIcu]
frameworks/base/core/java/android/hardware/soundtrigger/KeyphraseMetadata.java:85: warning: Type `java.util.Locale` should be replaced with richer ICU type `android.icu.util.ULocale` [UseIcu]
frameworks/base/core/java/android/hardware/soundtrigger/SoundTrigger.java:582: warning: Type `java.util.Locale` should be replaced with richer ICU type `android.icu.util.ULocale` [UseIcu]
frameworks/base/core/java/android/hardware/soundtrigger/SoundTrigger.java:609: warning: Type `java.util.Locale` should be replaced with richer ICU type `android.icu.util.ULocale` [UseIcu]
frameworks/base/core/java/android/hardware/soundtrigger/SoundTrigger.java:751: warning: Method parameter should be Collection<Keyphrase> (or subclass) instead of raw array; was `android.hardware.soundtrigger.SoundTrigger.Keyphrase[]` [ArrayReturn]
frameworks/base/core/java/android/hardware/soundtrigger/SoundTrigger.java:757: warning: Method parameter should be Collection<Keyphrase> (or subclass) instead of raw array; was `android.hardware.soundtrigger.SoundTrigger.Keyphrase[]` [ArrayReturn]
frameworks/base/core/java/android/hardware/soundtrigger/SoundTrigger.java:761: warning: Method should return Collection<Keyphrase> (or subclass) instead of raw array; was `android.hardware.soundtrigger.SoundTrigger.Keyphrase[]` [ArrayReturn]
frameworks/base/core/java/android/net/EthernetManager.java:217: warning: Classes that release resources (release()) should implement AutoClosable and CloseGuard: class android.net.EthernetManager.TetheredInterfaceRequest [NotCloseable]
frameworks/base/core/java/android/permission/PermissionControllerManager.java:550: warning: Registration methods should have overload that accepts delivery Executor: `countPermissionApps` [ExecutorRegistration]
frameworks/base/core/java/android/permission/PermissionControllerManager.java:565: warning: Listeners should always be at end of argument list (method `countPermissionApps`) [ListenerLast]
frameworks/base/core/java/android/permission/PermissionControllerManager.java:550: warning: SAM-compatible parameters (such as parameter 3, "callback", in android.permission.PermissionControllerManager.countPermissionApps) should be last to improve Kotlin interoperability; see
https://kotlinlang.org/docs/reference/java-interop.html#sam-conversions [SamShouldBeLast]
frameworks/base/core/java/android/service/watchdog/ExplicitHealthCheckService.java:164: warning: If implemented by developer, should follow the on<Something> style; otherwise consider marking final [OnNameExpected]
frameworks/base/core/java/android/service/watchdog/ExplicitHealthCheckService.java:164: warning: Registration methods should have overload that accepts delivery Executor: `setCallback` [ExecutorRegistration]
frameworks/base/telecomm/java/android/telecom/TelecomManager.java:1440: warning: When a method overload is needed to target a specific UserHandle, callers should be directed to use Context.createPackageContextAsUser() and re-obtain the relevant Manager, and no new API should be added [UserHandle]
frameworks/base/core/java/android/view/Display.java:1048: warning: Method should return Collection<ColorSpace> (or subclass) instead of raw array; was `android.graphics.ColorSpace[]` [ArrayReturn]
frameworks/base/core/java/android/window/WindowOrganizer.java:49: warning: Registration methods should have overload that accepts delivery Executor: `applySyncTransaction` [ExecutorRegistration]
20 new API lint issues were found.
See tools/metalava/API-LINT.md for how to handle these.
metalava detected access to files that are not explicitly specified. See /media/aospserver/964aa911-23dc-4bb8-ae33-f17e726c936e/crdroid-courbet/out/soong/.intermediates/frameworks/base/test-api-stubs-docs/android_common/test-api-stubs-docs-violations.txt for details.
[ 96% 114323/118946] //frameworks/base:system-api-stubs-docs metalava merged [common]
frameworks/base/media/java/android/media/AudioTrack.java:3520: warning: SAM-compatible parameters (such as parameter 1, "listener", in android.media.AudioTrack.addOnRoutingChangedListener) should be last to improve Kotlin interoperability; see
https://kotlinlang.org/docs/reference/java-interop.html#sam-conversions [SamShouldBeLast]
1 new API lint issues were found.
See tools/metalava/API-LINT.md for how to handle these.
metalava detected access to files that are not explicitly specified. See /media/aospserver/964aa911-23dc-4bb8-ae33-f17e726c936e/crdroid-courbet/out/soong/.intermediates/frameworks/base/system-api-stubs-docs/android_common/system-api-stubs-docs-violations.txt for details.
12:55:05 ninja failed with: exit status 1
#### failed to build some targets (01:38:52 (hh:mm:ss)) ####