WO2022214012A1 - 实现应用程序的多语言翻译的系统、方法、设备和介质 - Google Patents

实现应用程序的多语言翻译的系统、方法、设备和介质 Download PDF

Info

Publication number
WO2022214012A1
WO2022214012A1 PCT/CN2022/085469 CN2022085469W WO2022214012A1 WO 2022214012 A1 WO2022214012 A1 WO 2022214012A1 CN 2022085469 W CN2022085469 W CN 2022085469W WO 2022214012 A1 WO2022214012 A1 WO 2022214012A1
Authority
WO
WIPO (PCT)
Prior art keywords
language
application program
application
request message
identifier
Prior art date
Application number
PCT/CN2022/085469
Other languages
English (en)
French (fr)
Inventor
王永亮
余伟伟
任莉强
Original Assignee
北京沃东天骏信息技术有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 北京沃东天骏信息技术有限公司 filed Critical 北京沃东天骏信息技术有限公司
Publication of WO2022214012A1 publication Critical patent/WO2022214012A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/58Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/263Language identification

Definitions

  • the present application relates to the general technology of application programs in the field of information technology, and in particular, to a system and method for realizing multilingual translation of application programs.
  • the general implementation mode for international translation of an application is: extract the copy information in the application, generate and store independent language packs for different languages according to the copy information, and when the application responds to an external request, according to the settings set by the requester. Language, obtain the language package of the corresponding language, generate the copy information of the corresponding application, and embed it in the corresponding position of the application, and provide the obtained response information of the external request to the requester, so that the application can be executed on the requester. under the set locale.
  • an embodiment of the present application provides a system for implementing multilingual translation of an application program, and the system can efficiently and accurately perform multilingual translation of an application program.
  • the embodiment of the present application also provides a method for implementing multilingual translation of an application program, and the method can efficiently and accurately perform multilingual translation of an application program.
  • a system for realizing multilingual translation of application programs comprising: an identification parsing unit, a language parsing unit, a context parsing unit and a data resource management unit, wherein,
  • a data resource management unit for receiving language packs in different languages for applications for integration, storage and/or management
  • the identification parsing unit is used to receive the request message for executing the application program sent by the requester, determine the rules for identifying the language identification according to the interactive protocol based on which the request message is parsed, and identify the language for executing the application program according to the rules for identifying the language identification identification;
  • a context parsing unit for acquiring and storing the language identifier in the identity parsing unit for executing the application
  • a language parsing unit used to identify the text information to be translated in the application program execution process, and obtain the language of the corresponding language of the application program in the data resource management unit according to the language identifier for executing the application program obtained from the context parsing unit package, execute the translation to get the translated copy information, embed it into the executed application, and send it to the requester as the response information.
  • the system simultaneously processes multiple request messages for executing different application programs
  • the context parsing unit is further configured to maintain different language identifiers of different languages, and the different language identifiers of different languages correspond to the application programs requested to be executed by different request messages.
  • the data resource management unit includes: a resource allocation center sub-unit, a file resource sub-unit and an integrated resource sub-unit, wherein,
  • the resource configuration center sub-unit is used to receive language packs of multiple different languages corresponding to the application from different external sources;
  • the file resource subunit is used to receive language packs of multiple different languages corresponding to the application from local sources;
  • the resource integration subunit is used to integrate, store or/and manage the language packs of the application program in multiple different languages, which are received by the resource configuration center subunit and the file resource subunit.
  • the integrated resource subunit in the data resource management unit is also used to set different priorities when managing language packs in different languages of the application, and the different priorities are used to provide the application.
  • the language pack of the corresponding language it will be provided according to the set priority.
  • the identification parsing unit includes an interactive protocol identification subunit and a plurality of language identification parsing subunits corresponding to different rules, wherein,
  • the interactive protocol identification sub-unit is used to receive the request message for executing the application program, parse and obtain the interactive protocol based on the request message, determine the rule for identifying the language identification corresponding to the interactive protocol based on it, and send the request message to the corresponding rule
  • the language identification parsing subunit of the corresponding rule is used to identify and obtain the language identification of the executing application according to the corresponding rule;
  • the language identification parsing subunit of the corresponding rule includes at least: a request message header parsing subunit for executing the application program, a local data Cookie parsing subunit stored in the terminal and/or a remote procedure call Rpc parsing subunit, which are respectively used in the
  • the language identifier is obtained from the hypertext transfer protocol HTTP header parameter of the request message, the language identifier is obtained from the Cookie of the entity receiving the request message, and the language identifier is obtained from the requester sending the request message by means of Rpc.
  • a method for realizing multilingual translation of an application program, executed by an electronic device comprising:
  • Receive the request message for executing the application program sent by the requester determine the rules for identifying the language identifier according to the interactive protocol based on parsing the request message, and identify the language identifier for executing the application program according to the rules for identifying the language identifier;
  • Execute the application program identify the copywriting information to be translated in the application program execution process, and obtain the stored language package of the corresponding language according to the identified language identifier for executing the application program;
  • the translated copy information is obtained by executing the translation, which is embedded in the executed application, and sent to the requesting party as the response information.
  • the acquisition of the stored language pack of the corresponding language includes:
  • identifying the language identifier for executing the application program according to the rules for identifying the language identifier includes:
  • the language identifier is obtained from the requester that sends the request message in the Rpc manner.
  • An electronic device comprising:
  • a computer-readable storage medium is characterized in that a computer program is stored thereon, and when the program is executed by a processor, the above-mentioned method for realizing multilingual translation of an application program is implemented.
  • the embodiment of the present application uses a distributed network to implement multilingual translation of applications
  • the distributed network includes an identification parsing unit, a language parsing unit, a context parsing unit, and a data resource management unit, wherein the data resource management unit , used to receive language packages in different languages for the application program from different sources, and integrate, store or/and manage;
  • the identification parsing unit is used to receive the request message sent by the requester to execute the application program, according to parsing the request message based on
  • the interactive protocol determines the rules for recognizing language identifiers, identifies and executes the language identifier of the application program according to the rules for recognizing language identifiers, and determines the language environment in which the application program executes; context parsing unit is used to obtain execution from the identifier parsing unit.
  • the language identifier of the application is stored and stored, so that the language identifier is called during the execution of the application; the language parsing unit is used to identify the information of the text to be translated during the execution of the application, according to the information obtained from the context parsing unit
  • the language identifier of the execution of the application program obtains the language package of the corresponding language from the data resource management unit, executes the translation to obtain the translated copy information, embeds it in the executed application program, and sends it to the requester as the response information.
  • the embodiments of the present application can efficiently manage language package resources and effectively identify language settings of the requester, thereby realizing efficient and accurate multilingual translation of applications.
  • FIG. 1 is a schematic structural diagram of a system for implementing multilingual translation of applications provided by an embodiment of the present application
  • FIG. 2 is a schematic structural diagram of a data resource management unit provided by an embodiment of the present application.
  • FIG. 3 is a schematic structural diagram of an identification parsing unit provided in an embodiment of the present application.
  • FIG. 4 is a flowchart of a method for implementing multilingual translation of an application program provided by an embodiment of the present application
  • FIG. 5 is a schematic diagram of a specific example of a method for implementing multilingual translation of an application program provided by an embodiment of the present application.
  • a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units expressly listed, but may include steps or units not expressly listed or for such process, method, product or Other steps or units inherent to the device.
  • the first solution includes: receiving an access request carrying target language information; The service data in the request page of the access request is returned; in response to the access request, the service data is returned.
  • This solution separates the language package into an independent resource service and realizes the centralized management of language package resources.
  • the resource service still distinguishes different business subsystems, and the resource utilization rate is not high. When multiple subsystems have the same language entry , which still needs to be maintained separately.
  • this method cannot implement the downgrade of the multilingual translation work of the application. Each time the translation is performed, the resource service needs to be called, which is inefficient. When the resource service is down as a whole, the entire process becomes unavailable.
  • the second solution, the publication number is "CN111177318A", the patent application titled “A method, device and computer-readable storage medium for performing internationalized services” includes: receiving a service request sent by a client; Language identification rules, query the language type that matches the client. Call the language text collection that matches the language type from the established text repository. Obtain the target file corresponding to the business request; query the target language text in the language text set that matches the text identifier in the target file; and feed back the target language text to the client.
  • This solution sets rules for language identification of different clients and different business requests to solve the problem of automatic adaptation of applications in different language environments, but it is only a data interaction protocol and cannot realize multiple interactions of applications. Protocol adaptation.
  • the embodiment of the present application adopts a distributed network to implement multilingual translation of application programs
  • the distributed network includes an identification parsing unit, a language parsing unit, a context parsing unit, and a data resource management unit , wherein the data resource management unit is used to receive language packages in different languages for the application program from different sources, and integrate, store or/and manage;
  • the identification parsing unit is used to receive the request message sent by the requester to execute the application program , determine the rules for identifying language identifiers according to the interactive protocol based on which the request message is parsed, identify the language identifiers for executing the application program according to the rules for identifying language identifiers, and determine the language environment in which the application program executes; context parsing unit, used for The language identification for executing the application is obtained from the identification parsing unit and stored, so that the language identification is called during the execution of the application; the language parsing unit is used to identify the text information to be translated during the execution of the application
  • the embodiments of the present application can efficiently manage language package resources and effectively identify language settings of the requester, thereby realizing efficient and accurate multilingual translation of applications.
  • the embodiments of the present application can efficiently manage language package resources and effectively identify the language settings of the requester, thereby realizing efficient and accurate multilingual translation of applications.
  • the identification parsing unit in the distributed network is provided with a unified language identification parsing interface, and the language identification of the requester is respectively identified for different interaction protocols of an application, so that the current execution of the application can be identified.
  • the language environment; the distributed network also includes a data resource management unit, which centrally manages data resources of different language packages of an application; when the distributed network recognizes and obtains the language identifier applicable to the requester, the centralized management language The language package resource corresponding to the language identifier is obtained from the package resource, and the language translation corresponding to the language identifier is performed on the copy information in the application program and provided to the requester.
  • the embodiments of the present application can automatically identify the language environment in which the application program in the distributed network is located: when the executor and the requester of the application program in the distributed network interact, there are usually multiple The interactive protocol, the mode of the request message sent by the requester and the transmission mode of the language identifier of the locale where the application program requested by the request message is executed under different interactive protocols are different.
  • the identification parsing unit is provided with a unified language identification analysis interface, the unified language identification analysis interface parses out the interactive protocol on which the request message is based, and determines the rules for identifying the language identification according to the interactive protocol, and identifies according to the determined rules.
  • the language identifier of the currently executed application program is obtained, so as to centrally manage the identification of the language identifier of the request message based on different interaction protocols, and realize the automatic identification of the current execution language environment of the application program.
  • the embodiment of the present application can centrally manage the language package data resources of the application programs in the distributed network, and can dynamically deliver and degrade the language package data resources management: a data resource management unit is set, and the unit has a unified language
  • the package data resource reading interface can set priorities for language package data resources from different sources, integrate and store language package data resources from different sources, and provide them for subsequent use by the unit executing the application program. This process can be real-time. of. In this way, a unified interface for the acquisition of language package data resources is integrated to achieve centralized management, and different priority settings can be used for different language packages to realize the management and degradation of language package data resources, and interact with the language parsing unit to achieve Dynamic distribution of language pack data resources of the corresponding language.
  • the embodiment of the present application realizes automatic translation of the copy information of the uncoupled application: by setting the context parsing unit and the language parsing unit, the copy information involved in the automatic translation of the copy information of the application is intercepted, and the corresponding language is called.
  • the language package data resources are automatically translated, so as to isolate the execution of the application and realize the uncoupling between the execution of the application and the multi-language translation of the application.
  • FIG. 1 is a schematic structural diagram of a system for implementing multilingual translation of an application provided by an embodiment of the present application.
  • the system includes: an identification parsing unit, a language parsing unit, a context parsing unit, and a data resource management unit, wherein,
  • a data resource management unit for receiving language packs in different languages for applications for integration, storage and/or management
  • the identification parsing unit is used to receive the request message for executing the application program sent by the requester, determine the rules for identifying the language identification according to the interactive protocol based on which the request message is parsed, and identify the language for executing the application program according to the rules for identifying the language identification identification;
  • a context parsing unit for acquiring and storing the language identifier in the identity parsing unit for executing the application
  • a language parsing unit used to identify the text information to be translated in the application program execution process, and obtain the language of the corresponding language of the application program in the data resource management unit according to the language identifier for executing the application program obtained from the context parsing unit package, execute the translation to get the translated copy information, embed it into the executed application, and send it to the requester as the response information.
  • the system can process multiple request messages from the outside at the same time.
  • the context parsing unit maintains different language identifiers for different execution locales of the application programs requested by different request messages, which is not limited here.
  • the data resource management unit may integrate, store or/and manage language packages for different languages of the application in real time.
  • the data resource management unit is an abstract unified interface, and there can be different implementations for language packages of different languages adopted by an application program.
  • 2 is a schematic structural diagram of a data resource management unit provided by an embodiment of the present application, including: a resource allocation center subunit, a file resource subunit, and an integrated resource subunit, wherein,
  • the resource configuration center sub-unit is used to receive language packs of multiple different languages corresponding to the application from different external sources;
  • the file resource subunit is used to receive language packs of multiple different languages corresponding to the application from the local source;
  • the local source can be a local resource database;
  • the integrated resource subunit is used to integrate, store or/and manage the language packages of the application program in multiple different languages, which are received by the resource configuration center subunit and the file resource subunit.
  • the data resource management unit may be further expanded, and may include other acquisition subunits for receiving in real time language packages corresponding to the application program in multiple different languages from other sources.
  • the other obtaining subunit may be a database or a cache medium or the like.
  • the integrated resource sub-unit can also perform any combination of all the acquired language packs corresponding to the application in multiple different languages and manage them after the combination, and set different priorities for the language packs of the different languages,
  • the language pack of the corresponding language is provided, it is provided according to the set priority, and the language pack of the corresponding language with the highest priority is provided, so as to realize the centralized management and degradation management capability of language pack resources.
  • the language package corresponding to the same language of the application in the integrated resource subunit can be used by the language parsing unit when executing the request messages from multiple different requesting parties to execute the application, and can be dynamically updated in real time without affecting the The execution of the application avoids the problem of independent maintenance and execution of language packages corresponding to the same language of the application for different requesters.
  • the identity parsing unit is essentially used to call the language identity set by the requester, which is an abstract interface, and may have different implementations for different interaction protocols.
  • Fig. 3 is the structural representation of the identification parsing unit provided by the embodiment of the application, including: an interactive protocol identification subunit and a plurality of language identification parsing subunits corresponding to different rules, wherein,
  • the interactive protocol identification sub-unit is used to receive the request message for executing the application, parse the interactive protocol on which the request message is obtained, determine the rules for identifying the language identification corresponding to the interactive protocol, and send the request message to the corresponding interactive protocol.
  • the language identification parsing subunit of the rule is used to receive the request message for executing the application, parse the interactive protocol on which the request message is obtained, determine the rules for identifying the language identification corresponding to the interactive protocol, and send the request message to the corresponding interactive protocol.
  • the language identification parsing subunit of the corresponding rule is used to identify and obtain the language identification of the executing application according to the corresponding rule, and obtain the language environment for the execution of the application.
  • the multiple language identification parsing subunits corresponding to different rules at least include a request message header parsing subunit for executing the application, a local data (Cookie) parsing subunit stored in the terminal, and/or a remote procedure call (Rpc) parsing subunit.
  • the subunits are respectively used to obtain the language identifier from the hypertext transfer protocol (HTTP) header parameter of the request message, obtain the language identifier from the Cookie of the entity receiving the request message, and use the Rpc method to obtain the language identifier from the requester sending the request message. Get the language ID.
  • HTTP hypertext transfer protocol
  • the language identification parsing subunits of multiple different rules can be further expanded to adapt to the rules for identifying language identifications corresponding to other interactive protocols.
  • the interactive protocol identification subunit can parse and obtain the interactive protocol on which the request message is based, and determine the language identification parsing subunit corresponding to different rules.
  • the language identification parsing sub-units corresponding to different rules are set for different interaction protocols in the distributed network, which can perform horizontal expansion and automatic management, and have no intrusion on the execution logic of the application program.
  • the context parsing unit is used to store the language identifier of the currently executing application program, and is arbitrarily called during the entire execution process of the application program. It mainly includes the translation of copywriting information in the application and the transparent transmission of the language identifier as a request parameter when interacting with the requester.
  • the language parsing unit is responsible for identifying the text information to be translated of the executed application program through a specific method, such as the text information to be translated marked in the application program, such as annotation marks or message placeholders, and is used in the application program.
  • the program is executed, when the response information is returned to the requester, the translation is performed and the response information is returned in combination with the language package resources of the corresponding language and the context position of the translated text information in the application program.
  • FIG. 4 is a flowchart of a method for implementing multilingual translation of an application provided by an embodiment of the present application.
  • the method can be executed by the system shown in FIG. 1 or by the electronic device described below.
  • the specific process is:
  • Step 401 receive a request message for executing an application program, determine a rule for identifying the language identifier according to the interactive protocol based on parsing the request message, and identify the language identifier for executing the application program according to the rule for identifying the language identifier;
  • Step 402 executing the application, identifying the text information to be translated therein during the execution of the application, and obtaining the stored language pack of the corresponding language according to the identified language identifier for executing the application;
  • Step 403 According to the stored language package of the corresponding language, perform translation to obtain the translated copy information, embed it into the executed application program, and return it to the requester as response information.
  • the acquiring the stored language pack of the corresponding language includes:
  • language packages in different languages for applications from different sources for integration, storage and management can be received in real time for real-time integration, real-time storage and real-time management;
  • the managing also includes:
  • Different priorities are set for the language packs of different languages of the application, and the language packs of the corresponding languages are provided according to the set priorities.
  • identifying the language identifier of the execution language environment of the application program requested by the request message according to the rule for identifying the language identifier includes:
  • the language identifier is obtained from the requester that sends the request message in the Rpc manner.
  • FIG. 5 is a schematic diagram of a specific example of a method for implementing multi-language translation of an application provided by an embodiment of the present application. Similar to FIG. 4 , the method shown in FIG. 5 can be executed by the system shown in FIG. 1 or can be described below.
  • the electronic device executes, and its specific steps include:
  • Step 501 After the distributed network for executing the application is started, load existing language packs in different languages for the application for subsequent use;
  • Step 502 the distributed network receives a request message for executing the application
  • the request message transmission may adopt an interactive protocol such as HTTP or RPC;
  • Step 503 the identifier parsing unit in the distributed network intercepts the request message, and executes the corresponding language identifier parsing according to the interactive protocol on which the request message is based;
  • Step 504 the identification parsing unit in the distributed network has completed the parsing, obtains the language identification, and sends it to the context parsing unit for storage for subsequent use;
  • Step 505 the distributed network executes the application program
  • Step 506 After the distributed network executes the application program, the response information is obtained, and it is judged whether the response information carries the text information to be translated of the application program. If so, go to step 507; if not, go to step 508;
  • Step 507 Obtain the stored language package of the corresponding language according to the language identifier stored by the context analysis unit, execute translation according to the stored language package of the corresponding language, and obtain the translated copy information, which is embedded in the executed application program, as a response message;
  • Step 508 Send the response information to the requester.
  • Embodiments of the present application further provide a computer-readable storage medium, where the computer-readable storage medium stores instructions, which, when executed by a processor, can execute the steps of the method for implementing multilingual translation of an application program as described above.
  • the computer-readable storage medium may be included in the device/apparatus/system described in the foregoing embodiments, or may exist independently without being assembled into the apparatus/apparatus/system.
  • the above-mentioned computer-readable storage medium carries one or more programs, and when the above-mentioned one or more programs are executed, the method for implementing multilingual translation of an application program described in the foregoing embodiments can be implemented.
  • the computer-readable storage medium may be a non-volatile computer-readable storage medium, such as, but not limited to, portable computer disks, hard disks, random access memory (RAM), read only memory (ROM) ), erasable programmable read-only memory (EPROM or flash memory), portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the above, but are not intended to limit this application scope of protection.
  • a computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
  • the embodiments of the present application further provide an electronic device, in which the system for implementing the methods of the embodiments of the present application can be integrated. Specifically:
  • the electronic device may include a processor of one or more processing cores, memory of one or more computer-readable storage media, and a computer program stored on the memory and executable on the processor.
  • a processor of one or more processing cores memory of one or more computer-readable storage media
  • a computer program stored on the memory and executable on the processor.
  • the electronic device may further include components such as a power supply, an input unit, and an output unit.
  • components such as a power supply, an input unit, and an output unit.
  • the structure of the electronic device in the embodiments of the present application does not constitute a limitation on the electronic device, and may include more or less components than the one shown, or combine some components, or different components layout. in:
  • the processor is the control center of the electronic device. It uses various interfaces and lines to connect various parts of the entire electronic device. It executes the software programs and/or modules stored in the memory and calls the data stored in the memory. Various functions and processing data for overall monitoring of the electronic equipment.
  • the memory can be used to store software programs and modules, ie, the above-mentioned computer-readable storage medium.
  • the processor executes various functional applications and data processing by executing software programs and modules stored in the memory.
  • the memory may mainly include a stored program area and a stored data area, wherein the stored program area may store an operating system, an application program required for at least one function, and the like; the storage data area may store data created according to the use of the server, and the like.
  • the memory may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid state storage device. Accordingly, the memory may also include a memory controller to provide processor access to the memory.
  • the electronic device also includes a power supply for supplying power to each component, and can be logically connected to the processor through the power management system, so that functions such as charging, discharging, and power consumption management are implemented through the power management system.
  • the power source may also include one or more DC or AC power sources, recharging systems, power failure detection circuits, power converters or inverters, power status indicators, and any other components.
  • the electronic device may also include an input unit operable to receive input numerical or character information and generate keyboard, mouse, joystick, optical or trackball signal input related to user settings and function control.
  • the electronic device may further include an output unit, which may be used to display information input by the user or information provided to the user and various graphical user interfaces, which may be composed of graphics, text, icons, videos, and any other composition to form.
  • an output unit which may be used to display information input by the user or information provided to the user
  • various graphical user interfaces which may be composed of graphics, text, icons, videos, and any other composition to form.
  • each block in the flowchart or block diagrams may represent a module, segment, or portion of code that contains one or more functions for implementing the specified logical function(s) executable instructions.
  • the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in connection may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved.

