Method, device, computer device and storage medium for creating an application

CN114443002BActive Publication Date: 2026-08-18TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202011227642.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-11-06
Publication Date
2026-08-18
Estimated Expiration
2040-11-06

AI Technical Summary

Technical Problem

[0004]上述方式存在的问题是,定制开发应用程序需要花费大量的时间,且开发成本较高

Benefits of technology

[0034]In this application embodiment, a method for creating an application is provided. By using the source code of other applications with the same business functions, combined with configuration information uploaded by the user and a signing certificate obtained by the server, a target application can be created. This eliminates the need for redevelopment and provides an application with the required business functions and interface, saving development time and reducing development costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114443002B_ABST
    Figure CN114443002B_ABST
Patent Text Reader

Abstract

The application provides a method and device for creating an application, a computer device and a storage medium, and belongs to the technical field of Internet. The method comprises the following steps: generating a program identifier according to an application creation request, the application creation request carrying configuration information of the application program, the configuration information being used for indicating user interface resources of the application program; obtaining a signature certificate based on the program identifier, the signature certificate being used for publishing the application program; and creating a target application program based on the configuration information, the signature certificate and general program source code, the general program source code being source code of other application programs having the same business function as the target application program. According to the above technical solution, the target application program is created by combining the source code of other application programs, the configuration information uploaded by the user and the signature certificate obtained by the server, so that the application program meeting the requirements of business function and interface can be obtained without re-development, development time is saved, and development cost is low.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of Internet technology, and in particular to a method, apparatus, computer device, and storage medium for creating applications. Background Technology

[0002] With the development of internet technology, people's work and lifestyles are gradually changing. For example, enterprises rely on internet technology, combining software and hardware to achieve paperless office work, online communication, and remote work. However, because enterprises typically use mature third-party applications to facilitate communication between users, these applications often fail to meet the actual needs of the enterprise.

[0003] Currently, to address these issues, companies typically engage in custom application development, either through their own software development departments or third-party software development companies, tailored to their specific needs. Applications developed in this way meet the company's actual requirements.

[0004] The problem with the above approach is that custom application development requires a lot of time and has high development costs. Summary of the Invention

[0005] This application provides a method, apparatus, computer device, and storage medium for creating applications. It eliminates the need for redevelopment, providing applications with the required business functions and interface, thus saving development time and reducing development costs. The technical solution is as follows:

[0006] On the one hand, a method for creating an application is provided, the method comprising:

[0007] Based on the application creation request, a program identifier is generated. The application creation request carries the application's configuration information, which is used to indicate the application's user interface resources.

[0008] Based on the program identifier, a signing certificate is obtained, which is used to distribute the application.

[0009] Based on the configuration information, the signing certificate, and the generic program source code, a target application is created, wherein the generic program source code is the source code of other applications that have the same business functions as the target application.

[0010] On the other hand, an apparatus for creating an application is provided, the apparatus comprising:

[0011] The application identifier generation module is used to generate an application identifier based on the application creation request, wherein the application creation request carries the application's configuration information, and the configuration information is used to indicate the application's user interface resources.

[0012] The signing certificate acquisition module is used to acquire a signing certificate based on the program identifier, and the signing certificate is used to distribute the application.

[0013] The program creation module is used to create a target application based on the configuration information, the signing certificate, and the generic program source code, wherein the generic program source code is the source code of other applications that have the same business functions as the target application.

[0014] In one optional implementation, the program identifier generation module is used to parse the application creation request to obtain the configuration information and user qualification information, wherein the user qualification information is used to indicate relevant information of the user who initiated the application creation request; and in response to the configuration information and the user qualification information being approved, the program identifier is generated.

[0015] In one optional implementation, the signature certificate acquisition module is configured to send a certificate acquisition request to the application management server, the certificate acquisition request carrying the program identifier; and receive the signature certificate returned by the application management server.

[0016] In one optional implementation, the program creation module is configured to, in response to a program packaging request, obtain the generic program source code; replace the user interface resources corresponding to the generic program source code based on the configuration information and the program identifier to obtain a target program installation package; and sign the installation package of the target application based on the signing certificate to obtain the target application.

[0017] In one alternative implementation, the apparatus further includes:

[0018] The public key acquisition module is used to acquire the program public key based on the program identifier. The program public key is used for communication between the application and third-party services. The program public key is then added to the configuration file of the target application.

[0019] In one alternative implementation, the user interface resources include at least one of text information resources, image resources, interface style resources, function configuration resources, and color resources.

[0020] In one alternative implementation, the apparatus further includes:

[0021] An information adding module is used to add type information to the configuration file of the target application, the type information being used to indicate that the target application is an application of the target type.

[0022] In one alternative implementation, the apparatus further includes:

[0023] The information acquisition module is used to respond to the application modification request of the target application and acquire the configuration modification information carried in the application modification request;

[0024] An update package generation module is used to generate an update package for the target application based on the configuration modification information.

[0025] The update package push module is used to push the update package to at least one terminal that has the target application installed.

[0026] In one alternative implementation, the apparatus further includes:

