3.5 Binance_interface APP U本位合约交易-基础订单

2024-02-11 19:04

本文主要是介绍3.5 Binance_interface APP U本位合约交易-基础订单,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Binance_interface U本位合约交易-基础订单

  • Github地址
  • PyTed量化交易研究院
量化交易研究群(VX) = py_ted

目录

  • Binance_interface U本位合约交易-基础订单
    • 1. APP U本位合约交易-基础订单函数总览
    • 2. 模型实例化
    • 3. 下单(API原始接口) set_order
    • 4. 查询订单(API原始接口) get_order
    • 5. 查看当前挂单 get_orders_pending
    • 6. 查看当前开仓挂单 get_orders_pending_open
    • 7. 查看当前平仓挂单 get_orders_pending_close
    • 8. 等待订单成交 wait_order_FILLED
    • 9. 撤销订单(API原始接口) cancel_order

1. APP U本位合约交易-基础订单函数总览

方法解释
set_order下单(API原始接口)
get_order查询订单(API原始接口)
get_orders_pending查看当前挂单
get_orders_pending_open查看当前开仓挂单
get_orders_pending_close查看当前平仓挂单
wait_order_FILLED等待订单成交
cancel_order撤销订单(API原始接口)

2. 模型实例化

from binance_interface.app import BinanceUM
from binance_interface.app.utils import eprint
import paux.date
# 转发:需搭建转发服务器,可参考:https://github.com/pyted/binance_resender
proxy_host = None
key = 'xxxx'
secret = 'xxxx'binanceUM = BinanceUM(key=key,secret=secret,proxy_host=proxy_host,timezone='Asia/Shanghai',
)
trade = binanceUM.trade

3. 下单(API原始接口) set_order

set_order_result = trade.set_order(symbol='MANAUSDT',side='BUY',type='LIMIT',price='0.4',quantity=15,positionSide='LONG',timeInForce='GTC',
)
eprint(set_order_result)

输出:

>>> {'code': 200,
>>>  'data': {'orderId': 10508381477,
>>>           'symbol': 'MANAUSDT',
>>>           'status': 'NEW',
>>>           'clientOrderId': '3ilBoDldzzHd16kvCqt99x',
>>>           'price': '0.4000',
>>>           'avgPrice': '0.00',
>>>           'origQty': '15',
>>>           'executedQty': '0',
>>>           'cumQty': '0',
>>>           'cumQuote': '0.0000',
>>>           'timeInForce': 'GTC',
>>>           'type': 'LIMIT',
>>>           'reduceOnly': False,
>>>           'closePosition': False,
>>>           'side': 'BUY',
>>>           'positionSide': 'LONG',
>>>           'stopPrice': '0.0000',
>>>           'workingType': 'CONTRACT_PRICE',
>>>           'priceProtect': False,
>>>           'origType': 'LIMIT',
>>>           'priceMatch': 'NONE',
>>>           'selfTradePreventionMode': 'NONE',
>>>           'goodTillDate': 0,
>>>           'updateTime': 1706118925588},
>>>  'msg': ''}

4. 查询订单(API原始接口) get_order

orderId = set_order_result['data']['orderId']
order_result = trade.get_order(symbol='MANAUSDT',orderId=orderId,
)
eprint(order_result)

输出:

>>> {'code': 200,
>>>  'data': {'orderId': 10508381477,
>>>           'symbol': 'MANAUSDT',
>>>           'status': 'NEW',
>>>           'clientOrderId': '3ilBoDldzzHd16kvCqt99x',
>>>           'price': '0.4000',
>>>           'avgPrice': '0.00',
>>>           'origQty': '15',
>>>           'executedQty': '0',
>>>           'cumQuote': '0.0000',
>>>           'timeInForce': 'GTC',
>>>           'type': 'LIMIT',
>>>           'reduceOnly': False,
>>>           'closePosition': False,
>>>           'side': 'BUY',
>>>           'positionSide': 'LONG',
>>>           'stopPrice': '0.0000',
>>>           'workingType': 'CONTRACT_PRICE',
>>>           'priceProtect': False,
>>>           'origType': 'LIMIT',
>>>           'priceMatch': 'NONE',
>>>           'selfTradePreventionMode': 'NONE',
>>>           'goodTillDate': 0,
>>>           'time': 1706118925588,
>>>           'updateTime': 1706118925588},
>>>  'msg': ''}

