aidl介绍
package com.test.localservice; import com.test.remoteservice.Iservice;
import com.test.remoteservice.Iservice.Stub; import android.os.Bundle;
import android.os.IBinder;
import android.os.RemoteException;
import android.app.Activity;
import android.content.ComponentName;
import android.content.Intent;
import android.content.ServiceConnection;
import android.view.Menu;
import android.view.View; public class MainActivity extends Activity { private MyConn conn; private Iservice iservice; //是我们的中间人对象
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); //[1]调用bindservice 获取我们定义的中间人对象 Intent intent = new Intent();
//设置一个action
intent.setAction("com.itheima.remoteservice");
conn = new MyConn();
//[2]目的是为了获取我们定义的中间人对象
bindService(intent, conn,BIND_AUTO_CREATE); } //点击按钮 调用第8个应用程序服务里面的方法
public void click(View v) {
try {
iservice.callTestMethod();
} catch (RemoteException e) {
e.printStackTrace();
}
} //当Activity销毁的时候调用
@Override
protected void onDestroy() {
//当Activity销毁的时候 取消绑定服务
unbindService(conn);
super.onDestroy();
} //监视服务的状态
private class MyConn implements ServiceConnection{ @Override
public void onServiceConnected(ComponentName name, IBinder service) { //获取中间人对象 iservice = Stub.asInterface(service);
} @Override
public void onServiceDisconnected(ComponentName name) { } } }
aidl介绍的更多相关文章
- Android开发之IPC进程间通信-AIDL介绍及实例解析
		
一.IPC进程间通信 IPC是进程间通信方法的统称,Linux IPC包括以下方法,Android的进程间通信主要采用是哪些方法呢? 1. 管道(Pipe)及有名管道(named pipe):管道可用 ...
 - AIDL介绍和实例讲解
		
前言 为使应用程序之间能够彼此通信,Android提供了IPC (Inter Process Communication,进程间通信)的一种独特实现: AIDL (Android Interface ...
 - AIDL旅行记之开篇AIDL基本介绍
		
嗨,伙伴们,计划了一周的想法最终要在这一刻实现了. 一直都想写一个博客专栏,但是总是鼓不起勇气来写.感觉自己的水量还不太够.哈哈.这次下定决心,与小伙伴们一起分享下Android中的AIDL,从此,也 ...
 - Android之AIDL知识总结
		
1.AIDL介绍 AIDL是一个缩写,全称是Android Interface Definition Language,翻译为Android接口定义语言.主要用于线程之间的通信,本文主要以不同应用之间 ...
 - Android探索之旅 | AIDL原理和实例讲解
		
轉載自http://www.jianshu.com/p/ef86f682a8f9 -- 作者 谢恩铭 转载请注明出处 前言 为使应用程序之间能够彼此通信,Android提供了IPC (Inter Pr ...
 - Android Service总结06 之AIDL
		
Android Service总结06 之AIDL 版本 版本说明 发布时间 发布人 V1.0 初始版本 2013-04-03 Skywang 1 AIDL介绍 AIDL,即And ...
 - android学习日记26--AIDL之进程间的通信
		
1.AIDL介绍 AIDL:Android Interface Definition Language,即Android接口定义语言. 由于每个应用程序都运行在自己的进程空间,并且可以从应用程序UI运 ...
 - Android中的服务
		
Android中的服务 四大组件都是运行在主线程 Android中的服务,是在后台运行 .可以理解成是在后台运行并且是没有界面的Activity. Foreground process 前台进程 ,用 ...
 - Android学习第8天
		
进程的概念 a) 四大组件都运行在主线程中 b) 服务是没有界面的,可理解为没有界面的Activity c) 进程的优先级 i. ...
 
随机推荐
- MySQL测试题——开发公司人事管理系统,包括 Employee表 和 Department表
			
一.需求分析 我们的开发团队,计划开发一款公司人事管理软件,用于帮助中小型企业进行更加高效的人事管理.现在需要对数据库部分进行设计和开发,根据对需求和立项的分析,我们确定该数据库中最核心的两个表为员工 ...
 - 我踩过的python的坑
			
1. string中Template用法 变量名不能是${tradeDate+1}, python无法识别其为变量,应改为 ${tradeDate1} 变量替换的语句:data_new = Templ ...
 - NoSQL是什么(一)
			
最常见的数据库可以分为下面的两种类型: RDBMS(关系型数据库):常见的关系型数据库有 Oracle.DB2.Microsoft SQL Server.Microsoft Access.MySQL: ...
 - centos7 自动交互expect  安装使用
			
1.安装 https://www.cnblogs.com/rocky-AGE-24/p/7256800.html 安装expect命令 两种方式yum安装 yum -y install expect ...
 - Linux系统使用crt登录之后如何显示横幅消息
			
打开 /etc/motd 编辑内容即可 效果如下
 - 【填坑往事】使用Rxjava2的distinct操作符处理自定义数据类型去重的问题
			
最近碰到一个问题,自定义数据类型列表中出现了重复数据,需要去重.处理去重的办法很多,比如借助Set集合类,使用双重循环拿每一个元素和其他元素对比等.这里介绍一种简单而且比较优雅的方式:使用Rxjava ...
 - vue实现引用less,sass全局变量
			
1.npm install sass-resources-loader --save-dev: 2.build/utils.js中,修改 function resolveResource(name) ...
 - 使用.NET 6开发TodoList应用(25)——实现RefreshToken
			
系列导航及源代码 使用.NET 6开发TodoList应用文章索引 需求 在上一篇文章使用.NET 6开发TodoList应用(24)--实现基于JWT的Identity功能中,我们演示了如何使用.N ...
 - 从内存管理原理,窥探OS内存管理机制
			
摘要:本文将从最简单的内存管理原理说起,带大家一起窥探OS的内存管理机制,由此熟悉底层的内存管理机制,写出高效的应用程序. 本文分享自华为云社区<探索OS的内存管理原理>,作者:元闰子 . ...
 - docker的安装以及使用命令
			
docker的安装 安装docker https://docs.docker.com/install/linux/docker-ce/centos/#set-up-the-repository 从 2 ...