[0027] The identifier acquisition module is used to acquire the third-party account identifier and the program identifier carried in the user login request in response to the user login request.

[0028] The identifier generation module is used to generate a first user identity identifier corresponding to the third-party account identifier and a second user identity identifier corresponding to the program identifier;

[0029] The relationship establishment module is used to establish a correspondence between the first user identity identifier and the second identity identifier, wherein one first user identity identifier corresponds to at least one second user identity identifier.

[0030] On the other hand, a computer device is provided, the computer device including a processor and a memory, the memory being used to store at least one computer program, the at least one computer program being loaded and executed by the processor to implement the operations performed in the method of creating an application in the embodiments of this application.

[0031] On the other hand, a computer-readable storage medium is provided that stores at least one computer program, which is loaded and executed by a processor to perform operations as performed in the method of creating an application in the embodiments of this application.

[0032] On the other hand, a computer program product or computer program is provided, comprising computer program code stored in a computer-readable storage medium. A processor of a computer device reads the computer program code from the computer-readable storage medium and executes the computer program code, causing the computer device to perform the method for creating an application provided in the foregoing aspects or various alternative implementations of the foregoing aspects.

[0033] The beneficial effects of the technical solutions provided in this application are:

[0034] In this application embodiment, a method for creating an application is provided. By using the source code of other applications with the same business functions, combined with configuration information uploaded by the user and a signing certificate obtained by the server, a target application can be created. This eliminates the need for redevelopment and provides an application with the required business functions and interface, saving development time and reducing development costs. Attached Figure Description

[0035] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0036] Figure 1 This is a schematic diagram illustrating the implementation environment of the method for creating an application according to the embodiments of this application;

[0037] Figure 2 This is a flowchart of a method for creating an application according to an embodiment of this application;

[0038] Figure 3 This is a flowchart of another method for creating an application according to an embodiment of this application;

[0039] Figure 4 This is a comparative diagram of an application icon and name provided according to an embodiment of this application;

[0040] Figure 5 This is a comparative schematic diagram of the welcome page style of an application provided according to an embodiment of this application;

[0041] Figure 6 This is a comparative schematic diagram of the login page style of an application provided according to an embodiment of this application;

[0042] Figure 7 This is a comparative schematic diagram of the business function entry points of an application provided according to an embodiment of this application;

[0043] Figure 8 This is a schematic diagram of an enterprise selection interface for a general version of an instant messaging application provided according to an embodiment of this application;

[0044] Figure 9 This is a flowchart of another method for creating an application according to an embodiment of this application;

[0045] Figure 10 This is a block diagram of an apparatus for creating an application according to an embodiment of this application;

[0046] Figure 11 This is a schematic diagram of the structure of a server according to an embodiment of this application. Detailed Implementation

[0047] To make the objectives, technical solutions, and advantages of this application clearer, the embodiments of this application will be described in further detail below with reference to the accompanying drawings.

[0048] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.

[0049] The following describes the implementation environment of the method for creating an application provided in the embodiments of this application. Figure 1 This is a schematic diagram illustrating the implementation environment of the method for creating an application according to an embodiment of this application. See also... Figure 1 The implementation environment includes terminal 101 and server 102.

[0050] Terminal 101 and server 102 can be connected directly or indirectly via wired or wireless communication, and this application does not impose any restrictions on this.

[0051] Optionally, terminal 101 can be a smartphone, tablet, laptop, desktop computer, smart speaker, smartwatch, etc., but is not limited to these. Terminal 101 has an application installed and running. This application can be any type of social application, game application, or office application. For illustrative purposes, terminal 101 is a terminal used by a user, and the user's account is logged into terminal 101.

[0052] Optionally, server 102 can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. Server 102 is used to provide background services for applications. Optionally, server 102 undertakes the main computing work, and terminal 101 undertakes the secondary computing work; or, server 102 undertakes the secondary computing work, and terminal 101 undertakes the main computing work; or, server 102 and terminal 101 collaborate on computing using a distributed computing architecture.

[0053] Those skilled in the art will understand that the number of terminals described above can be more or less. For example, there may be only one terminal, or there may be dozens or hundreds of terminals, or even more. This application does not limit the number of terminals or the type of device.

[0054] Optionally, the aforementioned wireless or wired networks use standard communication technologies and / or protocols. The network is typically the Internet, but can be any network, including but not limited to Local Area Networks (LANs), Metropolitan Area Networks (MANs), Wide Area Networks (WANs), mobile, wired or wireless networks, private networks, or any combination of virtual private networks. In some embodiments, technologies and / or formats, including Hyper Text Markup Language (HTML), Extensible Markup Language (XML), etc., are used to represent data exchanged over the network. Furthermore, conventional encryption technologies such as Secure Socket Layer (SSL), Transport Layer Security (TLS), Virtual Private Networks (VPNs), and Internet Protocol Security (IPsec) can be used to encrypt all or some links. In other embodiments, customized and / or dedicated data communication technologies can be used to replace or supplement the aforementioned data communication technologies.

[0055] Figure 2 This is a flowchart of a method for creating an application according to an embodiment of this application, such as... Figure 2 As shown, this application embodiment uses an application to a server as an example for explanation. The method for creating an application includes the following steps:

[0056] 201. The server generates a program identifier based on the application creation request. The application creation request carries the application's configuration information, which is used to indicate the application's user interface resources.

[0057] In this embodiment, when the server receives an application creation request, it generates a program identifier for the application to be created. This program identifier is used to uniquely identify the application. The configuration information consists of user interface resources submitted by the user requesting application creation, such as user-defined UI (User Interface) styles like application icon, application name, application welcome page style, and theme colors.

[0058] 202. The server obtains a signing certificate based on the program identifier, which is used to distribute the application.

[0059] In this embodiment, the application requires permission from an application management authority such as an app store before it can be published and downloaded and used by users. Therefore, after generating the application identifier, the server applies to the application management authority based on the application identifier to obtain a signing certificate.

[0060] 203. Based on the configuration information, the signing certificate, and the generic program source code, the server creates the target application. The generic program source code is the source code of other applications that have the same business functions as the target application.

[0061] In this embodiment, the server first obtains generic program code from a source code server. This generic program code is the source code of a mature application that can implement the business functions required by the user. Then, based on the configuration information, the server changes the user interface resources corresponding to the generic program code, such as changing the welcome page style, theme colors, or button arrangement order, thereby obtaining the installation package of the target application. Finally, the server signs the installation package based on the signing certificate, and the application can then be released for users to download and use through application markets.

[0062] In this application embodiment, a method for creating an application is provided. By using the source code of other applications with the same business functions, combined with configuration information uploaded by the user and a signing certificate obtained by the server, a target application can be created. This eliminates the need for redevelopment and provides an application with the required business functions and interface, saving development time and reducing development costs.

[0063] above Figure 2 This document outlines the main flow of a method for creating an application according to embodiments of this application. The following example illustrates the creation of an instant messaging application with office functions. The aforementioned instant messaging application has a general version, meaning it can be downloaded and used by any user. However, the application creation method provided in this application allows for the customization of exclusive versions of instant messaging applications for enterprise users. See also... Figure 3 As shown, Figure 3 This is a flowchart of another method for creating an application according to an embodiment of this application, such as... Figure 3 As shown, this application embodiment uses an application to a server as an example for explanation. The method for creating an application includes the following steps:

[0064] 301. The server generates a program identifier based on the application creation request. The application creation request carries the application's configuration information, which is used to indicate the application's user interface resources.

[0065] In this embodiment, the server provides application creation services to enterprise users, enabling them to create customized versions of instant messaging applications. Upon receiving an application creation request from an enterprise user, the server parses the request to obtain configuration information and user qualification information. This user qualification information indicates relevant details about the user initiating the request, such as the enterprise user's registration information, business status information, and business category information. Upon successful verification of the configuration information and user qualification information, the server generates a program identifier, which uniquely identifies the instant messaging application to be created. The enterprise user is an administrator user.

[0066] Enterprise users can upload content that aligns with their corporate culture as configuration information, such as the application logo, application name, welcome page style, login page style, application theme colors, and other custom UI styles. This UI style refers to rich text information that the application can recognize and render, including commonly used UI styles such as images, text, text formatting, and graphic layout information; this embodiment does not impose any limitations on this. Enterprise users can also configure the business function entry points displayed in the application, such as entry points for messages, contacts, workbench, "My" (corresponding to user settings), documents, calendar, and the enterprise homepage; this embodiment does not impose any limitations on this.

[0067] It should be noted that the server will provide an entry point for creating a custom version of the instant messaging application, along with the required materials, on the general version of the instant messaging application or its official website. After preparing the necessary materials, enterprise users can send an application creation request to the server through the aforementioned entry point.

[0068] It should be noted that for content that does not require manual review, such as image size, image resolution, and text length, the server determines whether to pass the review based on preset review standards. For other content, such as whether the text contains sensitive words, whether the image contains restricted content, whether the company information is authentic, and whether the application reason is reasonable, manual review is conducted by reviewers, and the server determines whether to pass the review based on the reviewers' results. If the review passes, the server executes step 302; if the review fails, the server returns a modification response to the enterprise user, prompting the user to make modifications. Of course, the server can also return a rejection response to the enterprise user, rejecting the application creation request.

[0069] 302. The server obtains a signing certificate based on the program identifier, which is used to distribute the application.

[0070] In this embodiment, an application typically requires permission from an application management authority before release, such as an Android app store or app market, or an Apple App Store. Only after the application management authority issues a signing certificate can the application be released, allowing users to download and use it through the app store or App Store. Correspondingly, after generating a program identifier, the server sends a certificate application request carrying that program identifier to the application management server, which then generates a signing certificate based on the program identifier. The application management server is the server of the application management authority. Optionally, the certificate application request may also carry information related to the instant messaging application corresponding to the program identifier, which is reviewed by the application management server. Upon successful review, a signing certificate is issued. The information related to the instant messaging application includes the application's category, its business functions, and the company that developed the application, etc., which are not limited in this embodiment.

[0071] 303. Based on the program identifier, the server obtains the program public key, which is used by the application to communicate with third-party services.

