4
使用带play-services-cast-framework版本11.2.2的appcompat和mediarouter 26.0.2版,默认的投射通知未在Android Oreo设备上显示(适用于pre奥利奥装置)。这似乎与sdk没有为他的通知请求频道有关。Google cast sdk v3通知缺少Android Oreo
这是我CastOptionsProvider文件:
public class CastOptionsProvider implements OptionsProvider {
@Override
public CastOptions getCastOptions(Context appContext) {
List<String> buttonActions = new ArrayList<>();
buttonActions.add(MediaIntentReceiver.ACTION_REWIND);
buttonActions.add(MediaIntentReceiver.ACTION_TOGGLE_PLAYBACK);
buttonActions.add(MediaIntentReceiver.ACTION_FORWARD);
buttonActions.add(MediaIntentReceiver.ACTION_STOP_CASTING);
int[] compatButtonActionsIndicies = new int[]{0, 1};
NotificationOptions notificationOptions = new NotificationOptions.Builder()
.setActions(buttonActions, compatButtonActionsIndicies)
.setSkipStepMs(30 * DateUtils.SECOND_IN_MILLIS)
.setTargetActivityClassName(ExpandedControlsActivity.class.getName())
.build();
CastMediaOptions mediaOptions = new CastMediaOptions.Builder()
.setNotificationOptions(notificationOptions)
.setExpandedControllerActivityClassName(ExpandedControlsActivity.class.getName())
.setImagePicker(new PlayImagePicker())
.build();
return new CastOptions.Builder().setReceiverApplicationId(appContext.getString(R.string.CHROMECAST_APP))
.setCastMediaOptions(mediaOptions)
.build();
}
@Override
public List<SessionProvider> getAdditionalSessionProviders(Context context) {
return null;
}
}
我没有看到任何方式提供通知渠道,但也许我失去了一些东西。有人已经找到了解决这个问题的办法吗?
我注意到了同样的事情。 Cast SDK尚未准备好用于Oreo。在此期间,我将targetSdkVersion设置为25,但我一直使用compileSdkVersion 26. – BladeCoder
Google Issue Tracker链接:https://issuetracker.google.com/issues/67251634 –
我也看到了这个问题。按照@BladeCoder的建议将targetSdkVersion降至25,似乎是一个临时解决方案。 – masterwok