CastCompanionLibrary - 数据应用通知?

时间:2014-03-31 01:12:01

标签: chromecast google-cast

我有一个数据应用程序(绘图应用程序),我想使用CastCompanionLibrary的假定内置功能,只要应用程序不可见,就会发出通知,但它仍在进行投射。

我的“onResume”中有以下内容:

mDataCastManager = DataCastManager.initialize(context, APPLICATION_ID, NAMESPACE);
            mDataCastManager.enableFeatures(DataCastManager.FEATURE_NOTIFICATION |
                    DataCastManager.FEATURE_LOCKSCREEN   |
                    DataCastManager.FEATURE_DEBUGGING);
// ...snip...

mDataCastManager.incrementUiCounter();

以及我的“onPause”中的以下内容:

mDataCastManager.decrementUiCounter();

然而,没有通知显示。我需要做些什么不同的事情?我在文档中找不到任何内容,我无法理解源代码。实际上,我根本没有在源中看到任何处理通知的地方。我错过了什么?

谢谢!

1 个答案:

答案 0 :(得分:2)

DataCastManager没有任何内置通知,因为以数据为中心的应用程序的性质可能差异很大,因此通知中应该显示的内容并不清楚。在我需要定义一个的情况下,我遵循以下步骤:

  • 查看VidoCastNotificationService并复制并创建自己的版本,例如MyDataNotificationService。在那里,您可以定义通知的外观,需要调用的PendigIntents等等。大部分代码应该相同。
  • 延长DataCastManager。出于同样的原因,该类再次非常通用,因此您需要对其进行子类化并在需要时添加自己的逻辑。在那里,通过查看类似方法在VideoCastManager中的作用,编写一个名为startNotificationService的方法。
  • 您很可能希望在连接应用程序时启动通知服务,因此请遵循VideoCastManager中调用的模式,并在子类中执行类似的操作。

您需要在子类中执行一些其他非常有用的操作,但这是一个非常高级的大纲。我已经为幻灯片应用程序做了这个,但还没有100%完成,最近一直忙于其他一些更紧迫的活动;希望在某些时候(未来不太远)我有机会完成和开源,所以人们可以有一种方式来做我上面概述的;同时尝试自己的版本并在遇到问题时提出问题。