[0072] In this embodiment, the instant messaging application requested to be created by the application creation request has the function of communicating with a third-party service. This third-party service can be a service provided by a communication program, shopping program, information program, or dating program; this embodiment does not limit this. After generating the program identifier, the server sends a program access request to the management server of the third-party service. This program access request carries the program identifier, and the management server of the third-party service generates a program public key corresponding to the program identifier. This program public key is used for communication between the application and the third-party service, enabling users to jump between the instant messaging application and the application corresponding to the third-party service when they authorize login to the instant messaging application through their user account corresponding to the third-party service.

[0073] For example, a third-party service provides services to a dating app. This dating app has a user's dating account logged in. When the user logs into a dedicated version of the instant messaging application on their terminal, they request authorization from the third-party service. At this time, based on the authorization login interface of the dating app, an authorization login request is sent to the backend server of the dating app. This authorization login request carries the aforementioned program public key. The backend server of the dating app, based on the correspondence between the program public key and the program identifier, returns the program identifier after confirming authorization. This allows the terminal to jump back to the dedicated version of the instant messaging application through the application programming interface after the authorization login is completed.

[0074] 304. In response to the application packaging request, the server obtains the source code of a generic application, which is the source code of other applications that have the same business functions as the target application.

[0075] In this embodiment, after generating the program identifier, the server requires the enterprise user to confirm whether to generate this specific version of the instant messaging application, i.e., the target application. If the enterprise user needs to modify configuration information or other content, the corresponding modification process can be executed; if the user does not need to make any further modifications, a program packaging request can be triggered, and the server can obtain the general program source code, which is the source code of the general version of the instant messaging application.

[0076] It should be noted that since the general version of the instant messaging application includes many business functions, if enterprise users do not need some of these functions, they can select the business functions they want to retain in the configuration file. Then, after the server obtains the source code of the general program, it extracts the corresponding business code modules from the source code of the general program based on the business functions selected by the enterprise users, thereby reducing the size of the subsequently generated program installation package.

[0077] It should be noted that if enterprise users want to customize business functions that are not currently available in the general version of the instant messaging application, they can submit a business function addition request. The developers will then carry out custom development, and once completed, the customized version of the instant messaging application will be updated in the form of an update package to add the relevant business functions.

[0078] 305. Based on the configuration information and the program identifier, the server replaces the user interface resources corresponding to the source code of the generic program to obtain the target program installation package.

[0079] In this embodiment, after the server obtains the generic program source code, it compiles and packages the generic program source code to generate a target program installation package. Then, the server uses the user interface resources in the configuration information to replace the user interface resources corresponding to the generic program source code in the target program installation package, and the server stores the program identifier in the configuration file corresponding to the target program installation package.

[0080] For example, the general version of the instant messaging application is named "ABC Program". Based on the configuration information, the server changes the name of the dedicated version of the instant messaging application to "DE Company BC Program". The server also changes the program image of "ABC Program" from image a to image b. Furthermore, the server modifies the welcome page style, login page style, theme color, and displayed business function entry points of "ABC Program" according to the configuration information, and saves the modified results in the configuration file corresponding to the target program installation package. The server also stores the program identifier in this configuration file.

[0081] It should be noted that the server can also add type information to the configuration file mentioned above, that is, the target application's configuration file. This type information is used to indicate that the target application is a target type application. This target type indicates that the application is not a general version, but a proprietary version.

[0082] For example, the server stores a flag in the configuration file that identifies the target application installation package as a proprietary version of the instant messaging application.

[0083] 306. The server adds the program's public key to the target application's configuration file.

[0084] 307. Based on the signing certificate, the server signs the installation package of the target application to obtain the target application.

[0085] In this embodiment, after obtaining the target application installation package, the server signs the target application installation package based on the aforementioned signing certificate, thereby allowing the target application to be published in an application market or App Store, where enterprise users can download the target application installation package. Alternatively, the server can directly return the target application installation package to the enterprise user who triggered the application creation request; this embodiment does not impose any restrictions on this approach.

[0086] In one alternative implementation, an enterprise user can request modifications to the target application from the server. In response to this modification request, the server retrieves the configuration change information carried in the request, generates an update package for the target application based on this information, and then pushes the update package to at least one terminal with the target application installed, thus updating the application. Alternatively, the server can update the dedicated configuration information in the cloud (i.e., on the server side) instead of generating an update package. The target application's client, upon startup, retrieves the latest dedicated configuration information from the server to update its local configuration file, thereby achieving dynamic updates to the target application.

[0087] For example, after a company updates its logo, its users submit an application modification request to the server, including the updated logo in the configuration modification information. The server then generates the corresponding update package and pushes it to the server, enabling all terminals with the target application installed to dynamically update the logo.

[0088] The following is a brief introduction on how enterprise users can configure configuration information and how the configuration information takes effect.