5. 查看当前挂单 get_orders_pending

# 查询symbol 从start到end全部未成交订单
orders_pending_result = trade.get_orders_pending(symbol='',  # 默认为空,表示全部产品start='2024-01-01 10:00:00',  # 默认为空,表示不限定订单的起始时间end='2024-12-26',  # 默认为空,表示不限定订单的终止时间
)
eprint(orders_pending_result, length=30)

输出:

>>> {'code': 200,
>>>  'data': [{'orderId': 38469242721,
>>>            'symbol': 'ADAUSDT',
>>>            'status': 'NEW',
>>>            'clientOrderId': 'ios_8Caon6uUaXDwTaiUu7dY',
>>>            'price': '0.50000',
>>>            'avgPrice': '0',
>>>            'origQty': '20',
>>>            'executedQty': '0',
>>>            'cumQuote': '0.00000',
>>>            'timeInForce': 'GTC',
>>>            'type': 'LIMIT',
>>>            'reduceOnly': False,
>>>            'closePosition': False,
>>>            'side': 'SELL',
>>>            'positionSide': 'SHORT',
>>>            'stopPrice': '0',
>>>            'workingType': 'CONTRACT_PRICE',
>>>            'priceProtect': False,
>>>            'origType': 'LIMIT',
>>>            'priceMatch': 'NONE',
>>>            'selfTradePreventionMode': 'NONE',
>>>            'goodTillDate': 0,
>>>            'time': 1706118620980,
>>>            'updateTime': 1706118620980},
>>>           {'orderId': 38469210055,
>>>            'symbol': 'ADAUSDT',
>>>            'status': 'NEW',
>>>            'clientOrderId': 'ios_Odv0cISfWne64Tslg79N',
>>>            'price': '0.43000',
>>>            'avgPrice': '0',
>>>            'origQty': '23',
>>>            'executedQty': '0',
>>>            'cumQuote': '0.00000',
>>>            'timeInForce': 'GTC',
>>>            'type': 'LIMIT',
>>>            'reduceOnly': False,
>>>            'closePosition': False,
>>>            'side': 'BUY',
>>>            'positionSide': 'LONG',
>>>            'stopPrice': '0',
>>>            'workingType': 'CONTRACT_PRICE',
>>>            'priceProtect': False,
>>>            'origType': 'LIMIT',
>>>            'priceMatch': 'NONE',
>>>            'selfTradePreventionMode': 'NONE',
>>>            'goodTillDate': 0,
>>>            'time': 1706118533703,
>>>            'updateTime': 1706118533703},
>>>           {'orderId': 10485110992,
>>>            'symbol': 'MANAUSDT',
>>>            'status': 'NEW',
>>>            'clientOrderId': 'CqSdY5QH4x1UWdUypMvoAl',
>>>            'price': '0.5348',
>>>            'avgPrice': '0',
>>>            'origQty': '10',
>>>            'executedQty': '0',
>>>            'cumQuote': '0.0000',
>>>            'timeInForce': 'GTC',
>>>            'type': 'LIMIT',
>>>            'reduceOnly': True,
>>>            'closePosition': False,
>>>            'side': 'SELL',
>>>            'positionSide': 'LONG',
>>>            'stopPrice': '0',
>>>            'workingType': 'CONTRACT_PRICE',
>>>            'priceProtect': False,
>>>            'origType': 'LIMIT',
>>>            'priceMatch': 'NONE',
>>>            'selfTradePreventionMode': 'NONE',
>>>            'goodTillDate': 0,
>>>            'time': 1705832967589,
>>>            'updateTime': 1705832967589},
>>>           {'orderId': 10508354973,
>>>            'symbol': 'MANAUSDT',
>>>            'status': 'NEW',
>>>            'clientOrderId': 'ios_pZwB8GcFYVAvxxpyCDaC',
>>>            'price': '0.5000',
>>>            'avgPrice': '0',
>>>            'origQty': '20',
>>>            'executedQty': '0',
>>>            'cumQuote': '0.0000',
>>>            'timeInForce': 'GTC',
>>>            'type': 'LIMIT',
>>>            'reduceOnly': False,
>>>            'closePosition': False,
>>>            'side': 'SELL',
>>>            'positionSide': 'SHORT',
>>>            'stopPrice': '0',
>>>            'workingType': 'CONTRACT_PRICE',
>>>            'priceProtect': False,
>>>            'origType': 'LIMIT',
>>>            'priceMatch': 'NONE',
>>>            'selfTradePreventionMode': 'NONE',
>>>            'goodTillDate': 0,
>>>            'time': 1706118636567,
>>>            'updateTime': 1706118636567},
>>>           {'orderId': 10508381477,
>>>            'symbol': 'MANAUSDT',
>>>            'status': 'NEW',
>>>            'clientOrderId': '3ilBoDldzzHd16kvCqt99x',
>>>            'price': '0.4000',
>>>            'avgPrice': '0',
>>>            'origQty': '15',
>>>            'executedQty': '0',
>>>            'cumQuote': '0.0000',
>>>            'timeInForce': 'GTC',
>>>            'type': 'LIMIT',
>>>            'reduceOnly': False,
>>>            'closePosition': False,
>>>            'side': 'BUY',
>>>            'positionSide': 'LONG',
>>>            'stopPrice': '0',
>>>            'workingType': 'CONTRACT_PRICE',
>>>            'priceProtect': False,
>>>            'origType': 'LIMIT',
>>>            'priceMatch': 'NONE',
>>>            'selfTradePreventionMode': 'NONE',
>>>            'goodTillDate': 0,
>>>            'time': 1706118925588,
>>>            'updateTime': 1706118925588}],
>>>  'msg': ''}
# 查询symbol 从start到end全部未成交订单
orders_pending_result = trade.get_orders_pending(symbol='MANAUSDT',  # 默认为空,表示全部产品start='2024-01-01 10:00:00',  # 默认为空,表示不限定订单的起始时间end='2024-12-26',  # 默认为空,表示不限定订单的终止时间
)
eprint(orders_pending_result, length=30)

