Да, это, скорее всего, утечка Android. Понятия не имею, если это новое, но я не видел его раньше. Делаете ли вы что-то особенное с автозаполнением?
Вы должны сообщить об этом на баг-трекер Android, в идеале с примером проекта для его воспроизведения. Если вы не можете легко воспроизвести, по крайней мере, предоставление ссылки на дамп кучи поможет расследовать.
На основании имен, участвующих в утечке, если ApplicationPackageManager имеет область приложения (и, следовательно, не утечка), тогда ContextImpl.mAutofillClient слишком долго удерживает ссылку на действие.
Поле определено здесь: https://android.googlesource.com/platform/frameworks/base/+blame/master/core/java/android/app/ContextImpl.java#235
Я не нашел каких-либо недавних изменений в автозаполнение, которое объясняет эту утечку. Мы можем видеть в исходном коде Activity, что когда действие присоединяет свой базовый контекст, оно устанавливает себя в качестве клиента автозаполнения для этого базового контекста: https://android.googlesource.com/platform/frameworks/base/+blame/master/core/java/android/app/Activity.java#1124
Оно никогда не отменяет себя так что либо это ошибка, либо ожидается, что базовый контекст будет иметь ту же область действия, что и действие.
Еще одна вещь, которую я нахожу странной, это static ApplicationPackageManager.mHasSystemFeatureCache
, что означает, что ApplicationPackageManager имеет заполненные поля c который начинается с m (поле члена). Это странное имя, обычно ошибка, которая не встречается в источниках android. И действительно, я не могу найти его: https://android.googlesource.com/platform/frameworks/base/+blame/master/core/java/android/app/ApplicationPackageManager.java но, возможно, они еще не поделились обновленными источниками? На каком устройстве вы используете это?