[0089] First, the enterprise user sends an application customization request to the server via a terminal. The server then returns a link to an information configuration interface to the terminal based on this request. This information configuration interface includes multiple sub-interfaces, each used to configure a category of information. For example, a logo sub-interface is used to configure the company logo, an icon sub-interface is used to configure the program icon and icons for various business functions displayed within the program, and a business sub-interface is used to configure business entry points displayed within the program. This embodiment does not impose any limitations on these aspects. Of course, the information configuration interface also includes sub-interfaces for uploading enterprise information such as registration information, business status information, and business category information. Taking the logo sub-interface as an example, this sub-interface displays requirements for the logo image, such as image size, file size, clarity, resolution, and included content. The enterprise user uploads a logo image that meets the requirements in the logo sub-interface.

[0090] Then, enterprise users can configure their company logo, application icon, business entry points, and company information in the aforementioned sub-interfaces. In response to the enterprise user's submission, the terminal generates the aforementioned application creation request. Upon receiving this creation request, the server parses it to obtain the configuration information set by the enterprise user. Each category of configuration information corresponds to a unique identifier, and the server stores this configuration information based on the unique identifier for each category.

[0091] Next, after receiving the program packaging request, the server obtains the user interface resources corresponding to the generic program source code. Then, based on the unique identifier of each user interface resource, it retrieves the corresponding configuration information from the aforementioned configuration information. For example, based on the unique identifier of the program icon, it replaces the program icon corresponding to the generic program source code with the program icon uploaded by the enterprise user; similarly, based on the unique identifier of the logo displayed on the interface, it replaces the logo corresponding to the generic program code with the enterprise logo uploaded by the enterprise user.

[0092] Finally, the server sends the packaged target application installation package to the terminal, which parses the package, runs the generic program source code, loads the modified configuration information, and obtains a customized version of the instant messaging application, i.e., the target application.

[0093] Accordingly, based on the configuration information submitted by enterprise users, the interface displayed by the target application after the user downloads and installs the target application differs from that of the general version of the instant messaging application.

[0094] For example, see Figures 4 to 7 As shown. Figure 4 This is a comparative diagram of an application icon and name provided according to an embodiment of this application. For example... Figure 4 As shown, 401 represents the icon for the proprietary version of the instant messaging application, and 402 represents the icon for the generic version. The proprietary version of the instant messaging application is named "XX Company Program," and the generic version is named "YY Program." Figure 5 This is a comparative illustration of a welcome page style for an application provided according to an embodiment of this application. For example... Figure 5 As shown, 501 indicates a welcome page for a proprietary version of the instant messaging application, which includes a customized welcome message and company logo for the enterprise user. 502 indicates a welcome page for a generic version of the instant messaging application, which includes a general welcome message but does not include a company logo. Figure 6 This is a comparative schematic diagram of the login page style of an application provided according to an embodiment of this application. For example... Figure 6As shown, 601 represents the login page of the proprietary version of the instant messaging application, which includes a customized corporate logo for the enterprise user and login interfaces for permitted third-party services: Third-Party Login Interface M. 602 represents the login page of the generic version of the instant messaging application, which includes the application icon and login interfaces for permitted third-party services: Third-Party Login Interface M and Third-Party Login Interface N. Figure 7 This is a comparative schematic diagram of the business function entry points of an application provided according to an embodiment of this application. For example... Figure 7 As shown, 701 represents an interface of a proprietary version of the instant messaging application, which includes multiple business function entry points configured by enterprise users: search, messages, calendar, documents, address book, and web page. 702 represents an interface of a generic version of the instant messaging application, which includes common business function entry points: messages, address book, work platform, and my profile.

[0095] It should be noted that a user may work for multiple companies. If the user uses the general version of the instant messaging application, the user needs to select the corresponding company after logging in and wait for the company's administrator to verify the user's identity. Only after successful verification can the user access the corresponding company's page. If the user uses the proprietary version of the instant messaging application, the user no longer needs to select a company, which saves the user's operation process and improves the efficiency of human-computer interaction.

[0096] For example, see Figure 8 As shown, Figure 8 This is a schematic diagram of an enterprise selection interface for a general version of an instant messaging application provided according to an embodiment of this application. For example... Figure 8 As shown, users who have passed the authentication of companies A and C can click the corresponding arrows to enter the corresponding company's page, while users who have not passed the authentication of company B cannot enter company B's page.

[0097] Furthermore, for users who may work for multiple companies, the unique program identifier generated for each company-specific version of the instant messaging application allows users to simultaneously download different company-customized versions. This means that different company-customized versions of the instant messaging application can be installed on the same device at the same time. Of course, users can also install the general version of the instant messaging application simultaneously.

[0098] The following describes the application creation method provided in this application embodiment, addressing the scenario where a user may work for multiple companies, and how to enable a user to log in to multiple dedicated versions of an instant messaging application. First, the server also includes an account management server for managing user accounts. Second, for any given user, there is a unique global user account. This global user account can be associated with an account on a third-party service, such as a dating account on a dating app; it can also be associated with a mobile phone number, meaning there is a one-to-one relationship between the global user account, the dating account, and the mobile phone number. Third, for any company, there is a unique global company account, which corresponds to the company's related resource data. Finally, for any given user, there is an identity account for each company, and one global company account can correspond to multiple identity accounts. That is, a user's global user account can correspond to at least one identity account, which can correspond to one or more global company accounts. Furthermore, when a user interacts with a third-party service, the account used varies depending on the third-party service. For example, in a dating scenario, since the user's identity within the company is involved, the user's identity account is used to establish a friend relationship with the other party; in a payment scenario, since funds are involved, the user's global user account is used to redirect to the payment process.