输出:

>>> {'code': 200,
>>>  'data': [{'orderId': 10485110992,
>>>            'symbol': 'MANAUSDT',
>>>            'status': 'NEW',
>>>            'clientOrderId': 'CqSdY5QH4x1UWdUypMvoAl',
>>>            'price': '0.5348',
>>>            'avgPrice': '0',
>>>            'origQty': '10',
>>>            'executedQty': '0',
>>>            'cumQuote': '0.0000',
>>>            'timeInForce': 'GTC',
>>>            'type': 'LIMIT',
>>>            'reduceOnly': True,
>>>            'closePosition': False,
>>>            'side': 'SELL',
>>>            'positionSide': 'LONG',
>>>            'stopPrice': '0',
>>>            'workingType': 'CONTRACT_PRICE',
>>>            'priceProtect': False,
>>>            'origType': 'LIMIT',
>>>            'priceMatch': 'NONE',
>>>            'selfTradePreventionMode': 'NONE',
>>>            'goodTillDate': 0,
>>>            'time': 1705832967589,
>>>            'updateTime': 1705832967589},
>>>           {'orderId': 10508354973,
>>>            'symbol': 'MANAUSDT',
>>>            'status': 'NEW',
>>>            'clientOrderId': 'ios_pZwB8GcFYVAvxxpyCDaC',
>>>            'price': '0.5000',
>>>            'avgPrice': '0',
>>>            'origQty': '20',
>>>            'executedQty': '0',
>>>            'cumQuote': '0.0000',
>>>            'timeInForce': 'GTC',
>>>            'type': 'LIMIT',
>>>            'reduceOnly': False,
>>>            'closePosition': False,
>>>            'side': 'SELL',
>>>            'positionSide': 'SHORT',
>>>            'stopPrice': '0',
>>>            'workingType': 'CONTRACT_PRICE',
>>>            'priceProtect': False,
>>>            'origType': 'LIMIT',
>>>            'priceMatch': 'NONE',
>>>            'selfTradePreventionMode': 'NONE',
>>>            'goodTillDate': 0,
>>>            'time': 1706118636567,
>>>            'updateTime': 1706118636567},
>>>           {'orderId': 10508381477,
>>>            'symbol': 'MANAUSDT',
>>>            'status': 'NEW',
>>>            'clientOrderId': '3ilBoDldzzHd16kvCqt99x',
>>>            'price': '0.4000',
>>>            'avgPrice': '0',
>>>            'origQty': '15',
>>>            'executedQty': '0',
>>>            'cumQuote': '0.0000',
>>>            'timeInForce': 'GTC',
>>>            'type': 'LIMIT',
>>>            'reduceOnly': False,
>>>            'closePosition': False,
>>>            'side': 'BUY',
>>>            'positionSide': 'LONG',
>>>            'stopPrice': '0',
>>>            'workingType': 'CONTRACT_PRICE',
>>>            'priceProtect': False,
>>>            'origType': 'LIMIT',
>>>            'priceMatch': 'NONE',
>>>            'selfTradePreventionMode': 'NONE',
>>>            'goodTillDate': 0,
>>>            'time': 1706118925588,
>>>            'updateTime': 1706118925588}],
>>>  'msg': ''}

