2017-02-25 5 views
0

Vous rencontrez des problèmes avec la boîte de dialogue Cast et un récepteur personnalisé. Le média est lancé et en cours de lecture, la boîte de dialogue Cast affiche l'icône de pause et la pause de frappe entraîne l'envoi par l'environnement de distribution d'un message au destinataire qui passe à cast.receiver.MediaManager.onPause(). De là, je mets en pause mon lecteur personnalisé et j'appelle le MediaManager.broadcastStatus(), ce qui fait que le bouton de dialogue de diffusion de l'expéditeur passe de l'icône de pause à l'icône de lecture. Cependant, appuyer sur le bouton de lecture ne fait rien. Débogage du client Android Je vois que MediaSessionCompatApi21.onPause() et .onPlay() sont appelés en appuyant sur le bouton mais seule la pause envoie n'importe quoi au récepteur. Une idée de pourquoi le cadre ne provoque pas l'appel de la fonction cast.receiver.MediaManager.onPlay() sur le récepteur? Cela se produit avec support:7.25.2/play-services:10.2.0 ou support:7.24.4/play-services:9.4.0. Je ne comprends clairement pas quelque chose de fondamental ..Boîte de dialogue Android Cast - Pause de travail, le jeu n'est pas

Une autre chose possiblement liée que j'ai remarquée un peu au hasard, à la fois sur mon application et l'application CastVideos-android, est que commenter la ligne de compilation mediarouter dans le fichier gradle aboutit à un runnable construire mais la fonction de pause de dialogue de cast est cassée aussi. Tout le reste cast fonctionne bien cependant. MISE À JOUR: J'ai lancé l'application CastVideos-android contre mon récepteur personnalisé (ne jouant aucun média mais simulant la messagerie) et la lecture/pause fonctionne très bien. Commencer à croire qu'il s'agit d'un problème de construction ..

Répondre

0

En regardant de plus près le dernier échantillon de CastVideos-android résolu le problème. Étant donné une instance MediaInfo factice X, j'appelle
_remoteMediaClient.load(X);

semblait assez raisonnable, mais il ne fonctionnait pas pour le problème de jeu de dialogue de fonte. En utilisant MediaQueueItem (de regarder les dernières CastVideos-android Version) le fixe ...
MediaQueueItem qi = new MediaQueueItem.Builder(X).setAutoplay(true).setPreloadTime(20).build(); MediaQueueItem[] qa = new MediaQueueItem[]{qi}; _remoteMediaClient.queueLoad(qa,0,MediaStatus.REPEAT_MODE_REPEAT_OFF, null);