博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
服务bindService()方法启动服务
阅读量:5297 次
发布时间:2019-06-14

本文共 2084 字,大约阅读时间需要 6 分钟。

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);}

 

转载于:https://www.cnblogs.com/heml/p/3515355.html

你可能感兴趣的文章
TCP/IP详解学习笔记(3)IP协议ARP协议和RARP协议
查看>>
简单【用户输入验证】
查看>>
python tkinter GUI绘制,以及点击更新显示图片
查看>>
HDU4405--Aeroplane chess(概率dp)
查看>>
CS0103: The name ‘Scripts’ does not exist in the current context解决方法
查看>>
20130330java基础学习笔记-语句_for循环嵌套练习2
查看>>
Spring面试题
查看>>
窥视SP2010--第一章节--SP2010开发者路线图
查看>>
MVC,MVP 和 MVVM 的图示,区别
查看>>
C语言栈的实现
查看>>
代码为什么需要重构
查看>>
TC SRM 593 DIV1 250
查看>>
SRM 628 DIV2
查看>>
2018-2019-2 20165314『网络对抗技术』Exp5:MSF基础应用
查看>>
Python-S9-Day127-Scrapy爬虫框架2
查看>>
使用Chrome(PC)调试移动设备上的网页
查看>>
使用gitbash来链接mysql
查看>>
SecureCRT的使用方法和技巧(详细使用教程)
查看>>
右侧导航栏(动态添加数据到list)
查看>>
81、iOS本地推送与远程推送详解
查看>>