6. 查看当前开仓挂单 get_orders_pending_open

# 参数positionSide默认值为'',表示全部多单和空单
orders_pending_open_result = trade.get_orders_pending_open(symbol='MANAUSDT',
)
eprint(orders_pending_open_result, length=30)

输出:

>>> {'code': 200,
>>>  'data': [{'orderId': 10508354973,
>>>            'symbol': 'MANAUSDT',
>>>            'status': 'NEW',
>>>            'clientOrderId': 'ios_pZwB8GcFYVAvxxpyCDaC',
>>>            'price': '0.5000',
>>>            'avgPrice': '0',
>>>            'origQty': '20',
>>>            'executedQty': '0',
>>>            'cumQuote': '0.0000',
>>>            'timeInForce': 'GTC',
>>>            'type': 'LIMIT',
>>>            'reduceOnly': False,
>>>            'closePosition': False,
>>>            'side': 'SELL',
>>>            'positionSide': 'SHORT',
>>>            'stopPrice': '0',
>>>            'workingType': 'CONTRACT_PRICE',
>>>            'priceProtect': False,
>>>            'origType': 'LIMIT',
>>>            'priceMatch': 'NONE',
>>>            'selfTradePreventionMode': 'NONE',
>>>            'goodTillDate': 0,
>>>            'time': 1706118636567,
>>>            'updateTime': 1706118636567},
>>>           {'orderId': 10508381477,
>>>            'symbol': 'MANAUSDT',
>>>            'status': 'NEW',
>>>            'clientOrderId': '3ilBoDldzzHd16kvCqt99x',
>>>            'price': '0.4000',
>>>            'avgPrice': '0',
>>>            'origQty': '15',
>>>            'executedQty': '0',
>>>            'cumQuote': '0.0000',
>>>            'timeInForce': 'GTC',
>>>            'type': 'LIMIT',
>>>            'reduceOnly': False,
>>>            'closePosition': False,
>>>            'side': 'BUY',
>>>            'positionSide': 'LONG',
>>>            'stopPrice': '0',
>>>            'workingType': 'CONTRACT_PRICE',
>>>            'priceProtect': False,
>>>            'origType': 'LIMIT',
>>>            'priceMatch': 'NONE',
>>>            'selfTradePreventionMode': 'NONE',
>>>            'goodTillDate': 0,
>>>            'time': 1706118925588,
>>>            'updateTime': 1706118925588}],
>>>  'msg': ''}
# positionSide='SHORT' 限制结果为空单
orders_pending_open_result = trade.get_orders_pending_open(symbol='MANAUSDT',positionSide='SHORT',
)
eprint(orders_pending_open_result, length=30)

输出:

>>> {'code': 200,
>>>  'data': [{'orderId': 10508354973,
>>>            'symbol': 'MANAUSDT',
>>>            'status': 'NEW',
>>>            'clientOrderId': 'ios_pZwB8GcFYVAvxxpyCDaC',
>>>            'price': '0.5000',
>>>            'avgPrice': '0',
>>>            'origQty': '20',
>>>            'executedQty': '0',
>>>            'cumQuote': '0.0000',
>>>            'timeInForce': 'GTC',
>>>            'type': 'LIMIT',
>>>            'reduceOnly': False,
>>>            'closePosition': False,
>>>            'side': 'SELL',
>>>            'positionSide': 'SHORT',
>>>            'stopPrice': '0',
>>>            'workingType': 'CONTRACT_PRICE',
>>>            'priceProtect': False,
>>>            'origType': 'LIMIT',
>>>            'priceMatch': 'NONE',
>>>            'selfTradePreventionMode': 'NONE',
>>>            'goodTillDate': 0,
>>>            'time': 1706118636567,
>>>            'updateTime': 1706118636567}],
>>>  'msg': ''}

7. 查看当前平仓挂单 get_orders_pending_close

# 参数positionSide默认值为'',表示全部多单和空单
orders_pending_close_result = trade.get_orders_pending_close(symbol='MANAUSDT',
)
eprint(orders_pending_close_result, length=30)

输出:

>>> {'code': 200,
>>>  'data': [{'orderId': 10485110992,
>>>            'symbol': 'MANAUSDT',
>>>            'status': 'NEW',
>>>            'clientOrderId': 'CqSdY5QH4x1UWdUypMvoAl',
>>>            'price': '0.5348',
>>>            'avgPrice': '0',
>>>            'origQty': '10',
>>>            'executedQty': '0',
>>>            'cumQuote': '0.0000',
>>>            'timeInForce': 'GTC',
>>>            'type': 'LIMIT',
>>>            'reduceOnly': True,
>>>            'closePosition': False,
>>>            'side': 'SELL',
>>>            'positionSide': 'LONG',
>>>            'stopPrice': '0',
>>>            'workingType': 'CONTRACT_PRICE',
>>>            'priceProtect': False,
>>>            'origType': 'LIMIT',
>>>            'priceMatch': 'NONE',
>>>            'selfTradePreventionMode': 'NONE',
>>>            'goodTillDate': 0,
>>>            'time': 1705832967589,
>>>            'updateTime': 1705832967589}],
>>>  'msg': ''}
# positionSide='SHORT' 限制结果为空单
orders_pending_close_result = trade.get_orders_pending_close(symbol='MANAUSDT',positionSide='SHORT',
)
eprint(orders_pending_close_result, length=30)

输出:

>>> {'code': 200, 'data': [], 'msg': ''}

8. 等待订单成交 wait_order_FILLED

orderId = set_order_result['data']['orderId']
symbol = set_order_result['data']['symbol']
# 堵塞,等待订单完全成交,如果超时后仍未成交,返回订单数据
wait_order_filled_result = trade.wait_order_FILLED(symbol=symbol,orderId=orderId,timeout=5,
)
eprint(wait_order_filled_result, length=30)

输出:

>>> {'code': 200,
>>>  'data': {'orderId': 10508381477,
>>>           'symbol': 'MANAUSDT',
>>>           'status': 'NEW',
>>>           'clientOrderId': '3ilBoDldzzHd16kvCqt99x',
>>>           'price': '0.4000',
>>>           'avgPrice': '0.00',
>>>           'origQty': '15',
>>>           'executedQty': '0',
>>>           'cumQuote': '0.0000',
>>>           'timeInForce': 'GTC',
>>>           'type': 'LIMIT',
>>>           'reduceOnly': False,
>>>           'closePosition': False,
>>>           'side': 'BUY',
>>>           'positionSide': 'LONG',
>>>           'stopPrice': '0.0000',
>>>           'workingType': 'CONTRACT_PRICE',
>>>           'priceProtect': False,
>>>           'origType': 'LIMIT',
>>>           'priceMatch': 'NONE',
>>>           'selfTradePreventionMode': 'NONE',
>>>           'goodTillDate': 0,
>>>           'time': 1706118925588,
>>>           'updateTime': 1706118925588},
>>>  'msg': ''}

9. 撤销订单(API原始接口) cancel_order

orderId = set_order_result['data']['orderId']
symbol = set_order_result['data']['symbol']cancel_order_result = trade.cancel_order(symbol=symbol,orderId=orderId,
)
eprint(cancel_order_result, length=30)

