我使用Opentok集成了视频聊天功能,但它的效果非常好,但我现在面临的问题是,只有当我们双方都打开应用程序时它才能运行。即使其他用户没有打开应用程序,我们也应该能够进行视频通话。请帮助我,并提前感谢。
答案 0 :(得分:2)
首先,您需要一个控制在后台运行的连接的服务,该服务生成自己的Thread()
以执行和保留Server
连接。
如果您希望服务“无法使用”,请在服务开始时使用START_STICKY
变量。
请求WAKE_LOCK
保持活着PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
WakeLock wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,
"MyWakelockTag");
wakeLock.acquire();
并包含权限
android.permission.WAKE_LOCK
然后,让服务启动主活动以查看连接。
您可以使用startActivityForResult
通过Intent服务执行此操作,并确保在视图上正确启动连接,或者已经绑定到活动传递正确的veriables / parceables / etc。请记住使用onPause进行有效管理
这是一些重写,但也不是太糟糕。可以在CSIPSimple应用程序代码中找到适用于此的良好示例代码。