我的android设备上的系统UI崩溃了。每当我尝试激活mediaSessionCompat时,都会发生这种情况。我研究了以下帖子的建议: https://github.com/firebase/quickstart-android/issues/382 但没有用。下面是一个简单的代码示例,提供了更多信息。
MediaSessionCompat mediaSessionCompat;
ComponentName mediaButtonReceiver = new ComponentName(getApplicationContext(), MediaButtonReceiver.class);
mediaSessionCompat = new MediaSessionCompat(getApplicationContext(), "Tag", mediaButtonReceiver, null);
mediaSessionCompat.setCallback(mediaSessionCallback);
mediaSessionCompat.setFlags(
MediaSessionCompat.FLAG_HANDLES_MEDIA_BUTTONS |
MediaSessionCompat.FLAG_HANDLES_TRANSPORT_CONTROLS |
MediaSessionCompat.FLAG_HANDLES_QUEUE_COMMANDS);
Intent mediaButtonIntent = new Intent(Intent.ACTION_MEDIA_BUTTON);
mediaButtonIntent.setClass(this, MediaButtonReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, mediaButtonIntent, 0);
mediaSessionCompat.setMediaButtonReceiver(pendingIntent);
mediaSessionCompat.setRatingType(RatingCompat.RATING_NONE);
mediaSessionCompat.setShuffleMode(PlaybackStateCompat.SHUFFLE_MODE_NONE);
mediaSessionCompat.setQueue(mediaQueueManager.getMediaQueue());
MediaSessionCompat.Token token = mediaSessionCompat.getSessionToken();
setSessionToken(token);
mediaSessionCompat.setActive(true); // this is where the error occurs
我尝试禁用所有图标,并将它们设置为通过“图像资产”创建器创建的旧版图标。
我正在使用以下程序构建应用程序:
答案 0 :(得分:0)
我发现了引起它的错误。令人惊讶的是,它与图像无关,但与设置带有附加信息的捆绑包有关。
下面是我设置元数据后发生错误的代码段:
Bundle bundleExtras = new Bundle();
bundleExtras.putSerializable(
MediaSessionExtras.MEDIA_SHARED_IMAGE.name(),
getMediaImage()
);
mediaSessionCompat.setExtras(bundleExtras);
仅供参考,getMediaImage()
没有返回任何null
值,并且serializable
对象内部的所有信息都被初始化为一个值。
希望有人出现相同的怪异错误会有所帮助!