[0099] For example, referring to Table 1, if User 1 corresponds to positions 3 and 4 in Company 2, then User 1's global user account corresponds to Company 2's global enterprise account, and also corresponds to an identity account. User 2, on the other hand, corresponds to position 1 in Company 1 and position 2 in Company 2. Therefore, User 2's global user account corresponds to Company 1's global enterprise account and an identity account, and also corresponds to Company 2's global enterprise account and an identity account; that is, User 2 corresponds to two identity accounts. Of course, positions 3 and 4 can each correspond to a different identity account, meaning User 1 corresponds to two identity accounts with different permissions. For example, position 3 is a management position, and the corresponding identity account has personnel management permissions; position 4 is a technical position, and the corresponding identity account has data management permissions.

[0100] Table 1

[0101]

[0102] In one optional implementation, in response to a user login request, the server obtains the third-party account identifier and the program identifier carried in the user login request. The server then generates a first user identity identifier corresponding to the third-party account identifier and a second user identity identifier corresponding to the program identifier; a correspondence is established between the first user identity identifier and the second identity identifier, with one first user identity identifier corresponding to at least one second user identity identifier. Here, the first user identity identifier is the user's global user account, and the second user identity identifier is the user's personal identity account.

[0103] For example, after a user launches the application client, the system reads a flag in the configuration file to determine whether it's a dedicated or general version of the instant messaging application. If it's the general version, the account management server generates and distributes a global user account to the user, then instructs the user to bind a mobile phone number or a third-party service account. If it's the dedicated version, the system retrieves the global user account by sending the user's login request along with their mobile phone number or third-party service account. The client also sends a request to obtain the enterprise account, carrying the application's identifier. The account management server then returns the global enterprise account corresponding to the global user account, the corresponding enterprise information, and the generated identity account. This allows the user to directly use the corresponding functions without needing to select an enterprise.

[0104] It should be noted that steps 301 to 307 described above are optional implementations of the application creation method provided in this application embodiment. Of course, this application creation method also has other implementations, for example, see [link to relevant documentation]. Figure 9 As shown, Figure 9 This is a flowchart of another method for creating an application according to an embodiment of this application. Figure 9As shown, the server includes a dedicated enterprise application server, a dedicated enterprise application configuration storage server, a dedicated enterprise application automated packaging server, and a general version application source code server. The process of creating a dedicated enterprise application includes the following steps: 901. When applying for a dedicated enterprise application, the enterprise user submits its customized UI style and functional configuration to the dedicated enterprise application server. 902. The dedicated enterprise application server reviews the content submitted by the enterprise user (machine review + manual review). Upon successful review, a unique application identifier is generated, and the review result and the application identifier are returned to the enterprise user. 903. The dedicated enterprise application server stores the customized UI style, functional configuration, and generated application identifier submitted by the enterprise user as application information in the dedicated enterprise application configuration storage server. 904. The dedicated enterprise application server uses the application identifier to apply for a signing certificate from the application management authority. 905. The signing certificate issued by the application management authority is stored in the dedicated enterprise application configuration storage server. 906. The dedicated enterprise application server uses the application identifier to apply for third-party service access from the third-party service management server. 907. Assign the third-party server's management server as the program's public key and store it on the enterprise program's dedicated configuration storage server. 908. The enterprise user sends a packaging request to the dedicated enterprise program automated packaging server. 909. The dedicated enterprise program automated packaging server obtains the general program source code from the general version program source code server, compiles the general program source code, and obtains the dedicated enterprise installation package. 910. The dedicated enterprise program automated packaging server obtains the above request information from the enterprise program's dedicated configuration storage server and replaces the user interface resources corresponding to the general program source code. 911. The dedicated enterprise program automated packaging server obtains the above signing certificate from the enterprise program's dedicated configuration storage server and signs the dedicated enterprise installation package. 912. The dedicated enterprise program automated packaging server returns the signed dedicated enterprise installation package to the enterprise user.

[0105] In this application embodiment, a method for creating an application is provided. By using the source code of other applications with the same business functions, combined with configuration information uploaded by the user and a signing certificate obtained by the server, a target application can be created. This eliminates the need for redevelopment and provides an application with the required business functions and interface, saving development time and reducing development costs.

[0106] Figure 10 This is a block diagram of an apparatus for creating an application according to an embodiment of this application. The apparatus is used to perform the steps of the method for creating an application described above, see [link to relevant documentation]. Figure 10 The device includes: a program identifier generation module 1001, a signature certificate acquisition module 1002, and a program creation module 1003.

[0107] The application identifier generation module 1001 is used to generate an application identifier based on the application creation request, which carries the application's configuration information and is used to indicate the application's user interface resources.

[0108] The signature certificate acquisition module 1002 is used to acquire a signature certificate based on the program identifier, and the signature certificate is used to distribute the application.

