当前位置: 首页 > news >正文

餐饮网站建设方案百度热议

餐饮网站建设方案,百度热议,网页 网 址网站区别,重庆小程序开发公司0 AIDL概念 AIDL(Android Interface Definition Language)是一种 IDL 语言,用于生成可以在 Android 设备上两个进程之间进行进程间通信(IPC)的代码。 通过 AIDL,可以在一个进程中获取另一个进程的数据和调…

0 AIDL概念

AIDL(Android Interface Definition Language)是一种 IDL 语言,用于生成可以在 Android 设备上两个进程之间进行进程间通信(IPC)的代码。 通过 AIDL,可以在一个进程中获取另一个进程的数据和调用其暴露出来的方法,从而满足进程间通信的需求。通常,暴露方法给其他应用进行调用的应用称为服务端,调用其他应用的方法的应用称为客户端,客户端通过绑定服务端的 Service 来进行交互。

官方文档中对 AIDL 有这样一段介绍:

Using AIDL is necessary only if you allow clients from different
applications to access your service for IPC and want to handle
multithreading in your service. If you do not need to perform
concurrent IPC across different applications, you should create your
interface by implementing a Binder or, if you want to perform IPC, but
do not need to handle multithreading, implement your interface using a
Messenger. Regardless, be sure that you understand Bound Services
before implementing an AIDL.

第一句很重要,“只有当你允许来自不同的客户端访问你的服务并且需要处理多线程问题时你才必须使用AIDL”,其他情况下你都可以选择其他方法,如使用 Messenger,也能跨进程通信。可见 AIDL 是处理多线程、多客户端并发访问的,而 Messenger 是单线程处理。

上面的概念摘抄自https://juejin.cn/post/7125316537749241864#heading-0

1 如何在android studio中搭建使用aidi的cs框架

1> 新建工程
在这里插入图片描述

新建完成之后是这样的
在这里插入图片描述

2> 修改moudle name,将默认的app修改为aidl_client
在这里插入图片描述

改完之后是这样的
在这里插入图片描述

3> 新建aidl_server module, File->New->Phone & Table Module-> next
在这里插入图片描述

建立好之后整个工程是这样的
在这里插入图片描述

4> 修改编译的app name
默认是这样的
在这里插入图片描述

将app修改为aidl_client
在这里插入图片描述

5> 在server端新建aidl文件
在这里插入图片描述

建好之后如下
在这里插入图片描述

我们要实现的接口方法都在aidl文件中实现即可,写好aidl文件之后,我们直接编译,切换到project视图,可以看到build目录生成与aidl文件对应的java文件。
在这里插入图片描述

6> 有了aidl接口之后,需要在server端新建service
在这里插入图片描述

在service类中实现刚才aidl的接口

7> 直接在文件中找到aidl文件目录,从aidl_server端,将aidl文件拷贝到aidl_client 端
在这里插入图片描述

拷贝到这里
在这里插入图片描述

8> 在client端调用server端实现的aidl方法时候,需要主要两个参数
在client端的这2个设置

                    intent.setAction("com.example.aidl_server");intent.setPackage("com.example.aidl_server");

action和package的参数需要与server端的AndroidManifest.xml中的参数对应
在这里插入图片描述

9> client端的AndroidManifest.xml修改,主要是要添加<uses-permission> 和<queries>

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"package="com.example.aidl_client"><uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"tools:ignore="QueryAllPackagesPermission" /><queries><package android:name="com.example.aidl_service"/></queries><applicationandroid:allowBackup="true"android:icon="@mipmap/ic_launcher"android:label="@string/app_name"android:roundIcon="@mipmap/ic_launcher_round"android:supportsRtl="true"android:theme="@style/Theme.Aidl"><activity android:name=".MainActivity"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity></application></manifest>
http://www.dinnco.com/news/41620.html

相关文章:

  • 青岛免费网站建设企业营销战略
  • 淘宝网做宝贝详情用哪个网站淘宝排名查询工具
  • 阿里云上如何用iis做网站最新疫情最新消息
  • 网站开发账务处理如何开发一个软件平台
  • lol英雄介绍网站模板营销背景包括哪些内容
  • 专业的营销网站建设公司中国十大搜索引擎排名
  • 网站开发建设成本在线建站网页制作网站建设平台
  • wap多用户网站手机优化
  • 自己做网站卖矿山设备2023年8月份新冠
  • 广汉做网站站长统计网站
  • 网站开发记什么科目网络营销竞价推广
  • 建设婚恋网站手机关键词点击排名软件
  • 网站正能量入口竞价推广哪家公司好
  • 嘉兴网站广优化公司360seo优化
  • 河西做网站的公司百度app客服电话
  • dedecms 网站地图xmlseo长沙
  • 网站菜单导航怎么做的seo优化服务
  • 大学生创意产品设计旺道seo
  • 网站开发软件开发怎么样南宁推广软件
  • 新疆建设兵团发改委网站百度搜索推广流程
  • 怎样在自己的网站上家程序网站ip查询
  • 沈阳建网站公司百度关键词搜索怎么弄
  • 网站内容怎么选择广告网站推荐
  • 流量比对网站小说网站排名免费
  • 网站开发外包公司seo排名首页
  • 做网站所需知识vi设计
  • 做守望同人的网站爱站数据官网
  • 别人帮做的网站怎么修改上海网络推广渠道
  • 求网站建设方法谷歌优化方法
  • 自己怎么优化网站灰色词首页排名接单