Abstract

一种实现应用程序的多语言翻译的系统及方法,采用分布式网络实现。所述系统包括:数据资源管理单元,用于接收针对应用程序的不同语言的语言包,整合、存储或/和管理;标识解析单元,用于接收请求方发送的执行所述应用程序的请求消息,根据解析所述请求消息基于的交互协议,确定识别语言标识的规则,识别所述应用程序执行的语言标识;上下文解析单元,用于获取所述应用程序执行的语言标识并存储;语言解析单元,用于在所述应用程序执行过程中识别待翻译文案信息,根据从所述上下文解析单元获取的所述应用程序执行的语言标识,获取对应语言的语言包,翻译得到翻译后的文案信息,嵌入到所执行的所述应用程序中,作为响应信息,发送给请求方。这样,实现了高效及准确地对应用程序进行多语言翻译。

Description

实现应用程序的多语言翻译的系统、方法、设备和介质
本申请要求于2021年4月7日提交中国专利局、申请号为202110369864.0、发明名称为“一种实现应用程序的多语言翻译的系统及方法”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及信息技术领域的应用程序通用技术,特别涉及一种实现应用程序的多语言翻译的系统及方法。
发明背景
在信息技术领域,为了使应用程序适用于不同地域及不同语言环境,需要对应用程序的多语言翻译,即对应用程序的国际化翻译(Internationalization,简称i18n),对应用程序的国际化翻译是指修改应用程序使之能够适应不同地区的目标市场的语言差异。对应用程序的国际化翻译的通用实现模式为:提取应用程序中的文案信息,根据文案信息生成并存储独立的针对不同语言的语言包,在应用程序响应外部请求时,根据请求方所设置的语言,获取对应语言的语言包,生成对应的应用程序的文案信息,并嵌入到应用程序相应的位置处,将得到的外部请求的响应信息提供给请求方,以使该应用程序执行在请求方所设置的语言环境下。
对应用程序进行多语言翻译时,需要高效及准确的实现,当采用上述实现模式进行时,如何高效地管理语言包资源及如何有效识别请求方的语言设置,是高效及准确地实现应用程序的多语言翻译的关键所在,但是上述实现模式却无法实现。
发明内容
有鉴于此,本申请实施例提供一种实现应用程序的多语言翻译的系统,该系统能够高效及准确地对应用程序进行多语言翻译。
本申请实施例还提供一种实现应用程序的多语言翻译的方法,该方法能够高效及准确地对应用程序进行多语言翻译。
本申请实施例是这样实现的:
一种实现应用程序的多语言翻译的系统,包括:标识解析单元、语言解析单元、上下文解析单元及数据资源管理单元,其中,
数据资源管理单元,用于接收针对应用程序的不同语言的语言包,进行整合、存储和/或管理;
标识解析单元,用于接收请求方发送的执行应用程序的请求消息,根据解析该请求消息基于的交互协议确定识别语言标识的规则,根据所述识别语言标识的规则,识别执行该应用程序的语言标识;
上下文解析单元,用于获取标识解析单元中的执行该应用程序的语言标识并存储;
语言解析单元,用于在该应用程序执行过程中识别其中的待翻译文案信息,根据从上下文解析单元获取的执行该应用程序的语言标识,获取数据资源管理单元中该应用程序的对应语言的语言包,执行翻译得到翻译后的文案信息,嵌入到所执行的该应用程序中,作为响应信息,发送给请求方。
较佳地,所述系统对多个执行不同应用程序的请求消息同时处理;
所述上下文解析单元,还用于维护不同语言的不同语言标识,所述不同语言的不同语言标识对应于不同请求消息所请求执行的应用程序。
较佳地,所述数据资源管理单元包括:资源配置中心子单元、文件资源子单元及整合资源子单元,其中,
资源配置中心子单元,用于接收不同外部来源的对应该应用程序的多个不同语言的语言包;
文件资源子单元,用于接收本地来源的对应该应用程序的多个不同语言的语言包;
整合资源子单元,用于将资源配置中心子单元及文件资源子单元接收到的,对于该应用程序的多个不同语言的语言包进行整合,存储或/和管理。
较佳地,所述数据资源管理单元中的整合资源子单元,还用于管理该应用程序的不同语言的语言包时,设置不同的优先级,所述不同优先级用于在提供该应用程序的对应语言的语言包时,根据所设置的优先级提供。
较佳地,所述标识解析单元包括交互协议识别子单元及多个对应不同规则的语言标识解析子单元,其中,
交互协议识别子单元,用于接收执行应用程序的请求消息,解析得到该请求消 息所基于的交互协议,确定所基于的交互协议对应的识别语言标识的规则后,将该请求消息发送给对应规则的语言标识解析子单元;
对应规则的语言标识解析子单元,用于根据对应规则识别得到执行应用程序的语言标识;
所述对应规则的语言标识解析子单元至少包括:执行应用程序的请求消息头部解析子单元、存储在终端的本地数据Cookie解析子单元和/或远程过程调用Rpc解析子单元,分别用于在该请求消息的超文本传输协议HTTP头部参数得到语言标识、从接收该请求消息的实体的Cookie中获得语言标识及采用Rpc方式从发送该请求消息的请求方获得语言标识。
一种实现应用程序的多语言翻译的方法,由电子设备执行,所述方法包括:
接收请求方发送的执行应用程序的请求消息,根据解析该请求消息基于的交互协议,确定识别语言标识的规则,根据所述识别语言标识的规则,识别执行该应用程序的语言标识;
执行该应用程序,在应用程序执行过程中识别其中的待翻译文案信息,根据识别的执行该应用程序的语言标识,获取所存储的对应语言的语言包;
根据所存储的对应语言的语言包,执行翻译得到翻译后的文案信息,嵌入到所执行的该应用程序中,作为响应信息,发送给所述请求方。
较佳地,所述获取所存储的对应语言的语言包包括:
实时接收不同来源的对于该应用程序的不同语言的语言包,进行整合、存储或/和管理;
对应该应用程序的不同语言的语言包设置不同的优先级,在提供相应语言的语言包时根据所设置的优先级进行提供;
从存储的不同语言的语言包中获取对应语言的语言包。
较佳地,所述根据所述识别语言标识的规则,识别执行该应用程序的语言标识包括:
在该请求消息的HTTP头部参数得到该语言标识;
或/和,从接收该请求消息的实体的Cookie中获得该语言标识;
或/和,采用Rpc方式从发送该请求消息的请求方获得该语言标识。
一种电子设备,包括:
存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所 述存储器中的指令,执行上述的实现应用程序的多语言翻译的方法。
一种计算机可读存储介质,其特征在于,其上存储有计算机程序,该程序被处理器执行时实现上述的实现应用程序的多语言翻译的方法。
如上所见,本申请实施例采用分布式网络实现应用程序的多语言翻译,该分布式网络中包括了标识解析单元、语言解析单元、上下文解析单元及数据资源管理单元,其中,数据资源管理单元,用于接收不同来源的针对应用程序的不同语言的语言包,进行整合、存储或/和管理;标识解析单元,用于接收请求方发送的执行应用程序的请求消息,根据解析该请求消息基于的交互协议确定识别语言标识的规则,根据所述识别语言标识的规则,识别执行该应用程序的语言标识,确定该应用程序执行的语言环境;上下文解析单元,用于从标识解析单元中获取执行该应用程序的语言标识并存储,以使得该应用程序的执行过程中调用该语言标识;语言解析单元,用于在该应用程序执行过程中识别其中的待翻译文案信息,根据从上下文解析单元获取的应用程序执行的语言标识,从数据资源管理单元中获取对应语言的语言包,执行翻译后得到翻译后的文案信息,嵌入到所执行应用程序中,作为响应信息,发送给请求方。这样,本申请实施例可以高效地管理语言包资源及有效识别请求方的语言设置,从而实现了高效及准确地对应用程序进行多语言翻译。
附图简要说明
图1为本申请实施例提供的一种实现应用程序的多语言翻译的系统结构示意图;
图2为本申请实施例提供的数据资源管理单元的结构示意图;
图3为本申请实施例提供的标识解析单元的结构示意图;
图4为本申请实施例提供的一种实现应用程序的多语言翻译的方法流程图;
图5为本申请实施例提供的一种实现应用程序的多语言翻译的方法具体例子示意图。
实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所 获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其他步骤或单元。
下面以具体实施例对本申请的技术方案进行详细说明。下面几个具体实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
从背景技术可以确定,为了实现高效及准确地对应用程序进行多语言翻译,就需要高效地管理应用程序的语言包资源及有效识别请求方的语言设置。为了解决这两个问题,现有提出了两个方案分别实施。
第一方案,公告号为“CN109683998A”,名称为“国际化实现方法、装置和系统”的专利申请中,包括:接收携带目标语言信息的访问请求;在缓存中存储的语言配置数据中确定所述访问请求的请求页面中的业务数据;响应于所述访问请求,将所述业务数据返回。这个方案将语言包抽离成独立的资源服务,实现了语言包资源的集中管理,但是资源服务内部依然区分不同的业务子系统,资源利用率不高,当多个子系统存在相同的语言条目时,仍需单独维护。更进一步地,这种方式无法实行应用程序的多语言翻译工作的降级,每次进行翻译都需要调用资源服务,效率不高,当资源服务整体宕机时,整个过程也变为不可用状态。
第二方案,公告号为“CN111177318A”,名称为“一种执行国际化业务的方法、装置和计算机可读存储介质”的专利申请中,包括:接收客户端发送的业务请求;按照预先定义的语言标识规则,查询与客户端相匹配的语言类型。从建立的文本资源库中调用与语言类型相匹配的语言文本集合。获取与业务请求相对应的目标文件;查询语言文本集合中与目标文件中文本标识相匹配的目标语言文本;将目标语言文本反馈至客户端。这个方案针对不同客户端及不同业务请求的语言标识设定规则,以解决应用程序在不同语言环境的自动适配问题,但是其针对的仅仅是一种数据交互协议,无法实现应用程序的多交互协议的适配。
从上述两种方案可以看出,虽然分别提出了如何管理应用程序的语言包资源,及如何识别请求方的语言设置,但是,上述两种方案都存在缺陷,无法分别高效且动态地管理应用程序的语言包资源,及无法基于不同交互协议实现应用程序的执行语言环境的准确识别。
因此,本申请实施例为了解决这个问题,本申请实施例采用分布式网络实现应用程序的多语言翻译,该分布式网络中包括了标识解析单元、语言解析单元、上下文解析单元及数据资源管理单元,其中,数据资源管理单元,用于接收不同来源的针对应用程序的不同语言的语言包,进行整合、存储或/和管理;标识解析单元,用于接收请求方发送的执行应用程序的请求消息,根据解析该请求消息基于的交互协议确定识别语言标识的规则,根据所述识别语言标识的规则,识别执行该应用程序的语言标识,确定该应用程序执行的语言环境;上下文解析单元,用于从标识解析单元中获取执行该应用程序的语言标识并存储,以使得该应用程序的执行过程中调用该语言标识;语言解析单元,用于在该应用程序执行过程中识别其中的待翻译文案信息,根据从上下文解析单元获取的应用程序执行的语言标识,从数据资源管理单元中获取对应语言的语言包,执行翻译后得到翻译后的文案信息,嵌入到所执行应用程序中,作为响应信息,发送给请求方。这样,本申请实施例可以高效地管理语言包资源及有效识别请求方的语言设置,从而实现了高效及准确地对应用程序进行多语言翻译。
这样,本申请实施例就可以高效地管理语言包资源及有效识别请求方的语言设置,从而实现了高效及准确地对应用程序进行多语言翻译。
在本申请实施例中,该分布式网络中的标识解析单元设置有统一语言标识解析接口,针对一个应用程序的不同交互协议对请求方的语言标识进行分别识别,从而可以识别得到应用程序当前执行的语言环境;该分布式网络还包括数据资源管理单元,针对一个应用程序的不同语言包数据资源进行集中管理;该分布式网络当识别得到请求方所适用的语言标识时,从集中管理的语言包资源中获取到对应语言标识的语言包资源,对应用程序中的文案信息进行对应语言标识的语言翻译并提供给请求方。
具体地说,本申请实施例可以对分布式网络中的应用程序所在的语言环境进行自动识别:分布式网络中的应用程序的执行方及请求方在交互时,两者之间通常具有多种交互协议,在不同交互协议下请求方发出的请求消息的方式及该请求消息所 请求应用程序执行时所在语言环境的语言标识的传输方式都不同。在这种情况下,标识解析单元设置有统一语言标识解析接口,该统一语言标识解析接口解析出请求消息基于的交互协议,并根据该交互协议确定识别语言标识的规则,根据所确定的规则识别得到当前执行应用程序的语言标识,从而对基于不同交互协议的请求消息所具有的语言标识识别进行集中管理,实现了应用程序当前执行的语言环境的自动识别。
本申请实施例可以对分布式网络中的应用程序的语言包数据资源进行集中管理,并可以动态下发及可降级的进行语言包数据资源管理:设置数据资源管理单元,该单元中具有统一语言包数据资源读取接口,可以对不同来源的语言包数据资源设定优先级,且对不同来源的语言包数据资源进行整合并存储,提供给执行应用程序的单元后续使用,这个过程可以是实时的。这样,对语言包数据资源的获取统一接口,且进行整合实现集中管理,还可以对不同的语言包采用不同优先级设置,实现语言包数据资源的管理降级,并与语言解析单元进行交互,实现对应语言的语言包数据资源的动态下发。
本申请实施例实现无耦合的应用程序的文案信息的自动翻译:通过设置上下文解析单元及语言解析单元,对在应用程序的文案信息的自动翻译过程中涉及的文案信息进行拦截,并调用对应语言的语言包数据资源进行自动翻译,从而隔离应用程序的执行,实现应用程序的执行与应用程序的多语言翻译无耦合。
图1为本申请实施例提供的一种实现应用程序的多语言翻译的系统结构示意图,该系统包括:标识解析单元、语言解析单元、上下文解析单元及数据资源管理单元,其中,
数据资源管理单元,用于接收针对应用程序的不同语言的语言包,进行整合、存储和/或管理;
标识解析单元,用于接收请求方发送的执行应用程序的请求消息,根据解析该请求消息基于的交互协议确定识别语言标识的规则,根据所述识别语言标识的规则,识别执行该应用程序的语言标识;
上下文解析单元,用于获取标识解析单元中的执行该应用程序的语言标识并存储;
语言解析单元,用于在该应用程序执行过程中识别其中的待翻译文案信息,根据从上下文解析单元获取的执行该应用程序的语言标识,获取数据资源管理单元中 该应用程序的对应语言的语言包,执行翻译得到翻译后的文案信息,嵌入到所执行的该应用程序中,作为响应信息,发送给请求方。
在该系统可以对来自外部的多个请求消息同时处理,这时,在上下文解析单元就维护针对不同请求消息所请求应用程序的不同执行语言环境的不同语言标识,这里不限制。
在该系统中,数据资源管理单元对针对应用程序的不同语言的语言包,进行整合、存储或/和管理可以是实时的。
在该系统中,数据资源管理单元是一个抽象的统一接口,对于一个应用程序采用的不同语言的语言包可以有不同的实现。图2为本申请实施例提供的数据资源管理单元的结构示意图,包括:资源配置中心子单元、文件资源子单元及整合资源子单元,其中,
资源配置中心子单元,用于接收不同外部来源的对应该应用程序的多个不同语言的语言包;
文件资源子单元,用于接收本地来源的对应该应用程序的多个不同语言的语言包;在这里,本地来源可以为本地资源数据库;
整合资源子单元,用于将资源配置中心子单元及文件资源子单元接收到的,对于该应用程序的多个不同语言的语言包进行整合、存储或/和管理。
在这里,数据资源管理单元还可以进一步扩展,可以包括其他获取子单元,用于实时接收其他来源的对应该应用程序的多个不同语言的语言包。该其他获取子单元可以为数据库或缓存介质等。
在这里,整合资源子单元还可以对所有获取到的对应该应用程序的多个不同语言的语言包进行任何组合后并进行组合后管理,为所述不同语言的语言包设置不同的优先级,在提供相应语言的语言包时根据所设置的优先级进行提供,将优先级最高的相应语言的语言包进行提供,从而实现语言包资源的集中管理和降级管理能力。
整合资源子单元中的对应该应用程序的相同语言的语言包可以被语言解析单元,在执行来自多个不同请求方的执行应用程序的请求消息时使用,且可动态地实时更新,而不影响应用程序的执行,规避了针对不同请求方,对应该应用程序的相同语言的语言包要独立维护及执行的问题。
标识解析单元实质上用于调用请求方设定的语言标识,其是一个抽象接口,针对不同的交互协议可以有不同的实现。图3为本申请实施例提供的标识解析单元的 结构示意图,包括:交互协议识别子单元及多个对应不同规则的语言标识解析子单元,其中,
交互协议识别子单元,用于接收执行应用程序的请求消息,解析得到的该请求消息所基于的交互协议,确定所基于的交互协议对应的识别语言标识的规则后,将该请求消息发送给对应规则的语言标识解析子单元;
对应规则的语言标识解析子单元,用于根据对应规则识别得到执行应用程序的语言标识,得到应用程序执行的语言环境。
在这里,多个对应不同规则的语言标识解析子单元至少包括执行应用程序的请求消息头部解析子单元、存储在终端的本地数据(Cookie)解析子单元和/或远程过程调用(Rpc)解析子单元,分别用于在该请求消息的超文本传输协议(HTTP)头部参数得到语言标识、从接收该请求消息的实体的Cookie中获得语言标识及采用Rpc方式从发送该请求消息的请求方获得语言标识。当然,多个不同规则的语言标识解析子单元还可以进一步扩展,以适应其他交互协议所对应的识别语言标识的规则。
在这里,交互协议识别子单元能够解析得到该请求消息所基于的交互协议,并确定对应不同规则的语言标识解析子单元。对应不同规则的语言标识解析子单元是针对分布式网络中不同的交互协议设置的,可以进行横向扩展及自动管理,对应用程序的执行逻辑无侵入。
在该系统中,上下文解析单元用于存储当前执行应用程序的语言标识,在应用程序的整个执行过程中任意被调用。主要包括应用程序中的文案信息翻译及与请求方进行交互时,将语言标识作为请求参数进行透传。
在该系统中,语言解析单元负责通过特定方式识别执行的应用程序的待翻译文案信息,该特定方式比如是注解标记或消息占位符等在应用程序中标记的待翻译文案信息,并在应用程序执行完成后,给请求方返回响应信息时,结合对应语言的语言包资源及该翻译文案信息在应用程序中的上下文位置,执行翻译且返回响应信息。
图4为本申请实施例提供的一种实现应用程序的多语言翻译的方法流程图,该方法可由图1所示的系统执行、或者可由下文所描述的电子设备执行,具体过程为:
步骤401、接收执行应用程序的请求消息,根据解析该请求消息基于的交互协议,确定识别语言标识的规则,根据所述识别语言标识的规则,识别执行该应用程序的语言标识;
步骤402、执行该应用程序,在应用程序执行过程中识别其中的待翻译文案信息,根据识别的执行该应用程序的语言标识,获取所存储的对应语言的语言包;
步骤403、根据所存储的对应语言的语言包,执行翻译得到翻译后的文案信息,嵌入到所执行的该应用程序中,作为响应信息,返回给请求方。
在该方法中,所述获取所存储的对应语言的语言包包括:
接收不同来源的针对应用程序的不同语言的语言包,进行整合、存储及管理;在这里,可以实时接收不同来源的针对应用程序的不同语言的语言包,进行实时整合、实时存储及实时管理;
从存储的不同语言的语言包中获取对应语言的语言包。
进一步地,所述进行管理还包括:
针对应用程序的不同语言的语言包设置不同的优先级,在提供相应语言的语言包时根据所设置的优先级进行提供。
在该方法中,所述根据所述识别语言标识的规则,识别得到该请求消息所请求应用程序的执行语言环境的语言标识包括:
在该请求消息的HTTP头部参数得到该语言标识;
或/和,从接收该请求消息的实体的Cookie中获得该语言标识;
或/和,采用Rpc方式从发送该请求消息的请求方获得该语言标识。
图5为本申请实施例提供的一种实现应用程序的多语言翻译的方法具体例子示意图,与图4类似,图5所示的方法可由图1所示的系统执行、或者可由下文所描述的电子设备执行,其具体步骤包括:
步骤501、当执行应用程序的分布式网络启动后,加载已有的针对应用程序的不同语言的语言包,以供后续使用;
在本步骤中,分布式网络运行过程中,应用程序的不同语言的语言包可实时添加或更新;
步骤502、分布式网络接收到执行应用程序的请求消息;
在本步骤中,该请求消息传输可以采用HTTP或RPC等交互协议;
步骤503、分布式网络中的标识解析单元拦截到该请求消息,根据该请求消息所基于的交互协议,执行对应的语言标识解析;
步骤504、分布式网络中的标识解析单元解析完成,得到语言标识,发送给上下文解析单元存储,供后续使用;
步骤505、分布式网络进行应用程序的执行;
在本步骤中,如果应用程序的执行过程中还发起了其他执行应用程序的请求消息,则采用上述步骤拦截其他应用程序的执行请求消息,添加语言标识到上下文解析单元存储;
步骤506、分布式网络执行应用程序结束后得到响应信息,判断该响应信息是否携带有应用程序的待翻译文案信息,如果是,执行步骤507;如果否,执行步骤508;
步骤507、根据上下文解析单元所存储的语言标识,获取所存储的对应语言的语言包,根据所存储的对应语言的语言包,执行翻译得到翻译后的文案信息,嵌入到所执行应用程序中,作为响应信息;
步骤508、将响应信息发送给请求方。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储指令,所述指令在由处理器执行时可执行如上所述实现应用程序的多语言翻译的方法的步骤。实际应用中,所述的计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的,也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或多个程序被执行时,可以实现上述各实施例描述的所述实现应用程序的多语言翻译的方法。根据本申请公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件,或者上述的任意合适的组合,但不用于限制本申请保护的范围。在本申请公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
本申请实施例还提供一种电子设备,其中可以集成本申请实施例实现方法的系统。具体来讲:
该电子设备可以包括一个或一个以上处理核心的处理器、一个或一个以上计算机可读存储介质的存储器以及存储在存储器上并可在处理器上执行的计算机程序。在执行所述存储器的程序时,可以实现上述的应用程序的多语言翻译的方法。
具体的,实际应用中,该电子设备还可以包括电源、输入单元、以及输出单元 等部件。本领域技术人员可以理解,本申请实施例中的电子设备的结构并不构成对该电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过执行存储在存储器内的软件程序和/或模块,以及调用存储在存储器内的数据,执行服务器的各种功能和处理数据,从而对该电子设备进行整体监控。
存储器可用于存储软件程序以及模块,即上述计算机可读存储介质。处理器通过执行存储在存储器的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器还可以包括存储器控制器,以提供处理器对存储器的访问。
该电子设备还包括给各个部件供电的电源,可以通过电源管理系统与处理器逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该电子设备还可包括输入单元,该输入单元可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
该电子设备还可以包括输出单元,该输出单元可以用于显示由用户输入的信息或提供给用户的信息以及各种图像用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。
本申请附图中的流程图和框图,示出了按照本申请公开的各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或者代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应该注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连接地表示的方框实际上可以基本并行地执行,它们有时也可以按照相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图 或流程图中的每个方框、以及框图或者流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本申请中。特别地,在不脱离本申请精神和教导的情况下,本申请的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,所有这些组合和/或结合均落入本申请公开的范围。
本文中应用了具体实施例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思路,并不用于限制本申请。对于本领域的技术人员来说,可以依据本申请的思路、精神和原则,在具体实施方式及应用范围上进行改变,其所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (10)

  1. 一种实现应用程序的多语言翻译的系统,其特征在于,包括:标识解析单元、语言解析单元、上下文解析单元及数据资源管理单元,其中,
    所述数据资源管理单元,用于接收针对所述应用程序的不同语言的语言包,进行整合、存储和/或管理;
    所述标识解析单元,用于接收请求方发送的执行所述应用程序的请求消息,根据解析所述请求消息基于的交互协议确定识别语言标识的规则,根据所述识别语言标识的规则,识别执行所述应用程序的语言标识;
    所述上下文解析单元,用于获取所述标识解析单元中的执行所述应用程序的语言标识并存储;
    所述语言解析单元,用于在所述应用程序执行过程中识别其中的待翻译文案信息,根据从所述上下文解析单元获取的执行所述应用程序的语言标识,获取所述数据资源管理单元中所述应用程序的对应语言的语言包,执行翻译得到翻译后的文案信息,嵌入到所执行的所述应用程序中,作为响应信息,发送给所述请求方。
  2. 如权利要求1所述的系统,其特征在于,所述系统对多个执行不同应用程序的请求消息同时处理;
    所述上下文解析单元,还用于维护不同语言的不同语言标识,所述不同语言的不同语言标识对应于不同请求消息所请求执行的应用程序。
  3. 如权利要求1所述的系统,其特征在于,所述数据资源管理单元包括:资源配置中心子单元、文件资源子单元及整合资源子单元,其中,
    所述资源配置中心子单元,用于接收不同外部来源的对应所述应用程序的多个不同语言的语言包;
    所述文件资源子单元,用于接收本地来源的对应所述应用程序的多个不同语言的语言包;
    所述整合资源子单元,用于将所述资源配置中心子单元及所述文件资源子单元接收到的,对于所述应用程序的多个不同语言的语言包进行整合,存储或/和管理。
  4. 如权利要求1或3所述的系统,其特征在于,所述数据资源管理单元中的整合资源子单元,还用于在管理所述应用程序的不同语言的语言包时,设置不同的优先级,所述不同优先级用于在提供所述应用程序的对应语言的语言包时,根据所设置的优先级提供。
  5. 如权利要求1所述的系统,其特征在于,所述标识解析单元包括交互协议识别子单元及多个对应不同规则的语言标识解析子单元,其中,
    所述交互协议识别子单元,用于接收执行所述应用程序的请求消息,解析得到所述请求消息所基于的交互协议,确定所基于的交互协议对应的识别语言标识的规则后,将所述请求消息发送给对应规则的语言标识解析子单元;
    所述对应规则的语言标识解析子单元,用于根据对应规则识别得到执行所述应用程序的语言标识;
    所述对应规则的语言标识解析子单元至少包括:执行应用程序的请求消息头部解析子单元、存储在终端的本地数据Cookie解析子单元和/或远程过程调用Rpc解析子单元,分别用于在所述请求消息的超文本传输协议HTTP头部参数得到语言标识、从接收所述请求消息的实体的Cookie中获得语言标识及采用Rpc方式从发送所述请求消息的请求方获得语言标识。
  6. 一种实现应用程序的多语言翻译的方法,由电子设备执行,其特征在于,所述方法包括:
    接收请求方发送的执行所述应用程序的请求消息,根据解析所述请求消息基于的交互协议,确定识别语言标识的规则,根据所述识别语言标识的规则,识别执行所述应用程序的语言标识;
    执行所述应用程序,在所述应用程序执行过程中识别其中的待翻译文案信息,根据识别的执行所述应用程序的语言标识,获取所存储的对应语言的语言包;
    根据所存储的对应语言的语言包,执行翻译得到翻译后的文案信息,嵌入到所执行的所述应用程序中,作为响应信息,发送给所述请求方。
  7. 如权利要求6所述的方法,其特征在于,所述获取所存储的对应语言的语言 包包括:
    实时接收不同来源的对于所述应用程序的不同语言的语言包,进行整合、存储或/和管理;
    对应所述应用程序的不同语言的语言包设置不同的优先级,在提供相应语言的语言包时根据所设置的优先级进行提供;
    从存储的不同语言的语言包中获取对应语言的语言包。
  8. 如权利要求6所述的方法,其特征在于,所述根据所述识别语言标识的规则,识别执行所述应用程序的语言标识包括:
    在所述请求消息的HTTP头部参数得到所述语言标识;
    或/和,从接收所述请求消息的实体的Cookie中获得所述语言标识;
    或/和,采用远程过程调用Rpc方式从发送所述请求消息的请求方获得所述语言标识。
  9. 一种电子设备,其特征在于,包括:
    存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如权利要求6~8任一项所述的实现应用程序的多语言翻译的方法。
  10. 一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求6~8任一项所述的实现应用程序的多语言翻译的方法。
