与前台服务android通信

与前台服务android通信,第1张

概述这是第一个问题,但我已经有一段时间了. 我有什么: 我正在构建一个播放音频流和在线播放列表的Android应用.一切都工作正常,但我在与我的服务沟通时遇到问题. 音乐正在服务中播放,以startForeground开头,所以它不会被杀死. 我需要通过我的活动与服务进行沟通,以获取曲目名称,图像和更多内容. 我的问题是什么: 我想我需要使用bindService(而不是我当前的startServic 这是第一个问题,但我已经有一段时间了.

我有什么:

我正在构建一个播放音频流和在线播放列表的Android应用.一切都工作正常,但我在与我的服务沟通时遇到问题.

音乐正在服务中播放,以startForeground开头,所以它不会被杀死.

我需要通过我的活动与服务进行沟通,以获取曲目名称,图像和更多内容.

我的问题是什么:

我想我需要使用bindService(而不是我当前的startService)启动我的服务,以便活动可以与它通信.

但是,当我这样做时,我的服务在关闭Activity后被杀死.

我怎样才能得到这两个?绑定和前台服务?

谢谢!

解决方法 不,bindService不会启动服务.它只是通过服务连接绑定到服务,因此您将拥有访问/控制它的服务实例.

根据您的要求,我希望您将使用MediaPlayer的实例.您也可以从Activity启动服务,然后绑定它.如果服务已经运行onStartCommand()将被调用,您可以检查MediaPlayer实例是否为null然后只返回START_STICKY.

改变你这样的活动..

public class MainActivity extends ActionBaractivity {    CustomService customService = null;    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        // start the service,even if already running no problem.        startService(new Intent(this,CustomService.class));        // bind to the service.        bindService(new Intent(this,CustomService.class),mConnection,Context.BIND_auto_CREATE);    }    private ServiceConnection mConnection = new ServiceConnection() {        @OverrIDe        public voID onServiceConnected(Componentname componentname,IBinder iBinder) {            customService = ((CustomService.LocalBinder) iBinder).getInstance();            // Now you have the instance of service.        }        @OverrIDe        public voID onServicedisconnected(Componentname componentname) {            customService = null;        }    };    @OverrIDe    protected voID onDestroy() {        super.onDestroy();        if (customService != null) {            // Detach the service connection.            unbindService(mConnection);        }    }}

我有与MediaPlayer服务类似的应用程序.如果这种方法对您没有帮助,请告诉我.

总结

以上是内存溢出为你收集整理的与前台服务android通信全部内容,希望文章能够帮你解决与前台服务android通信所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1148943.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存