服务bindService()方法启动服务
public class MainActivity extends Activity {
private EditText studentno;
private ServiceConnection conn = new StudentServiceConnection();
private IStundent iStundent;
private TextView resultView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
resultView = (TextView) this.findViewById(R.id.resultView);
studentno = (EditText) this.findViewById(R.id.studentno);
Button button = (Button) this.findViewById(R.id.button);
button.setOnClickListener(new ButtonClickListener());
Intent service = new Intent(this, StudentService.class);
bindService(service, conn, BIND_AUTO_CREATE);
}
private class StudentServiceConnection implements ServiceConnection{
public void onServiceConnected(ComponentName name, IBinder service) {
iStundent = (IStundent)service;
}
public void onServiceDisconnected(ComponentName name) {
iStundent = null;
}
}
@Override
protected void onDestroy() {
unbindService(conn);
super.onDestroy();
}
private final class ButtonClickListener implements View.OnClickListener{
public void onClick(View v) {
String no = studentno.getText().toString();
String name = iStundent.queryStudent(Integer.valueOf(no));
resultView.setText(name);
}
}
}
public class StudentService extends Service{
private String[] names = {"张飞","李小龙","赵薇"};
private IBinder binder = new StundentBinder();
public String query(int no){
if(no>0 && no<4){
return names[no - 1];
}
return null;
}
@Override
public IBinder onBind(Intent intent) {
return binder;
}
private class StundentBinder extends Binder implements IStundent{
public String queryStudent(int no) {
return query(no);
}
}
}
public interface IStundent {
public String queryStudent(int no);
}



服务bindService()方法启动服务的更多相关文章
- Android(java)学习笔记227:服务(service)之服务的生命周期 与 两种启动服务的区别
1.之前我们在Android(java)学习笔记171:Service生命周期 (2015-08-18 10:56)说明过,可以回头看看: 2.Service 的两种启动方法和区别: (1)Servi ...
- Android(java)学习笔记170:服务(service)之服务的生命周期 与 两种启动服务的区别
1.之前我们在Android(java)学习笔记171:Service生命周期 (2015-08-18 10:56)说明过,可以回头看看: 2.Service 的两种启动方法和区别: (1)Servi ...
- 批处理启动vm虚拟机服务 vm12启动无界面启动vm虚拟机系统 windows上如何操作服务 sc net启动关闭服务
windows(win10)批处理脚本 打开vm虚拟机的服务,并且开启无界面虚拟机 @echo off net start "vds" net start "VMAuth ...
- C#检查服务状态和启动关闭服务
WinForm 判断服务状态,显示服务名称和状态 https://blog.csdn.net/u013063880/article/details/78626200 C#获得服务,判断服务状态,启动服 ...
- Linux将程序添加到服务的方法(通用)
一:咱们通过这篇文章来演示怎么将某个程序作为服务(就类似Windows服务可以开机自动启动),这里以tomcat为例,已经亲测过: 二:步骤(最好用root用户来做这种事情,切换root用户记得su ...
- MySQL Install--CentOS 7配置MySQL服务和开启启动
创建MySQL服务 编辑文件: vim /usr/lib/systemd/system/mysql.service 录入下面内容: PS: 注意修改ExecStart脚本 [Unit]Descript ...
- svn启动服务
bin目录添加到环境变量classpathsvn --version 查看版本svnadmin create D:\\xx 创建本地中央仓库启动svn服务 cmd命令 svnserve -d -r D ...
- centos7也支持service命令启动服务吗,对于centos7 中的systemctl和旧的service命令的区别和联系
一.centos7也支持service命令启动服务吗 CentOS 7.0中一个最主要的改变,就是切换到了systemd.它用于替代红帽企业版Linux前任版本中的SysV和Upstart,对系统和服 ...
- WCF服务自我寄宿 Windows服务
WCF寄宿有自我寄宿跟IIS寄宿 服务代码: [ServiceContract] ---服务契约 public interface ICustomerService { [OperationContr ...
随机推荐
- ionic3中使用docker 完成build代码,更新过程记录。
1.若未安装cordova 需先安装cordova 包: npm install -g cordova 2.安装docker 可查看官方文档进行一步步的安装:https://docs.docker.c ...
- while循环与getopts处理
- 2019牛客暑期多校训练营(第八场) E I
E Explorer 题意:给出一个无向图,每条边有一个通过人数的上限和下限,一群人要一起从1号点走到n号点,这一群人一起走不能分开,问这群人的人数有多少种可以满足条件. 解法:不会做题解参考http ...
- ThreadLocal简单使用示例
ThreadLocal为每个线程提供单独的数据副本,线程间的数据为自身线程所独有(不存在共享变量问题),直接看代码 public class ThreadLocalTest { private sta ...
- 修改TOMCAT服务的端口
1.进入tomcat配置文件的目录 [root@db200 conf]# cd /usr/local/tocat8/conf/ 2.打开配置文件 vim server.xml 找到Connector ...
- git 初始化提交项目
Git初始化本地已有项目,并推送到远端Git仓库操作1. 创建本地项目,在项目根目录执行git init命令git init 2. 在git服务器上创建一个仓库,这里使用GitHub创建一个仓库.例如 ...
- List Comprehension ()(一)
>>> L = [1,2,3,4,5] >>> L = [x+10 for x in L] >>> L [11, 12, 13, 14, 15] ...
- Reverse array
数组颠倒算法 #include <iostream> #include <iterator> using namespace std; void reverse(int* A, ...
- 获取浏览器IP
public static string GetLoginIP(HttpRequestBase request) { string loginip = " ...
- Python深度学习
序言 目的驱动型学习 概念解释 资料 https://www.tensorflow.org/ https://www.imooc.com/video/17186 https://www.cnblogs ...