CN107092484A - 将C语言层的功能按键信息上报至Java层的方法及系统 - Google Patents
将C语言层的功能按键信息上报至Java层的方法及系统 Download PDFInfo
- Publication number
- CN107092484A CN107092484A CN201710189221.1A CN201710189221A CN107092484A CN 107092484 A CN107092484 A CN 107092484A CN 201710189221 A CN201710189221 A CN 201710189221A CN 107092484 A CN107092484 A CN 107092484A
- Authority
- CN
- China
- Prior art keywords
- function button
- button information
- java layers
- language layer
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/315—Object-oriented languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/449—Object-oriented method invocation or resolution
- G06F9/4491—Optimising based on receiver type
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种将C语言层的功能按键信息上报至Java层的方法及系统,涉及软件开发的功能按键触发检测领域。该方法的步骤为:C语言层将功能按键信息上报至Java层;在Java层中创建消息接收类的接口集合、以及消息接收类注册接口,通过消息接收类注册接口,将所有消息接收类的接口注册至接口集合;Java层收到C语言层上报的功能按键消息之后,循环遍历接口集合中的所有接口,依次将功能按键消息分发至所有遍历得到的接口;遍历得到的接口将功能按键消息发送至消息接收类。本发明能够自动将C语言层的功能按键信息上报至Java层、并进行分发,进而显著提高了功能按键信息的传输效率和Java层开发人员的开发效率。
Description
技术领域
本发明涉及软件开发的功能按键触发检测领域,具体涉及一种将C语言层的功能按键信息上报至Java(门面向对象编程语言)层的方法及系统。
背景技术
在功能按键触发检测领域中,一些功能按键的触发事件从C语言层发出,但在Java层进行检测(例如Android系统中的功能按键)。因此,为了对功能按键进行触发检测,需要将C语言层的功能按键触发事件传输至Java层,经过Java层的一系列处理后暴露出来的是一个简单易用的按键监听函数,进而方便Java层的开发人员方便快捷的检测系统按键的输入信息。
现有的将C语言层的功能按键触发事件传输至Java层的方法一般为:Java层主动读取C语言层的功能按键触发事件后,隶属于消息接收类(需要接收功能按键信息的类)的Java层开发人员,将功能按键触发事件分发至对应的消息接收类。
但是,上述将C语言层的功能按键触发事件传输至Java层的方法使用时,存在以下缺陷:
(1)Java层主动读取C语言层的功能按键触发事件的耗时较长,进而会降低整个传输过程的工作效率。
(2)将功能按键触发事件分发至对应的消息接收类时,隶属于不同消息接收类的研发人员会进行接触,进而使得功能按键消息分发时存在一定的安全隐患。
发明内容
针对现有技术中存在的缺陷,本发明解决的技术问题为:如何自动将C语言层的功能按键信息上报至Java层、并进行分发。
为达到以上目的,本发明提供的将C语言层的功能按键信息上报至Java层的方法,包括以下步骤:
步骤一、C语言层将功能按键信息形成字符串数组后,上报至Java层,转到步骤二;
步骤二、Java层收到C语言层上报的功能按键消息之后,循环遍历接口集合中的所有接口,依次将功能按键消息分发至所有遍历得到的接口,转到步骤三;
步骤三、所述遍历得到的接口将功能按键消息发送至消息接收类;
步骤二之前,还包括以下步骤:
在Java层中创建消息接收类的接口集合、以及消息接收类注册接口,通过消息接收类注册接口,将所有消息接收类的接口注册至接口集合。
本发明提供的将C语言层的功能按键信息上报至Java层的系统,包括设置于C语言层的功能按键信息上报模块、以及设置于Java层的功能按键信息分发模块和消息接收类接口注册模块;
功能按键信息上报模块用于:将功能按键信息形成字符串数组后,上报至功能按键信息分发模块;
功能按键信息分发模块用于:收到功能按键消息之后,在消息接收类接口注册模块创建的接口集合中,循环遍历所有接口,依次将功能按键消息分发至所有遍历得到的接口;
消息接收类接口注册模块用于:在功能按键信息分发模块之前,创建消息接收类的接口集合、以及消息接收类注册接口,通过消息接收类注册接口,将所有消息接收类的接口注册至接口集合。
与现有技术相比,本发明的优点在于:
(1)参见本发明的步骤一可知,本发明将功能按键信息从C语言层传输至Java层时,并没有直接同现有技术中Java层主动读取功能按键信息一样,而是通过C语言层主动上报功能按键信息,进而提高了功能按键信息传输的工作效率。
与此同时,参见本发明的步骤二和步骤三可知,本发明能够自动对C语言层上报的功能按键消息进行统一的分发处理,避免了现有技术中不同类型的Java层开发人员之间的联系,不仅起到了良好的桥接作用,保证了功能按键消息的安全,而且显著提高了工作效率。
(2)本发明功能按键信息通过JNI通信接口上报至Java层,因此功能按键消息上报至Java层后,能够与Java层自动适配,不需要Java层开发人员去了解C语言层,显著提高了Java层开发人员的开发效率。
(3)本发明通过赋值函数sprintf将功能按键信息形成字符串数组,进而便于Java层对功能按键信息的读取。
(4)本发明为了便于操作人员了解程序的执行状况,会在将功能按键信息发送至Java层的过程中,展示功能按键信息的上报状态,进而提升了用户体验。
附图说明
图1为本发明实施例中将C语言层的功能按键信息上报至Java层的方法。
具体实施方式
以下结合附图及实施例对本发明作进一步详细说明。
参见图1所示,本发明实施例中的将C语言层的功能按键信息上报至Java层的方法,包括以下步骤:
S1:通过C语言通用的read函数,监听C语言层的功能按键信息,当功能按键信息为功能按键被触发时,读取功能按键信息,转到S2。
S1将功能按键信息发送至Java层的过程中,为了便于操作人员了解程序的执行状况,通过调用printf("start to send to java")展示功能按键信息的上报状态,C语言层已开始执行上报至JAVA层的功能按键信息。
S2:将功能按键信息形成字符串数组char[buff]中,具体通过赋值函数sprintf(sprintf函数主要的功能是对字符串进行格式化或者对字符串进行拼接赋值)实现:sprintf(buff,"%s",“KEY_DOWN”),转到S3。
S3:将字符串数组上报至Java层的Java空间,具体实现方式为:调用函数return(*env)->NewStringUTF(env,buff),buff为上报的字符串数组,转到S4。
通过S1至S3可知,本实施例将功能按键信息从C语言层传输至Java层时,并没有直接通过Java层主动读取功能按键信息,而是通过C语言层主动上报功能按键信息,不仅提高了功能按键信息传输的工作效率,而且本实施例通过赋值函数sprintf将功能按键信息形成字符串数组,进而便于Java层对功能按键信息的读取。
S4:为了使得Java层能够接收功能按键信息并进行有效的分发,需要在Java层中创建按键处理类KeyManager,在按键处理类中,创建消息接收类(需要接收功能按键信息的类)的接口集合。在按键处理类中创建消息接收类注册接口,通过消息接收类注册接口,将所有消息接收类的接口注册至接口集合,转到S5。
S4中创建消息接收类接口集合的实现方式为:List<IKey>listIkeys=newArrayList<IKey>(),listIkeys即为接口集合;
S4中通过消息接收类注册接口,将所有消息接收类的接口注册至接口集合时,通过regeisterKeyListener(IKey keyListener)函数来实现,具体为:将keyListener对象(即消息接收类)通过listIkeys中的add(keyListener)方法,添加至listIkeys中。以此达到只要是注册过的类都会将接口添加到listIkeys中,而后续新增的消息接收类的接口也会在listIkeys中进行注册。
实际应用中S4的执行时序在S5之间即可,例如可以在执行S1至S3的过程中、或者S1之前。
S5:Java层收到C语言层上报的功能按键消息之后,通过for循环的方式遍历接口集合中的所有接口,依次将功能按键消息回调至所有遍历得到的接口,进而使得功能按键消息能够通过遍历得到的接口,发送至消息接收类。
S5中通过for循环的方式遍历接口集合中的所有接口的实现方式为:for(int i=0;i<listIkeys.size();i++);
S5中依次将功能按键消息回调至所有遍历得到的接口的实现方式为:设计一个消息分发接口:public interface IKey{public void onKeyPressed();},其中onKeyPressed为回调函数,通过onKeyPressed依次将功能按键消息回调至所有遍历得到的接口。
参加S4和S5可知,本实施例能够自动对C语言层上报的功能按键消息进行统一的分发处理,避免了不同类型的Java层开发人员之间的联系,不仅起到了良好的桥接作用,保证了功能按键消息的安全,而且显著提高了工作效率。
实际应用中执行S3的过程时,可通过自行设定的JNI(Java Native Interface,用于提供若干的API来实现Java和其他语言、主要是C语言的通信)通信接口来完成,以此实现C语言层和JAVA语言层的良好通信,本实施例的JNI通信接口的设计方式为:
JNIEXPORT jstring JNICALL Java_com_douyu_keyReport(JNIEnv*env,jclasscls){};
上述设计中:
JNIEXPORT为一个JNI函数,JNICALL表示该函数被导出后能够被JAVA层调用;
Jstring为上报值,后续C语言层函数执行完成之后将上报一个string类型的变量;
Java_com_douyu_keyReport为函数名称;
JNIEnv*env,jclass cls均为JNI通信中必须携带的参数,evn代表虚拟机上下文,cls代表Java层中对应的class对象。
在此基础上,根据JNI技术协议规定,S4中的Java层若要获取到JNI通信接口上报的功能按键信息,需要在JAVA层中实现keyReport函数,keyReport函数与上述函数名称中Java_com_douyu_keyReport的最后一个字符串对应。
在C语言层通过JNI通信接口上报的功能按键消息,能够与Java层自动适配,不需要Java层开发人员去了解C语言层,显著提高了Java层开发人员的开发效率。
本发明实施例中的将C语言层的功能按键信息上报至Java层的系统,包括设置于C语言层的功能按键信息监听模块和功能按键信息上报模块,还包括设置于Java层的功能按键信息分发模块和消息接收类接口注册模块;
功能按键信息监听模块用于:监听功能按键信息,当功能按键信息为功能按键被触发时,将该功能按键信息后发送至功能按键信息上报模块,展示功能按键信息的上报状态。
功能按键信息上报模块用于:通过赋值函数sprintf,将功能按键信息形成字符串数组后;通过JNI通信接口,将功能按键信息上报至功能按键信息分发模块。
功能按键信息分发模块用于:收到功能按键消息之后,在消息接收类接口注册模块创建的接口集合中,循环遍历所有接口,依次将功能按键消息分发至所有遍历得到的接口。
消息接收类接口注册模块用于:在功能按键信息分发模块工作之前,创建消息接收类的接口集合、以及消息接收类注册接口,通过消息接收类注册接口,将所有消息接收类的接口注册至接口集合。
至此,参见本发明实施例可知,本发明能够自动将功能按键信息从C语言层上报至Java层、并进行分发,显著提高了Java层开发人员的开发效率。
进一步,本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
Claims (10)
1.一种将C语言层的功能按键信息上报至Java层的方法,其特征在于,该方法包括以下步骤:
步骤一、C语言层将功能按键信息形成字符串数组后,上报至Java层,转到步骤二;
步骤二、Java层收到C语言层上报的功能按键消息之后,循环遍历接口集合中的所有接口,依次将功能按键消息分发至所有遍历得到的接口,转到步骤三;
步骤三、所述遍历得到的接口将功能按键消息发送至消息接收类;
步骤二之前,还包括以下步骤:
在Java层中创建消息接收类的接口集合、以及消息接收类注册接口,通过消息接收类注册接口,将所有消息接收类的接口注册至接口集合。
2.如权利要求1所述的将C语言层的功能按键信息上报至Java层的方法,其特征在于:步骤一通过JNI通信接口将所述功能按键信息上报至Java层。
3.如权利要求1所述的将C语言层的功能按键信息上报至Java层的方法,其特征在于:步骤一通过赋值函数sprintf将所述功能按键信息形成字符串数组。
4.如权利要求1所述的将C语言层的功能按键信息上报至Java层的方法,其特征在于:步骤一之后还包括以下步骤:展示功能按键信息的上报状态。
5.如权利要求1至4任一项所述的将C语言层的功能按键信息上报至Java层的方法,其特征在于:步骤一之前还包括以下步骤:监听C语言层的功能按键信息,当功能按键信息为功能按键被触发时,读取功能按键信息,转到步骤一。
6.一种将C语言层的功能按键信息上报至Java层的系统,其特征在于:该系统包括设置于C语言层的功能按键信息上报模块、以及设置于Java层的功能按键信息分发模块和消息接收类接口注册模块;
功能按键信息上报模块用于:将功能按键信息形成字符串数组后,上报至功能按键信息分发模块;
功能按键信息分发模块用于:收到功能按键消息之后,在消息接收类接口注册模块创建的接口集合中,循环遍历所有接口,依次将功能按键消息分发至所有遍历得到的接口;
消息接收类接口注册模块用于:在功能按键信息分发模块工作之前,创建消息接收类的接口集合、以及消息接收类注册接口,通过消息接收类注册接口,将所有消息接收类的接口注册至接口集合。
7.如权利要求6所述的将C语言层的功能按键信息上报至Java层的系统,其特征在于:所述功能按键信息上报模块通过JNI通信接口将功能按键信息上报至Java层。
8.如权利要求6所述的将C语言层的功能按键信息上报至Java层的系统,其特征在于所述功能按键信息上报模块通过赋值函数sprintf将功能按键信息形成字符串数组。
9.如权利要求6所述的将C语言层的功能按键信息上报至Java层的系统,其特征在于:所述功能按键信息上报模块将功能按键信息上报至功能按键信息分发模块之后,还用于:展示功能按键信息的上报状态。
10.如权利要求6至9任一项所述的将C语言层的功能按键信息上报至Java层的系统,其特征在于:该系统还包括设置于C语言层的功能按键信息监听模块,其用于:监听功能按键信息,当功能按键信息为功能按键被触发时,将该功能按键信息后发送至功能按键信息上报模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710189221.1A CN107092484B (zh) | 2017-03-27 | 2017-03-27 | 将C语言层的功能按键信息上报至Java层的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710189221.1A CN107092484B (zh) | 2017-03-27 | 2017-03-27 | 将C语言层的功能按键信息上报至Java层的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107092484A true CN107092484A (zh) | 2017-08-25 |
CN107092484B CN107092484B (zh) | 2020-10-16 |
Family
ID=59646361
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710189221.1A Active CN107092484B (zh) | 2017-03-27 | 2017-03-27 | 将C语言层的功能按键信息上报至Java层的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107092484B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107577540A (zh) * | 2017-08-31 | 2018-01-12 | 武汉斗鱼网络科技有限公司 | 视频交友中实现举报功能的方法、存储介质、设备及系统 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1553631A (zh) * | 2003-05-26 | 2004-12-08 | 华为技术有限公司 | 一种接口状态信息的上报方法 |
US20060190935A1 (en) * | 2005-02-18 | 2006-08-24 | International Business Machines Corporation | Method and apparatus for transforming Java native interface function calls into simpler operations during just-in-time compilation |
CN101754149A (zh) * | 2009-11-17 | 2010-06-23 | 华为终端有限公司 | 输入长串数字的方法及移动终端 |
WO2015012782A1 (en) * | 2009-12-16 | 2015-01-29 | Robert Kulakowski | Dynamic obfuscation processing |
CN104378682A (zh) * | 2014-11-14 | 2015-02-25 | 乐视致新电子科技(天津)有限公司 | 一种基于安卓系统的按键统计方法和智能电视 |
CN104391707A (zh) * | 2014-12-05 | 2015-03-04 | 上海斐讯数据通信技术有限公司 | 一种应用程序的启动方法及启动装置 |
CN104503819A (zh) * | 2015-01-05 | 2015-04-08 | 中国科学院计算技术研究所 | 一种面向异os的汇编器及汇编移植方法 |
CN105279033A (zh) * | 2014-07-22 | 2016-01-27 | Tcl集团股份有限公司 | Android平台下C++和Java通信的方法及系统 |
CN105743721A (zh) * | 2014-12-09 | 2016-07-06 | 博雅网络游戏开发(深圳)有限公司 | 数据上报方法、对上报数据进行处理的方法和装置 |
CN106060617A (zh) * | 2016-06-17 | 2016-10-26 | Tcl集团股份有限公司 | 一种按键功能配置方法及系统 |
CN106502747A (zh) * | 2016-11-02 | 2017-03-15 | 武汉斗鱼网络科技有限公司 | 一种应用升级的方法及移动终端 |
-
2017
- 2017-03-27 CN CN201710189221.1A patent/CN107092484B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1553631A (zh) * | 2003-05-26 | 2004-12-08 | 华为技术有限公司 | 一种接口状态信息的上报方法 |
US20060190935A1 (en) * | 2005-02-18 | 2006-08-24 | International Business Machines Corporation | Method and apparatus for transforming Java native interface function calls into simpler operations during just-in-time compilation |
CN101754149A (zh) * | 2009-11-17 | 2010-06-23 | 华为终端有限公司 | 输入长串数字的方法及移动终端 |
WO2015012782A1 (en) * | 2009-12-16 | 2015-01-29 | Robert Kulakowski | Dynamic obfuscation processing |
CN105279033A (zh) * | 2014-07-22 | 2016-01-27 | Tcl集团股份有限公司 | Android平台下C++和Java通信的方法及系统 |
CN104378682A (zh) * | 2014-11-14 | 2015-02-25 | 乐视致新电子科技(天津)有限公司 | 一种基于安卓系统的按键统计方法和智能电视 |
CN104391707A (zh) * | 2014-12-05 | 2015-03-04 | 上海斐讯数据通信技术有限公司 | 一种应用程序的启动方法及启动装置 |
CN105743721A (zh) * | 2014-12-09 | 2016-07-06 | 博雅网络游戏开发(深圳)有限公司 | 数据上报方法、对上报数据进行处理的方法和装置 |
CN104503819A (zh) * | 2015-01-05 | 2015-04-08 | 中国科学院计算技术研究所 | 一种面向异os的汇编器及汇编移植方法 |
CN106060617A (zh) * | 2016-06-17 | 2016-10-26 | Tcl集团股份有限公司 | 一种按键功能配置方法及系统 |
CN106502747A (zh) * | 2016-11-02 | 2017-03-15 | 武汉斗鱼网络科技有限公司 | 一种应用升级的方法及移动终端 |
Non-Patent Citations (4)
Title |
---|
BO LIANG ET AL: "A native Android application development based on watercolor stylized image", 《2015 6TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING AND SERVICE SCIENCE (ICSESS)》 * |
FOULARD: "《学步园:https://www.xuebuyuan.com/1748038.html》", 25 June 2013 * |
杨天泉: "Android终端安全机制分析及安全防护技术研究", 《中国优秀硕士学位论文全文数据库》 * |
陈强: "《Android底层接口与驱动开发技术详解》", 31 August 2012, 中国铁道出版社 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107577540A (zh) * | 2017-08-31 | 2018-01-12 | 武汉斗鱼网络科技有限公司 | 视频交友中实现举报功能的方法、存储介质、设备及系统 |
CN107577540B (zh) * | 2017-08-31 | 2020-03-17 | 武汉斗鱼网络科技有限公司 | 视频交友中实现举报功能的方法、存储介质、设备及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107092484B (zh) | 2020-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103176789B (zh) | 一种实现开放平台功能扩展的方法及系统 | |
CN105183675B (zh) | 对usb设备的访问方法、装置、终端、服务器及系统 | |
CN106127036A (zh) | 持续性和弹性的工作者进程 | |
CN107678778B (zh) | 基于Hybrid的兼容方法、适配件、运行装置及系统 | |
CN107357718A (zh) | 一种构建测试方法及装置 | |
TW200821960A (en) | Method and system for complex event processing | |
CN108960857A (zh) | 一种售后服务管理方法、系统和装置 | |
CN103716356B (zh) | 基于web的存储过程操作方法、装置和系统 | |
CN101355775B (zh) | 配置数据批量导入装置及其多客户端互斥方法 | |
CN103729292A (zh) | 一种跨主机、跨平台的远程命令调用方法和系统 | |
CN110750315B (zh) | Android系统中的类加载方法、装置、设备和存储介质 | |
CN106155970A (zh) | 自动硬件恢复方法及自动硬件恢复系统 | |
CN105190530A (zh) | 传输硬件渲染的图形数据 | |
CN107092484A (zh) | 将C语言层的功能按键信息上报至Java层的方法及系统 | |
CN103699485A (zh) | 应用程序调试方法和装置 | |
CN102184120A (zh) | Java虚拟机的管理方法、监控系统和监控代理模块 | |
CN103513990B (zh) | 一种用于分布式处理的高性能通用网络框架的设计方法 | |
CN113127775B (zh) | 一种页面加载方法、装置、设备和存储介质 | |
CN106959885A (zh) | 一种虚拟机高可用实现系统及其实现方法 | |
CN102647419B (zh) | 面向终端计算机的策略安全在线检查系统 | |
CN101140552A (zh) | 一种通过通用串行总线进行数据传输的控制系统和方法 | |
CN108363629A (zh) | 用于即时通信的方法、介质、装置和计算设备 | |
CN107453959A (zh) | 一种网卡的管理方法及其装置 | |
CN107729088A (zh) | 一种应用程序管理方法和系统 | |
CN114024822A (zh) | 基于区块链的物联网设备管理方法、设备、服务器及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230524 Address after: No. A910, 9th Floor, Building A, Three Gorges Mall, No. 52 Jiefang Road, Xiling District, Yichang City, Hubei Province, 443000 Patentee after: Hubei Yuancun Technology Co.,Ltd. Address before: 430000 East Lake Development Zone, Wuhan City, Hubei Province, No. 1 Software Park East Road 4.1 Phase B1 Building 11 Building Patentee before: WUHAN DOUYU NETWORK TECHNOLOGY Co.,Ltd. |
|
TR01 | Transfer of patent right |