[0109] The program creation module 1003 is used to create a target application based on the configuration information, the signing certificate, and the generic program source code, which is the source code of other applications that have the same business functions as the target application.

[0110] In one optional implementation, the program identifier generation module 1001 is used to parse the application creation request to obtain the configuration information and user qualification information. The user qualification information is used to indicate the relevant information of the user who initiated the application creation request. In response to the configuration information and user qualification information being approved, the program identifier is generated.

[0111] In one optional implementation, the signature certificate acquisition module 1002 is used to send a certificate acquisition request to the application management server, the certificate acquisition request carrying the program identifier; and to receive the signature certificate returned by the application management server.

[0112] In one alternative implementation, the program creation module 1003 is used to obtain the generic program source code in response to a program packaging request; replace the user interface resources corresponding to the generic program source code based on the configuration information and the program identifier to obtain the target program installation package; and sign the installation package of the target application based on the signing certificate to obtain the target application.

[0113] In one alternative implementation, the device further includes:

[0114] The public key acquisition module is used to obtain the program's public key based on the program identifier. This public key is used by the application to communicate with third-party services. The public key is then added to the target application's configuration file.

[0115] In one alternative implementation, the user interface resource includes at least one of text information resources, image resources, interface style resources, function configuration resources, and color resources.

[0116] In one alternative implementation, the device further includes:

[0117] The information addition module is used to add type information to the configuration file of the target application, which indicates that the target application is an application of the target type.

[0118] In one alternative implementation, the device further includes:

[0119] The information acquisition module is used to respond to the application modification request of the target application and acquire the configuration modification information carried by the application modification request;

[0120] The update package generation module is used to generate an update package for the target application based on the configuration modification information.

[0121] The update package push module is used to push the update package to at least one terminal that has the target application installed.

[0122] In one alternative implementation, the device further includes:

[0123] The identifier acquisition module is used to obtain the third-party account identifier and the program identifier carried in the user login request in response to the user login request;

[0124] The identifier generation module is used to generate a first user identity identifier corresponding to the third-party account identifier and a second user identity identifier corresponding to the program identifier;

[0125] The relationship establishment module is used to establish the correspondence between the first user identity identifier and the second identity identifier, wherein one first user identity identifier corresponds to at least one second user identity identifier.

[0126] In this application embodiment, a method for creating an application is provided. By using the source code of other applications with the same business functions, combined with configuration information uploaded by the user and a signing certificate obtained by the server, a target application can be created. This eliminates the need for redevelopment and provides an application with the required business functions and interface, saving development time and reducing development costs.

[0127] It should be noted that the application creation apparatus provided in the above embodiments is only illustrated by the division of the above functional modules. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the apparatus can be divided into different functional modules to complete all or part of the functions described above. In addition, the application creation apparatus and the application creation method embodiments provided in the above embodiments belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.

[0128] Figure 11This is a schematic diagram of a server structure according to an embodiment of this application. The server 1100 can vary considerably due to different configurations or performance. It may include one or more Central Processing Units (CPUs) 1101 and one or more memories 1102. The memory 1102 stores at least one computer program, which is loaded and executed by the processor 1101 to implement the application creation method provided in the above-described method embodiments. Of course, the server may also have wired or wireless network interfaces, a keyboard, and input / output interfaces for input and output. The server may also include other components for implementing device functions, which will not be elaborated here.

[0129] This application also provides a computer-readable storage medium applied to a server. The computer-readable storage medium stores at least one computer program, which is loaded and executed by a processor to implement the operations performed by the server in the method of creating an application described above.

[0130] This application also provides a computer program product or computer program, which includes computer program code stored in a computer-readable storage medium. A server's processor reads the computer program code from the computer-readable storage medium and executes the computer program code, causing the server to perform the application creation method provided in the various optional implementations described above.

[0131] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware or by a program instructing related hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a disk, or an optical disk.

[0132] The above description is merely an optional embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.

Claims

1. A method for creating an application, characterized in that, The method includes: Based on the application creation request, a program identifier is generated. The application creation request is used to request the creation of a dedicated version of the target application. The application creation request carries the configuration information of the target application. The configuration information is used to indicate the user interface resources and target business functions of the target application. The target business functions refer to the business functions that the target application needs to retain. Based on the program identifier, a signing certificate is obtained, which is used to publish the application; in response to the application packaging request, a generic program source code is obtained, which is the source code of a generic version of the application that has at least the target business function of the target application; based on the configuration information and the program identifier, the user interface resources corresponding to the generic program source code are replaced, and the business code modules corresponding to the target business function in the generic program source code are retained to obtain the target application installation package; Based on the signing certificate, the installation package of the target application is signed to obtain the target application; based on the program identifier, the program public key is obtained, which is used for the application to communicate with third-party services, so as to enable users to authorize login to the target application through the user account corresponding to the third-party service; the program public key is added to the configuration file of the target application; type information is added to the configuration file of the target application, which is used to indicate that the target application is a target type application, and the target type is used to indicate that the application is a proprietary version; In response to a user login request for the target application, if the target application's configuration file includes type information indicating that the target application is a target type, the system obtains the third-party account identifier carried in the user login request and the application identifier; generates a global user account corresponding to the third-party account identifier and an identity account corresponding to the application identifier; establishes a correspondence between the global user account and the identity account, wherein one global user account corresponds to at least one identity account in each different proprietary version of the application; In response to a user login request for the general version of the application, if the configuration file of the general version of the application does not include type information indicating that the target application is a target type, the third-party account identifier carried in the user login request is obtained, and a global user account corresponding to the third-party account identifier is generated.