PCT/CN2022/085469 2021-04-07 2022-04-07 实现应用程序的多语言翻译的系统、方法、设备和介质 WO2022214012A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110369864.0 2021-04-07
CN202110369864.0A CN113111666A (zh) 2021-04-07 2021-04-07 一种实现应用程序的多语言翻译的系统及方法

Publications (1)

Publication Number Publication Date
WO2022214012A1 true WO2022214012A1 (zh) 2022-10-13

Family

ID=76714389

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/085469 WO2022214012A1 (zh) 2021-04-07 2022-04-07 实现应用程序的多语言翻译的系统、方法、设备和介质

Country Status (2)

Country Link
CN (1) CN113111666A (zh)
WO (1) WO2022214012A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113111666A (zh) * 2021-04-07 2021-07-13 北京沃东天骏信息技术有限公司 一种实现应用程序的多语言翻译的系统及方法
CN114912469B (zh) * 2022-05-26 2023-03-31 东北农业大学 一种转换中文、英文语言的信息沟通方法及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1928813A (zh) * 2006-09-22 2007-03-14 华为技术有限公司 一种应用程序人机交互界面的翻译方法及系统
US20140249797A1 (en) * 2011-11-25 2014-09-04 Mindy Liu Providing translation assistance in application localization
CN106940646A (zh) * 2017-03-17 2017-07-11 微梦创科网络科技(中国)有限公司 一种软件国际化处理方法、装置及系统
CN108984170A (zh) * 2017-06-02 2018-12-11 阿里巴巴集团控股有限公司 H5页面多语言渲染方法及装置
CN113111666A (zh) * 2021-04-07 2021-07-13 北京沃东天骏信息技术有限公司 一种实现应用程序的多语言翻译的系统及方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8249858B2 (en) * 2008-04-24 2012-08-21 International Business Machines Corporation Multilingual administration of enterprise data with default target languages
WO2010062447A1 (en) * 2008-10-28 2010-06-03 Rti International Language translation system having multi-platform capabilities and associated method
US20120022851A1 (en) * 2010-07-23 2012-01-26 International Business Machines Corporation On-demand translation of application text
US9672209B2 (en) * 2012-06-21 2017-06-06 International Business Machines Corporation Dynamic translation substitution
US9047276B2 (en) * 2012-11-13 2015-06-02 Red Hat, Inc. Automatic translation of system messages using an existing resource bundle
US10599765B2 (en) * 2013-06-27 2020-03-24 Avaya Inc. Semantic translation model training
CN104346153B (zh) * 2013-07-31 2018-04-17 国际商业机器公司 用于翻译应用程序的文本信息的方法和系统
US11048885B2 (en) * 2018-09-25 2021-06-29 International Business Machines Corporation Cognitive translation service integrated with context-sensitive derivations for determining program-integrated information relationships
CN110414011A (zh) * 2019-06-21 2019-11-05 北京三快在线科技有限公司 多语言翻译装置、方法、电子设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1928813A (zh) * 2006-09-22 2007-03-14 华为技术有限公司 一种应用程序人机交互界面的翻译方法及系统
US20140249797A1 (en) * 2011-11-25 2014-09-04 Mindy Liu Providing translation assistance in application localization
CN106940646A (zh) * 2017-03-17 2017-07-11 微梦创科网络科技(中国)有限公司 一种软件国际化处理方法、装置及系统
CN108984170A (zh) * 2017-06-02 2018-12-11 阿里巴巴集团控股有限公司 H5页面多语言渲染方法及装置
CN113111666A (zh) * 2021-04-07 2021-07-13 北京沃东天骏信息技术有限公司 一种实现应用程序的多语言翻译的系统及方法

