首页 > 软件 > Android启动服务后就不能进行交互的是什么服务

Android启动服务后就不能进行交互的是什么服务

软件 2023-05-31

关于android编程中service和activity的区别

在Android编程中,Service和Activity同为四大组件,但是各自所负责的功能是不一样的

Activity主要负责前台界面的显示。

Service主要负责需要长期运行的任务。

在实际开发中,会经常写Activity和Service之间的通信,一般在Activity中启Service(后台服务)。

Activity中启动Service的方式有两种:

  1. startService()

    使用startService启动的服务生命周期和启动他的组件无关,并且可以无限期在后台运行。所以需要手动停止服务,有两种停止的方法,第一种当服务完成后即可调用stopSelf()停止,也可以由其他组件调用stopService()方法来停止。

  2. bindService()

    使用bindService()方法启用服务,组件和服务会绑定在一起,组件一旦被销毁,服务业随之中止,bindService还有 “不求同时生,必须同时死“的特点。

这两大组件都需要在AndroidManifest.xml(清单文件)中注册。


android客户端和服务器端怎么交互

android客户端和服务器端是基于IntentService的,具体如下:

  1. 后台使用简单的servlet,支持GET或POST。这个servlet最终返回给前台一个字符串flag,值是true或false,表示登录是否成功。

  2. 然后在安卓的ADT上创建一个安卓项目,建立两个Activity,分别作为登录界面和登录成功界面。

  3. HTTP的访问公共类,用于处理GET和POST请求。

  4. IntentService服务,用于在后台以队列方式处理耗时操作。

  5. 在AndroidManifest.xml中注册IntentService。注意uses-permission节点,为程序开启访问网络的权限。

  6. 登陆界面处理,注意按钮监听事件中,使用Intent将要传递的值传给service。接收广播类中,同样使用Intent将要传递的值传给下一个Activity。在onCreate()中,动态注册接收广播类的实例receiver。在接收广播类中,不要使用完毕后忘记注销接收器,否则会报一个Are you missing a call to unregisterReceiver()? 的异常。




android服务问题

第一个问题:不是的,动态开启服务的话你可以在别的地方关闭服务。 第二个问题:绑定服务主要是为了更好的和Activity进行交互,可以试试刷新界面等。 希望对你有帮助。

标签:Android开发 Android 开发 Android应用

大明白知识网 Copyright © 2020-2022 www.wangpan131.com. Some Rights Reserved. 京ICP备11019930号-18