Ambient Lock Screen Music est une application racine qui affiche n'importe quelle musique sur l'écran ambiant du Pixel 2.

Une nouvelle application racine appelée Ambient Lock Screen Music affiche toute la musique en cours de lecture sur l'écran ambiant de votre Pixel 2 ou Pixel 2 XL.

Le dernier de Google Pixel 2 et Pixel 2 XL les produits phares ont une nouvelle fonctionnalité impressionnante appelée "Now Playing". Grâce à une combinaison de logiciels, de matériel et d'apprentissage automatique, le Pixel 2 utilise une base de données hors ligne pour identifier des dizaines de milliers de chansons jouées en arrière-plan. Il affiche ensuite ces chansons sur l'écran de verrouillage de votre appareil, toujours affichées ou sous forme de notification continue. Cette fonctionnalité semble fantaisiste sur le papier, mais après l’avoir utilisée moi-même, j’ai trouvé qu’elle fonctionnait très bien. Cela étant dit, ce type de fonctionnalité n'est pas la tasse de thé de tout le monde, donc XDA Recognized Contributor Quinny899 est venu avec une application appelée Musique ambiante sur l'écran de verrouillage ce qui vous permet de

afficher le nom et l'artiste de toute chanson en cours de lecture sur votre appareil où le texte Now Playing apparaîtrait normalement.

Comme vous pouvez le voir dans la vidéo ci-dessus, le développeur active l'application, puis commence à lire une chanson depuis Google Play Music. Lorsqu'ils affichent l'écran de verrouillage, vous pouvez voir la chanson en cours de lecture en bas, là où vous verriez normalement la fonction Now Playing insérer du texte lorsqu'elle reconnaît une chanson.

L'application ne fonctionne que sur le Pixel 2/2 XL car il envoie une intention dont le récepteur d'intention correspondant n'est disponible que dans l'application SystemUIGoogle présente sur le Pixel 2. De plus, la demande nécessite un accès root afin de fonctionner. Vous pouvez télécharger l'application depuis XDA Labs sur le lien ci-dessous.

[appbox xda com.kieronquinn.app.ambientlsmusic]

Ce n'est pas seulement gratuit, mais c'est aussi totalement Sans publicité aussi. Il prend en charge l'affichage des titres de chansons/artistes de presque toutes les applications musicales telles que Google Play Music, Spotify, YouTube Red, etc. Vous pouvez également mettre sur liste noire les applications qui affichent du texte sur l'écran ambiant. Enfin, l'application vous permet même d'appuyer deux fois sur le texte affiché sur l'écran ambiant pour lancer l'application musicale.

Nous devons noter que cela ne remplace pas nécessairement la fonctionnalité Now Playing, même si cela peut entrer en conflit avec celle-ci. Si Now Playing est activé en même temps et que vous écoutez de la musique pendant que Now Playing est activé. détectant activement une chanson, celui qui envoie une intention à SystemUI, la dernière apparaîtra sur l'ambiance afficher. Quoi qu'il en soit, Now Playing affichera toujours une notification avec la chanson détectée, vous ne manquerez donc pas la fonctionnalité si vous utilisez Ambient Lock Screen Music.


Comment fonctionne la musique ambiante de l'écran de verrouillage

L'intention

Comme mentionné précédemment, cette application fonctionne en envoyant une intention à l'application SystemUIGoogle. Dans l'application Quinny899, voici le code responsable de l'envoi de l'intention :

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");

Décomposons cela un peu. L'action dans cette intention est "com.google.android.ambientindication.action.AMBIENT_INDICATION_SHOW" et il contient quelques extras d'intention qui peuvent être envoyés avec.

Le premier extra est "com.google.android.ambientindication.extra.VERSION" qui prend actuellement simplement une valeur entière de 1. Le prochain extra est "com.google.android.ambientindication.extra.TEXT" C'est là que nous définissons la chaîne que nous voulons afficher sur l'écran de verrouillage de l'affichage ambiant. Le troisième extra est "com.google.android.ambientindication.extra.OPEN_INTENT" qui accepte un PendingIntent qui s'ouvre en appuyant deux fois sur le texte. Quinny899 a configuré PendingIntent pour ouvrir n'importe quelle application qui joue de la musique ou un sélecteur pour android.intent.action.MUSIC_PLAYER.

Enfin, pour envoyer cette intention, l'application appelante doit avoir l'autorisation "com.google.android.ambientindication.permission.AMBIENT_INDICATION. " Cette autorisation est définie comme signature|privilégiée, c'est pourquoi cette application nécessite un accès root.

Si vous souhaitez tester cela par vous-même, vous pouvez ouvrir un terminal rooté ou une session shell ADB et entrer la commande suivante :

ambroadcast-acom.google.android.ambientindication.action.AMBIENT_INDICATION_SHOW--eicom.google.android.ambientindication.extra.VERSION 1 --escom.google.android.ambientindication.extra.TEXT "helloworld"

Cela affichera le texte « hello world » sur l'écran ambiant. Cependant, cela ne vous permettra pas de double-cliquer, car cette commande ne configure pas de PendingIntent.

Affichage du morceau

L'application dispose de deux méthodes pour capturer la chanson en cours de lecture. La première passe par MediaController, qui nécessite que l'application soit liée en tant qu'écouteur de notification. (bien que cela ne signifie pas réellement que l'application intercepte les notifications pour lire le contenu en cours de lecture. chanson). La seconde se fait via des récepteurs de diffusion qui ne nécessitent pas d'écouteur de notification (et consomment donc moins de mémoire), mais est moins compatible car certaines applications musicales n'envoient pas d'intention de diffusion indiquant que cette application est configurée pour.

Autres applications

En utilisant cette même intention, vous pouvez configurer une application ou un Tasker pour envoyer le texte de votre choix à l'affichage ambiant. Cela ouvre de nouvelles options de personnalisation qui dépendent entièrement de ce que vous voulez voir. Par exemple, vous pouvez afficher la météo à la place de la musique.