Also Published As

Publication number Publication date
CN113111666A (zh) 2021-07-13

Similar Documents

Publication Publication Date Title
WO2022214012A1 (zh) 实现应用程序的多语言翻译的系统、方法、设备和介质
US9244817B2 (en) Remote debugging in a cloud computing environment
CN107508795B (zh) 跨容器集群的访问处理装置及方法
WO2019153488A1 (zh) 服务配置管理方法、装置、存储介质和服务器
CN101821993A (zh) 对使用会话亲缘性的分布式环境中的故障恢复进行处理的方法和系统
CN110113188B (zh) 跨子域通信运维方法、总运维服务器和介质
WO2019062634A1 (zh) 通信方法及装置
CN110706148B (zh) 人脸图像处理方法、装置、设备和存储介质
WO2023087766A1 (zh) 双系统通信方法、装置、电子设备及计算机可读存储介质
WO2019062019A1 (zh) 一种数据列表的导出方法及其终端
US8938522B2 (en) Tiered XML services in a content management system
CN113300933A (zh) 会话内容的管理方法、装置、计算机设备和可读存储介质
CN114201280A (zh) 多媒体数据的处理方法、装置、设备以及存储介质
US20090132582A1 (en) Processor-server hybrid system for processing data
US20050071422A1 (en) Method, system, and computer program product for an automation tool adapter for use with multiple different automation tools
CN112765246A (zh) 任务处理方法、装置、电子设备和存储介质
WO2022267646A1 (zh) 一种容器集的部署方法及装置
US20110191405A1 (en) Automatic Client-Server Code Generator
CN110096543A (zh) 应用程序的数据操作方法、装置、服务器和介质
WO2021232860A1 (zh) 通信方法、装置及系统
WO2013121572A1 (ja) 分散システムにおける異種システムデータ提供方法
CN113626869A (zh) 数据处理方法、系统、电子设备以及存储介质
CN113672671A (zh) 一种实现数据加工的方法和装置
WO2024037629A1 (zh) 区块链的数据整合方法、装置、计算机设备及存储介质
CN112965763B (zh) 一种业务处理系统、方法、装置和存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22784078

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE