在我的应用程序中使用的CastCompanionLibrary中,有一部分代码看起来像这样:

CaptioningManager captioningManager = (CaptioningManager) mContext.getSystemService(Context.CAPTIONING_SERVICE);
return captioningManager.isEnabled();


CaptioningManager类的documentation非常简短,我不知道为什么isEnabled()方法在各种设备上返回不同的值(truefalse)。

有人知道,什么决定返回的值,或者我如何更改该值?

最佳答案

如果用户在系统级别启用了字幕(设置->可访问性->字幕),则返回true,否则返回false。

对于在框架中确实具有该设置的android版本,CCL会尊重该设置并将其用于样式轨道。对于早期版本的Android,它提供了一个首选项页面,该页面提供了相同的选项集。

10-06 03:57