Новое корневое приложение под названием Ambient Lock Screen Music показывает любую музыку, воспроизводимую в данный момент на внешнем дисплее вашего Pixel 2 или Pixel 2 XL.
последняя версия Google Пиксель 2 и Пиксель 2 XL Флагманы имеют потрясающую новую функцию под названием «Сейчас исполняется». Используя комбинацию программного обеспечения, оборудования и машинного обучения, Pixel 2 использует автономную базу данных для идентифицировать десятки тысяч песен, играющих в фоновом режиме. Затем эти песни отображаются на экране блокировки вашего устройства, всегда на дисплее или в виде постоянного уведомления. На бумаге эта функция кажется бесполезной, но после ее использования я обнаружил, что она работает очень хорошо. При этом такая функция нравится не каждому, поэтому признанный участник XDA Куинни899 придумал приложение под названием Окружающая музыка на экране блокировки что позволяет вам отображать название и исполнителя любой воспроизводимой в данный момент песни на вашем устройстве, где обычно отображается текст «Сейчас исполняется».
Как вы можете видеть на видео выше, разработчик включает приложение, а затем начинает воспроизводить песню из Google Play Music. Когда они показывают экран блокировки, вы можете увидеть воспроизводимую в данный момент песню внизу, где вы обычно видите текст вставки функции «Сейчас исполняется», когда она распознает песню.
Приложение работает только на Pixel 2/2 XL поскольку он отправляет намерение, соответствующий приемник намерений которого доступен только в приложении SystemUIGoogle, присутствующем на Pixel 2. Кроме того, приложение требуется root-доступ для того, чтобы функционировать. Скачать приложение можно с XDA Labs по ссылке ниже.
[appbox xda com.kieronquinn.app.ambientlsmusic]
Это не только бесплатно, но это также совершенно свободный от рекламы также. Он поддерживает отображение названий песен и исполнителей практически из любого музыкального приложения, такого как Google Play Music, Spotify, YouTube Red и других. Вы также можете занести приложения в черный список, чтобы они не отображали текст на окружающем дисплее. Наконец, приложение даже позволяет дважды нажать на текст, отображаемый на окружающем дисплее, чтобы запустить музыкальное приложение.
Следует отметить, что это не обязательно заменяет функцию «Сейчас исполняется», хотя и может с ней конфликтовать. Если функция «Сейчас исполняется» включена одновременно с этим и вы слушаете музыку во время «Сейчас исполняется» активно обнаруживает песню, тогда в зависимости от того, что отправит намерение в SystemUI, последняя будет отображаться в окружении отображать. В любом случае, «Сейчас исполняется» по-прежнему будет отображать уведомление о любой обнаруженной песне, поэтому вы не пропустите эту функцию, если используете Ambient Lock Screen Music.
Как работает окружающая музыка на экране блокировки
Намерение
Как упоминалось ранее, это приложение работает, отправляя намерение приложению SystemUIGoogle. В приложении Quinny899 это код, отвечающий за отправку намерения:
Intent intent = new Intent("com.google.android.ambientindication.action.AMBIENT_INDICATION_SHOW").putExtra("com.google.android.ambientindication.extra.VERSION", 1).putExtra("com.google.android.ambientindication.extra.TEXT", broadcastString).putExtra("com.google.android.ambientindication.extra.TTL_MILLIS", time);
if(clickIntent != null)intent.putExtra("com.google.android.ambientindication.extra.OPEN_INTENT", clickIntent);
elseif(packageName != null) intent.putExtra("com.google.android.ambientindication.extra.OPEN_INTENT", PendingIntent.getActivity(context, 1, context.getPackageManager().getLaunchIntentForPackage(packageName), 0));
intent.setPackage(pName);
context.sendBroadcast(intent, "com.google.android.ambientindication.permission.AMBIENT_INDICATION");
Давайте немного разберемся с этим. Действие в этом намерении является "com.google.android.ambientindication.action.AMBIENT_INDICATION_SHOW
"и к нему есть несколько дополнений, которые можно отправить вместе с ним.
Первый дополнительный "com.google.android.ambientindication.extra.VERSION
", который в настоящее время принимает целое значение 1. Следующее дополнение — «com.google.android.ambientindication.extra.TEXT
«Здесь мы устанавливаем строку, которую мы хотим отображать на экране блокировки окружающего дисплея. Третий дополнительный "com.google.android.ambientindication.extra.OPEN_INTENT
", который принимает PendingIntent, который открывается при двойном касании текста. Quinny899 установил PendingIntent, чтобы открыть любое приложение, воспроизводящее музыку, или средство выбора. android.intent.action.MUSIC_PLAYER
.
Наконец, чтобы отправить это намерение, вызывающее приложение должно иметь разрешение "com.google.android.ambientindication.permission.AMBIENT_INDICATION
.» Это разрешение определяется как подпись | привилегированное, поэтому этому приложению требуется root-доступ.
Если вы хотите проверить это самостоятельно, вы можете открыть корневой терминал или сеанс оболочки ADB и ввести следующую команду:
ambroadcast-acom.google.android.ambientindication.action.AMBIENT_INDICATION_SHOW--eicom.google.android.ambientindication.extra.VERSION 1 --escom.google.android.ambientindication.extra.TEXT "helloworld"
На окружающем дисплее отобразится текст «Привет, мир». Однако он не позволит вам дважды щелкнуть мышью, поскольку эта команда не устанавливает PendingIntent.
Отображение песни
В приложении есть два метода записи воспроизводимой песни. Первый — через MediaController, который требует, чтобы приложение было привязано в качестве прослушивателя уведомлений. (хотя на самом деле это не означает, что приложение перехватывает уведомления, чтобы прочитать воспроизводимый в данный момент песня). Второй — через широковещательные приемники, для которых не требуется прослушиватель уведомлений (и, следовательно, потребляется меньше памяти), но менее совместимо, поскольку некоторые музыкальные приложения не отправляют широковещательное сообщение о том, что это приложение настроено. для.
Другие приложения
Используя то же намерение, вы можете настроить приложение или Tasker для отправки любого текста на внешний дисплей. Это открывает новые возможности настройки, которые полностью зависят от того, что вы хотите видеть. Например, вместо музыки можно отображать погоду.