2. The method according to claim 1, characterized in that, The step of generating a program identifier based on the application creation request includes: The application creation request is parsed to obtain the configuration information and user qualification information, wherein the user qualification information is used to indicate relevant information of the user who initiated the application creation request; Upon successful verification of the configuration information and user qualification information, the program identifier is generated.

3. The method according to claim 1, characterized in that, The step of obtaining a signature certificate based on the program identifier includes: Send a certificate acquisition request to the application management server, the certificate acquisition request carrying the application identifier; Receive the signing certificate returned by the application management server.

4. The method according to claim 1, characterized in that, The user interface resources include at least one of text information resources, image resources, interface style resources, function configuration resources, and color resources.

5. The method according to claim 1, characterized in that, The method further includes: In response to the application modification request of the target application, obtain the configuration modification information carried in the application modification request; Based on the configuration modification information, an update package for the target application is generated; The update package is pushed to at least one terminal that has the target application installed.

6. An apparatus for creating an application, characterized in that, The device includes: The program identifier generation module is used to generate a program identifier based on the application creation request. The application creation request is used to request the creation of a dedicated version of the target application. The application creation request carries the configuration information of the target application. The configuration information is used to indicate the user interface resources and target business functions of the target application. The target business functions refer to the business functions that the target application needs to retain. The signing certificate acquisition module is used to acquire a signing certificate based on the program identifier, and the signing certificate is used to distribute the application. The program creation module is used to obtain general program source code in response to a program packaging request. The general program source code is the source code of a general version of the application that has at least the target business functions of the target application. The program creation module is also used to replace the user interface resources corresponding to the general program source code based on the configuration information and the program identifier, and retain the business code module corresponding to the target business function in the general program source code to obtain the target program installation package; The program creation module is also used to sign the installation package of the target application based on the signing certificate to obtain the target application; The public key acquisition module is used to acquire the program public key based on the program identifier. The program public key is used for communication between the application and third-party services to enable users to authorize login to the target application through the user account corresponding to the third-party service; and to add the program public key to the configuration file of the target application. An information adding module is used to add type information to the configuration file of the target application. The type information is used to indicate that the target application is a target type application, and the target type is used to indicate that the application is a proprietary version. The identifier acquisition module is used to, in response to a user login request for the target application, acquire the third-party account identifier and the program identifier carried in the user login request, provided that the target application's configuration file includes type information indicating that the target application is a target type. The identifier generation module is used to generate a global user account corresponding to the third-party account identifier and an identity account corresponding to the program identifier; The relationship establishment module is used to establish the correspondence between the global user account and the identity account, wherein one global user account corresponds to at least one identity account in each different proprietary version of the application; The identifier acquisition module is further configured to, in response to a user login request for the general version of the application, acquire the third-party account identifier carried in the user login request if the configuration file of the general version of the application does not include type information indicating that the target application is a target type. The identifier generation module is also used to generate a global user account corresponding to the third-party account identifier.

7. The apparatus according to claim 6, characterized in that, The program identifier generation module is used to parse the application creation request to obtain the configuration information and user qualification information. The user qualification information is used to indicate the relevant information of the user who initiated the application creation request. Upon successful verification of the configuration information and user qualification information, the program identifier is generated.

8. The apparatus according to claim 6, characterized in that, The signature certificate acquisition module is used to send a certificate acquisition request to the application management server, the certificate acquisition request carrying the program identifier; and to receive the signature certificate returned by the application management server.

9. The apparatus according to claim 6, characterized in that, The user interface resources include at least one of text information resources, image resources, interface style resources, function configuration resources, and color resources.

10. The apparatus according to claim 6, characterized in that, The device further includes: The information acquisition module is used to respond to the application modification request of the target application and acquire the configuration modification information carried in the application modification request; An update package generation module is used to generate an update package for the target application based on the configuration modification information. The update package push module is used to push the update package to at least one terminal that has the target application installed.

11. A computer device, characterized in that, The computer device includes a processor and a memory, the memory being used to store at least one computer program, the at least one computer program being loaded by the processor and executed as described in any one of claims 1 to 5.

12. A storage medium, characterized in that, The storage medium is used to store at least one computer program, the at least one computer program being used to execute the method for creating an application as described in any one of claims 1 to 5.

13. A computer program product, characterized in that, The computer program product includes computer program code stored in a computer-readable storage medium, a processor of a computer device reads the computer program code from the computer-readable storage medium, and the processor executes the computer program code, causing the computer device to perform the method of creating an application as described in any one of claims 1 to 5.

Citation Information

Patent Citations

  • Method and device for developing application programs

    CN108089864A

  • Generation method and device of number taking client program and readable medium

    CN111880799A