因此,我使用以下代码尝试在蓝牙AVRCP兼容设备上显示元数据,但至今没有任何运气。远程控制客户端没有出现在锁定屏幕上
没有控件出现在锁屏上,这导致我相信RemoteControlClient`没有按预期工作。
AudioManager mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
ComponentName rec = new ComponentName(getPackageName(), MediaButtonReceiver.class.getName());
mAudioManager.registerMediaButtonEventReceiver(rec);
Intent i = new Intent(Intent.ACTION_MEDIA_BUTTON);
i.setComponent(rec);
PendingIntent pi = PendingIntent.getBroadcast(this, 0, i, 0);
RemoteControlClient mRemoteControlClient = new RemoteControlClient(pi);
mAudioManager.registerRemoteControlClient(mRemoteControlClient);
int flags = RemoteControlClient.FLAG_KEY_MEDIA_PREVIOUS
| RemoteControlClient.FLAG_KEY_MEDIA_NEXT
| RemoteControlClient.FLAG_KEY_MEDIA_PLAY
| RemoteControlClient.FLAG_KEY_MEDIA_PAUSE
| RemoteControlClient.FLAG_KEY_MEDIA_PLAY_PAUSE
| RemoteControlClient.FLAG_KEY_MEDIA_STOP;
mRemoteControlClient.setTransportControlFlags(flags);
mAudioManager.requestAudioFocus(null, AudioManager.STREAM_MUSIC,
AudioManager.AUDIOFOCUS_GAIN);
RemoteControlClient.MetadataEditor mEditor = mRemoteControlClient.editMetadata(true);
mEditor.putString(MediaMetadataRetriever.METADATA_KEY_ARTIST, "RCC Artist");
mEditor.putString(MediaMetadataRetriever.METADATA_KEY_TITLE, "RCC Title");
mEditor.putString(MediaMetadataRetriever.METADATA_KEY_ALBUM, "RCC Album");
mEditor.putLong(MediaMetadataRetriever.METADATA_KEY_DURATION, 6039000);
mEditor.apply();
mRemoteControlClient.setPlaybackState(RemoteControlClient.PLAYSTATE_PLAYING);
我按下按钮时正在执行此代码。
你在测试什么? 'RemoteControlClient'只适用于几个Android版本,并且在Android 5.0上不再支持。 – CommonsWare 2014-12-13 12:31:17
我使用5.0并知道它已被弃用。这是否意味着它根本不起作用?我认为这意味着它将在未来的版本中被删除。 – 2014-12-13 12:36:04