输出:

>>> {'code': 200,
>>>  'data': {'orderId': 10508381477,
>>>           'symbol': 'MANAUSDT',
>>>           'status': 'CANCELED',
>>>           'clientOrderId': '3ilBoDldzzHd16kvCqt99x',
>>>           'price': '0.4000',
>>>           'avgPrice': '0.00',
>>>           'origQty': '15',
>>>           'executedQty': '0',
>>>           'cumQty': '0',
>>>           'cumQuote': '0.0000',
>>>           'timeInForce': 'GTC',
>>>           'type': 'LIMIT',
>>>           'reduceOnly': False,
>>>           'closePosition': False,
>>>           'side': 'BUY',
>>>           'positionSide': 'LONG',
>>>           'stopPrice': '0.0000',
>>>           'workingType': 'CONTRACT_PRICE',
>>>           'priceProtect': False,
>>>           'origType': 'LIMIT',
>>>           'priceMatch': 'NONE',
>>>           'selfTradePreventionMode': 'NONE',
>>>           'goodTillDate': 0,
>>>           'updateTime': 1706118936170},
>>>  'msg': ''}

这篇关于3.5 Binance_interface APP U本位合约交易-基础订单的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/700595

相关文章

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

Linux基础命令@grep、wc、管道符的使用详解

《Linux基础命令@grep、wc、管道符的使用详解》:本文主要介绍Linux基础命令@grep、wc、管道符的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录grep概念语法作用演示一演示二演示三,带选项 -nwc概念语法作用wc,不带选项-c,统计字节数-

python操作redis基础

《python操作redis基础》Redis(RemoteDictionaryServer)是一个开源的、基于内存的键值对(Key-Value)存储系统,它通常用作数据库、缓存和消息代理,这篇文章... 目录1. Redis 简介2. 前提条件3. 安装 python Redis 客户端库4. 连接到 Re

Golang interface{}的具体使用

《Golanginterface{}的具体使用》interface{}是Go中可以表示任意类型的空接口,本文主要介绍了Golanginterface{}的具体使用,具有一定的参考价值,感兴趣的可以了... 目录一、什么是 interface{}?定义形China编程式:二、interface{} 有什么特别的?✅

SpringBoot基础框架详解

《SpringBoot基础框架详解》SpringBoot开发目的是为了简化Spring应用的创建、运行、调试和部署等,使用SpringBoot可以不用或者只需要很少的Spring配置就可以让企业项目快... 目录SpringBoot基础 – 框架介绍1.SpringBoot介绍1.1 概述1.2 核心功能2

Spring Boot集成SLF4j从基础到高级实践(最新推荐)

《SpringBoot集成SLF4j从基础到高级实践(最新推荐)》SLF4j(SimpleLoggingFacadeforJava)是一个日志门面(Facade),不是具体的日志实现,这篇文章主要介... 目录一、日志框架概述与SLF4j简介1.1 为什么需要日志框架1.2 主流日志框架对比1.3 SLF4

Spring Boot集成Logback终极指南之从基础到高级配置实战指南

《SpringBoot集成Logback终极指南之从基础到高级配置实战指南》Logback是一个可靠、通用且快速的Java日志框架,作为Log4j的继承者,由Log4j创始人设计,:本文主要介绍... 目录一、Logback简介与Spring Boot集成基础1.1 Logback是什么?1.2 Sprin

MySQL复合查询从基础到多表关联与高级技巧全解析

《MySQL复合查询从基础到多表关联与高级技巧全解析》本文主要讲解了在MySQL中的复合查询,下面是关于本文章所需要数据的建表语句,感兴趣的朋友跟随小编一起看看吧... 目录前言:1.基本查询回顾:1.1.查询工资高于500或岗位为MANAGER的雇员,同时还要满足他们的姓名首字母为大写的J1.2.按照部门

Android Mainline基础简介

《AndroidMainline基础简介》AndroidMainline是通过模块化更新Android核心组件的框架,可能提高安全性,本文给大家介绍AndroidMainline基础简介,感兴趣的朋... 目录关键要点什么是 android Mainline?Android Mainline 的工作原理关键