如何在使用奥利奥API Kurento运行Instant Messaging的后台服务?(How t

2019-10-30 12:52发布

Android的奥利奥已经发布了上运行的后台服务/工作的限制。 服务现在不表现得像普通的奥利奥,因为他们习惯了。

但是,如果我有什么为24 * 7的运行在后台服务的即时消息。

我开发使用即时消息应用程序kurento第三方API 。 要做到这一点,我将不得不运行与服务器的新邮件通信的后台服务。

下然后奥利奥其工作的罚款。

如何防止android系统地不敢杀的服务?

我不想显示通知,而我的服务正在运行,因为我将运行我的服务,为24 * 7的新消息,所以感觉价格便宜的UI体验,以用户的所有时间。

Answer 1:

牛轧糖版本后回来的路上地面服务改变。 如果你希望你的后台服务工作,你可以做下面的代码中提到。 在IntentService,生命周期方法的onCreate()被调用。 而在这个方法中添加以下代码。

  @Override
public void onCreate() {
    super.onCreate();

    int NOTIFICATION_ID = (int) (System.currentTimeMillis()%10000);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
        startForeground(NOTIFICATION_ID, new Notification.Builder(this).build());
    }

}

而当你调用服务,通过打击代码中调用你的服务

  Intent intent = new Intent(context, FindNumberService.class);
    intent.putExtras(bundle);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
        context.startForegroundService(intent);
    }
    else {
        context.startService(intent);
    }

希望这会帮助你。



Answer 2:

至于做的方式,则应修改输入信号的逻辑信道传入消息推送通知使用。 当应用程序被切换到后台,你必须依靠具有高优先级推送通知。

并得到了推后,您可以进行所有需要的东西。



文章来源: How to run background service for Instant Messaging using Kurento API in Oreo?