App distribution method and device, electronic equipment, storage medium and product
Patent Information
- Application Number
- CN202411404580.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-09
- Publication Date
- 2026-09-08
- Estimated Expiration
- 2044-10-09
AI Technical Summary
[0003]本公开提供一种APP分发方法、装置、电子设备、存储介质及产品,以解决相关技术APP分发效率低、安全性差的问题
[0036] A fifth aspect of this disclosure provides a computer program product including a computer program that, when executed by a processor, implements the methods described in the first aspect of this disclosure.
Smart Images

Figure CN119254759B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of software development technology, and in particular to an APP distribution method, apparatus, electronic device, storage medium, and product. Background Technology
[0002] In application (App) distribution solutions, the following methods are commonly used: direct distribution, official beta distribution on various platforms, and distribution through third-party App hosting platforms. Direct distribution and official beta distribution on various platforms do not support distribution across multiple platforms and channels. Third-party App hosting platforms can support distribution across multiple platforms and channels, but they require the provision of various App information, enterprise qualification certificates, and App signing certificates, among other sensitive information. Therefore, none of these App distribution solutions can simultaneously guarantee both distribution efficiency and security. Summary of the Invention
[0003] This disclosure provides an APP distribution method, apparatus, electronic device, storage medium, and product to solve the problems of low APP distribution efficiency and poor security in related technologies.
[0004] A first aspect of this disclosure provides an APP distribution method, the method comprising:
[0005] Obtain the target app;
[0006] Determine whether the version of the target APP is a preset version;
[0007] If the determination result is yes, then obtain the first download link information corresponding to the target APP;
[0008] In response to the first download link information corresponding to the target APP being verified by the first download condition, the target APP is distributed to the target user through at least one first channel;
[0009] If the determination result is negative, the target APP will be distributed to the target user through at least one second channel.
[0010] In one embodiment, obtaining the target APP includes:
[0011] Obtain the target app's installation package and app information;
[0012] Based on the target APP installation package and the APP information, the first target APP is determined;
[0013] Based on the first target APP and APP version information, the first version of the target APP is determined.
[0014] In one embodiment, after obtaining the first download link information corresponding to the target APP, the method provided in this disclosure includes:
[0015] Modify the first download link information corresponding to the target APP to obtain the second download link information corresponding to the target APP;
[0016] In response to the first download link information corresponding to the target APP being verified through the first download condition, the target APP is distributed to the target user through at least one first channel, including:
[0017] In response to the second download link information corresponding to the target APP being verified by the first download condition, the target APP corresponding to the second download link is distributed to the target user through at least one first channel.
[0018] In one embodiment, after the target APP is distributed to the target user through at least one first channel, the method provided in this disclosure includes:
[0019] Obtain the download traffic of the target APP;
[0020] The download traffic of the target APP is synchronized to the enterprise's internal traffic monitoring system.
[0021] In one embodiment, after the target APP is distributed to the target user through at least one first channel, the method provided in this disclosure includes:
[0022] In response to enabling the requirements / defects list function, a requirements / defects list associated with the target APP is obtained from the enterprise's internal management system.
[0023] In one embodiment, distributing the target app to the target user through at least one second channel includes:
[0024] Select at least one secondary channel from the preset channels;
[0025] Configure corresponding channel distribution information for each of the at least one second channel;
[0026] The target app is distributed to the target user through the second channel, which has been configured with channel distribution information.
[0027] A second aspect of this disclosure provides an APP distribution device, the device comprising:
[0028] The first acquisition unit is used to acquire the target APP;
[0029] The judgment unit is used to determine whether the version of the target APP is a preset version;
[0030] The second acquisition unit is used to acquire the first download link information corresponding to the target APP if the judgment result is yes;
[0031] The first distribution unit is configured to distribute the target APP to the target user through at least one first channel in response to the first download link information corresponding to the target APP being verified by the first download condition.
[0032] The second distribution unit is used to distribute the target APP to the target user through at least one second channel if the determination result is negative.
[0033] A third aspect of this disclosure provides an electronic device comprising:
[0034] At least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the methods described in the first aspect of this disclosure.
[0035] A fourth aspect of this disclosure provides a non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to cause a computer to perform the methods described in the first aspect of this disclosure.
[0036] A fifth aspect of this disclosure provides a computer program product including a computer program that, when executed by a processor, implements the methods described in the first aspect of this disclosure.
[0037] In summary, this disclosure proposes an APP distribution method, which includes: obtaining a target APP; determining whether the version of the target APP is a preset version; if the determination result is yes, obtaining the first download link information corresponding to the target APP; in response to the first download link information corresponding to the target APP being verified by a first download condition, distributing the target APP to a target user through at least one first channel; if the determination result is no, distributing the target APP to the target user through at least one second channel.
[0038] According to the solution provided in this disclosure, by determining whether the version of the target APP is a preset version, the distribution channels corresponding to different versions can be determined, which can support a more comprehensive distribution strategy; by obtaining the first download link information corresponding to the target APP, and responding to the first download link information corresponding to the target APP being verified by the first download condition, the verified target APP can be distributed to the target user through the first channel, which can improve the security of target APP distribution; by distributing the target APP to the target user through at least one first channel or at least one second channel, the distribution efficiency of the target APP can be improved.
[0039] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description
[0040] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure, and are not intended to unduly limit this disclosure.
[0041] Figure 1 A flowchart illustrating the APP distribution method provided in this embodiment of the disclosure;
[0042] Figure 2 A flowchart illustrating the method for obtaining a target APP provided in this embodiment of the disclosure;
[0043] Figure 3 A schematic diagram illustrating the creation of an APP management page provided in an embodiment of this disclosure;
[0044] Figure 4 A schematic diagram illustrating the creation of an APP version management page provided in an embodiment of this disclosure;
[0045] Figure 5 A schematic diagram of a user download page provided in an embodiment of this disclosure;
[0046] Figure 6 A schematic diagram of the download link configuration page provided in an embodiment of this disclosure;
[0047] Figure 7 A schematic diagram of a user feedback page for related requirements / defects provided in an embodiment of this disclosure;
[0048] Figure 8 A schematic diagram of a platform management page for associated requirements / defects provided in an embodiment of this disclosure;
[0049] Figure 9 A schematic diagram of a user feedback page for version feedback issues provided in an embodiment of this disclosure;
[0050] Figure 10 A schematic diagram of the platform management page for version feedback issues provided in this embodiment of the disclosure;
[0051] Figure 11 This is a flowchart illustrating a method for distributing a target app to a target user, as provided in an embodiment of this disclosure.
[0052] Figure 12 A schematic diagram of a production version release configuration page provided in an embodiment of this disclosure;
[0053] Figure 13A schematic diagram of the top-level data flow of the App distribution platform provided in this embodiment of the disclosure;
[0054] Figure 14 This is a schematic diagram of the layer 0 data flow of the App distribution platform provided in this embodiment of the disclosure;
[0055] Figure 15 A schematic diagram of the entity relationships of the App distribution platform provided in this embodiment of the disclosure;
[0056] Figure 16 A flowchart illustrating the APP distribution method provided as an example of this public application.
[0057] Figure 17 This is a schematic diagram of the structure of the APP distribution device provided in the embodiments of this disclosure;
[0058] Figure 18 This is a schematic diagram of the hardware composition structure of an electronic device provided in an embodiment of this disclosure. Detailed Implementation
[0059] Embodiments of this disclosure are described in detail below. Examples of these embodiments are illustrated in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain this disclosure, and should not be construed as limiting this disclosure.
[0060] A mobile native platform refers to a platform designed for a specific mobile operating system (such as Android or iOS). It allows users to develop applications using the platform's supported development tools and languages, directly calling the system's SDK APIs. Currently, the mainstream platforms are Android Studio for Android and Xcode for iOS. These platforms enable the development of native applications and the export of corresponding app installation packages.
[0061] An app installation package refers to a packaged application file generated by writing native development languages such as Java and Objective-C, developing on a mobile native development platform, and going through steps such as compilation, packaging, and signing. After installing the packaged file, users can run the application on the corresponding platform.
[0062] App installation package management refers to the systematic and automated full lifecycle management of app installation packages in software development. It covers all aspects from receiving, classifying, storing, analyzing, and distributing the installation packages to version control, aiming to improve the distribution efficiency, security, and user experience of app installation packages.
[0063] App installation package distribution refers to the process of sending app installation packages from developers or distributors to end users on different channels in a specified manner. It involves various aspects such as selecting distribution channels for app installation packages, creating app download pages, secure distribution, and tracking feedback. The aim is to ensure that users on different channels can easily and securely obtain and install the required apps and provide feedback on various issues at any time.
[0064] App distribution channels refer to the different paths or methods used to deliver app installation packages from developers or distributors to various types of users according to different needs. Channels during the development phase include: internal testing by the project team, system testing by the testing department, and acceptance testing by the business department. Channels for official release include: app store channels (such as Apple's App Store, Google's Google Play Store, Huawei's App Market, etc.), internal enterprise distribution channels, and enterprise website distribution channels. Different channels have different user scopes, distribution methods, and distribution requirements.
[0065] With the rapid development of mobile internet technology, smartphone users have increasingly higher demands for the app distribution and installation experience. App developers and administrators are also placing new demands on the security, stability, data analysis and strategy adjustment of app distribution management, support for multi-channel and multi-platform distribution, and independent controllability. As a result, technologies and solutions providing efficient, secure, and intelligent app installation package management and distribution for developers and users have emerged. Currently, the mainstream mobile app distribution methods include: direct distribution, official beta distribution technologies of various platforms, and third-party app hosting platforms. Direct distribution involves the app administrator generating an app download link and sending it to users or the testing team, who then download and install the app through this link. Meanwhile, each mobile platform also has its own beta distribution technology, such as Apple's TestFlight distribution, which allows app installation packages to be distributed through official channels, subject to platform review. Finally, some third-party app hosting platforms, such as TestFairy and PGY, also provide multi-channel distribution capabilities, allowing app administrators to distribute app installation packages to relevant users through third-party platforms.
[0066] All three solutions have some problems and drawbacks, which are listed below:
[0067] The drawbacks of the direct distribution solution are: it does not support cross-platform and multi-channel distribution; each platform or channel requires a separate link, and there is no version control; the download link has poor security, and unauthorized users can download and install it; and it is impossible to track distribution details and collect distribution statistics.
[0068] The drawbacks of the official beta distribution scheme are: it is limited to the corresponding platform and does not support multiple channels, such as TestFlight technology, which only supports beta distribution on the iOS platform; there are generally limitations on the number of users and the validity period, such as TestFlight, which only supports distribution to 10,000 users and has a validity period of 90 days; distribution requires official review, and the review time is generally long.
[0069] The drawbacks of third-party hosting platforms are: developers need to provide various sensitive information such as app information, enterprise qualification certificates, and app signing certificates, resulting in poor security and an inability to achieve independent control; users need to install additional applications or services to receive the distributed app installation package, leading to a poor user experience; and additional fees are required if distribution services are needed for a large number of users or advanced functions such as tracking and statistical analysis are used.
[0070] Meanwhile, none of the above three solutions can provide on-demand customization of the App download page, nor do they support customized interaction with the enterprise's internal management system.
[0071] Table 1 shows a comparison of the advantages and disadvantages of the three distribution schemes mentioned above with this scheme.
[0072] Cross-platform support Not supported Not supported support support Independent and controllable yes no no yes Security Level Low high Low high Multi-channel distribution Not supported Not supported support support Version control none have have have Tracking and statistical analysis Not supported support Partial support support User experience Difference excellent Difference excellent Maximum number of people to distribute none have have none Third-party audit none have have none Download page customization Not supported Not supported Not supported support Interacting with internal enterprise systems Not supported Not supported Not supported support
[0073] Table 1 Comparison of mainstream mobile app distribution schemes
[0074] To address the shortcomings in related technologies, this disclosure determines the distribution channels corresponding to different versions of the target APP by judging whether the version is a preset version, which can support a more comprehensive distribution strategy; by obtaining the first download link information corresponding to the target APP, and in response to the first download link information corresponding to the target APP being verified by the first download condition, the verified target APP is distributed to the target user through the first channel, which can improve the security of target APP distribution; by distributing the target APP to the target user through at least one first channel or at least one second channel, the distribution efficiency of the target APP can be improved.
[0075] This disclosure provides an APP distribution method that can be applied to an APP distribution system. The executing entity of this method can be an APP distribution platform within the APP distribution system.
[0076] The present disclosure will now be described in further detail with reference to the accompanying drawings and specific embodiments.
[0077] like Figure 1 As shown, Figure 1 This is a flowchart illustrating the APP distribution method provided in this embodiment of the disclosure. The APP distribution method provided in this embodiment of the disclosure includes the following steps:
[0078] Step 101, Obtain the target app;
[0079] In one embodiment, the target APP is an APP to be distributed.
[0080] In one embodiment, since an APP can have multiple APP versions, the target APP is a specific version of the APP.
[0081] In one embodiment, the target app can be obtained from multiple versions of the current app.
[0082] Step 102: Determine whether the version of the target APP is a preset version;
[0083] In one embodiment, the version of the target APP can be a test version or a production version, wherein the test version type includes internal test version type, test center version type, business acceptance version type, and frozen version type.
[0084] In one embodiment, the preset version refers to a test version, which can specifically be one of the following: internal test version type, test center version type, business acceptance version type, and frozen version type.
[0085] In one embodiment, the subsequent APP distribution process is different depending on the version of the target APP, so the corresponding distribution channel can be determined according to the version of the target APP.
[0086] Step 103: If the judgment result is yes, then obtain the first download link information corresponding to the target APP;
[0087] In one embodiment, the first download link information corresponding to the target APP may include the link status, the link validity period, the number of times the link has been downloaded, and the download password for the link.
[0088] In one embodiment, the first download link information corresponding to the target APP is automatically created by the system based on the target APP.
[0089] Step 104: In response to the verification of the first download link information corresponding to the target APP through the first download condition, the target APP is distributed to the target user through at least one first channel.
[0090] In one embodiment, the first download conditions include download links that are valid, download links that are within their validity period, download links that are within their download limit, and download links with correct passwords.
[0091] In one embodiment, the verification of the first download link information corresponding to the target APP through the first download condition means that the first download link information corresponding to the target APP passes the verification of the aforementioned valid status, validity period, number of downloads, and download password.
[0092] In one embodiment, the first channel refers to the testing channel, including the internal testing channel, the testing center testing channel, the business acceptance testing channel, and the frozen testing channel.
[0093] In one embodiment, preferably, at least one first channel is two or more first channels.
[0094] In one embodiment, distributing the target APP that has passed the first download condition verification to the target user through at least one first channel can improve the security and efficiency of the target APP distribution.
[0095] Step 105: If the determination result is negative, the target APP is distributed to the target user through at least one second channel.
[0096] In one embodiment, the second channel includes, but is not limited to, internal enterprise distribution channels and external app store distribution channels.
[0097] In one embodiment, preferably, at least one second channel is two or more second channels. Specifically, at least one corresponding second channel can be selected according to the market demand of the target APP.
[0098] In one embodiment, distributing the target app to the target user through at least one second channel can improve the distribution efficiency of the target app.
[0099] In one embodiment, such as Figure 2 As shown, the target APP is obtained, including:
[0100] Step 201: Obtain the target APP installation package and APP information;
[0101] In one embodiment, the APP installation package refers to the packaged file of the application, which the user can run on the corresponding platform after installing the packaged file.
[0102] In one embodiment, the APP information may include the APP name, APP description, APP icon, Android package name, and iOS Bundle ID, wherein the Android package name and iOS Bundle ID are unique identifiers for the APP on the Android and iOS platforms, respectively.
[0103] In one embodiment, the target APP installation package can be obtained through an automated packaging tool.
[0104] Step 202: Based on the target APP installation package and the APP information, determine the first target APP;
[0105] In one embodiment, such as Figure 3 As shown, Figure 3 This is a diagram illustrating the creation of an APP management page. By entering the APP information into the corresponding location and clicking the create button, the first target APP can be obtained. Specifically, entering the APP information into the corresponding location means filling the APP information into the data table corresponding to APP creation in the platform database, thereby realizing the creation of the first target APP.
[0106] In one embodiment, the first target APP refers to an APP for which no version has yet been created.
[0107] In one embodiment, if the App has been created before, proceed to step 203 to create an App version.
[0108] Step 203: Based on the first target APP and APP version information, determine the first version of the target APP.
[0109] In one embodiment, such as Figure 4 As shown, Figure 4 This is a diagram illustrating the creation of an APP version management page. By entering the APP version information into the corresponding location and clicking the create button, the first version of the target APP can be obtained. Specifically, entering the APP version information into the corresponding location means filling the APP version information into the data table corresponding to the APP version in the platform database, thereby realizing the creation of the first version of the target APP.
[0110] In one embodiment, the APP version information may include a version number, version type, installation package size, installation package addresses for Android and iOS, and version description. The version number is a unique identifier for the APP version. The version type refers to whether the version is an internal beta version, a test center version, a business acceptance version, a frozen version, or a production version. The version description may include at least what features have been updated and what defects have been fixed in this version.
[0111] In one embodiment, a target app may correspond to multiple versions, wherein a target app corresponds to only one first version.
[0112] In one embodiment, by determining the first version of the target APP based on the first target APP and APP version information, the version of the target APP can be managed.
[0113] In one embodiment, after obtaining the first download link information corresponding to the target APP, the APP distribution method includes:
[0114] Modify the first download link information corresponding to the target APP to obtain the second download link information corresponding to the target APP;
[0115] In one embodiment, the first download link information corresponding to the target APP can be modified through the download link configuration page.
[0116] In one embodiment, by modifying the first download link information corresponding to the target APP, the second download link information corresponding to the target APP can be obtained, thereby enabling the target APP download page to be customized as needed.
[0117] In response to the first download link information corresponding to the target APP being verified through the first download condition, the target APP is distributed to the target user through at least one first channel, including:
[0118] In response to the second download link information corresponding to the target APP being verified by the first download condition, the target APP corresponding to the second download link is distributed to the target user through at least one first channel.
[0119] In one embodiment, distributing the target app corresponding to the second download link to the target user through at least one first channel can improve the security of the target app distribution customized on the download page.
[0120] In one embodiment, after the target APP is distributed to the target user through at least one first channel, the APP distribution method includes:
[0121] Obtain the download traffic of the target APP;
[0122] In one embodiment, such as Figure 5 As shown, Figure 5 This is an illustration of a user download page. App users can view the remaining download attempts below the "Download QR Code" on the user download page to obtain the download traffic for the target app.
[0123] In one embodiment, the app administrator can obtain the download traffic of the target app from the platform's information statistics module.
[0124] In one embodiment, by acquiring the download traffic of the target APP, the status of the target APP can be monitored, and countermeasures can be taken immediately once an anomaly is detected, thus comprehensively protecting data security.
[0125] The download traffic of the target APP is synchronized to the enterprise's internal traffic monitoring system.
[0126] In one embodiment, the download traffic of the target APP can be synchronized to the enterprise's internal traffic monitoring system through the application programming interface between the APP distribution platform and the enterprise's internal management system.
[0127] In one embodiment, interaction with the enterprise can be achieved by synchronizing the download traffic of the target APP to the enterprise's internal traffic monitoring system.
[0128] In one embodiment, after the target APP is distributed to the target user through at least one first channel, the APP distribution includes:
[0129] In response to enabling the requirements / defects list function, a requirements / defects list associated with the target APP is obtained from the enterprise's internal management system.
[0130] In one embodiment, such as Figure 6 As shown, Figure 6 This is a diagram of the download link configuration page. You can choose whether to enable the requirements / defect list feature when configuring the download link.
[0131] In one embodiment, the requirement / defect list associated with the target app includes a number, title, description, status, feedback, and attachments.
[0132] In one embodiment, such as Figure 7 As shown, Figure 7 This is an illustration of the user feedback page associated with requirements / defects. In response to enabling the requirements / defect list function, after the APP user clicks the "Feedback" button of the "Requirements / Defect Acceptance Feedback" function on the APP download page, the requirements / defect acceptance feedback list corresponding to this version will pop up. The APP user can set each requirement / defect to one of three states: "Pass", "Fail", or "Unacceptable".
[0133] In one embodiment, the user can provide detailed feedback on each requirement / defect. For example, the user can provide detailed feedback on each requirement / defect by uploading attachments, which can be images, videos, and various common documents.
[0134] In one embodiment, such as Figure 8 As shown, Figure 8 This is a diagram of the platform management page for linking requirements / defects. The acceptance results will be synchronized to the enterprise's internal project management system, and the App administrator can also view the acceptance results on the platform management page.
[0135] In one embodiment, such as Figure 9 As shown, Figure 9This is a diagram of a user feedback page for version feedback issues. The APP distribution method also includes a feedback issue management system for the test version, which supports users in reporting various issues encountered when downloading or using this version of the APP. After clicking the "Feedback" button of the "Usage Feedback" function on the APP download page, an APP user feedback pop-up window will appear. APP users can fill in detailed feedback information and contact information. APP users can also upload attachments to provide detailed feedback on various issues encountered. The attachments can also be images, videos, and various common document types.
[0136] In one embodiment, while an APP user reports a problem, the system automatically collects basic information about the APP user's device for problem analysis. After clicking "Submit," the system will forward the problem to the APP distribution platform. Figure 10 As shown, Figure 10 This is a diagram of the platform management page for version feedback issues. App administrators can view various feedback issues corresponding to this version on the platform. After analyzing and resolving the corresponding issues, they can add response information for the issues and set the status of the issues to "processed" or "unprocessed" for subsequent statistical analysis.
[0137] In one embodiment, by managing feedback issues in the test version, the performance of the target app can be further optimized and the user experience improved.
[0138] In one embodiment, such as Figure 11 As shown, the target app is distributed to target users through at least one second channel, including:
[0139] Step 1101: Select at least one second channel from the preset channels;
[0140] In one embodiment, such as Figure 12 As shown, Figure 12 This is a schematic diagram of the configuration page for the production version release. The preset channels include internal enterprise distribution channels and external app store distribution channels. The external app store distribution channels include, but are not limited to, mainstream app stores such as Apple, Huawei, OPPO, VIVO, Xiaomi, and Tencent App Store.
[0141] In one embodiment, after selecting at least one second channel from the preset channels, it is also necessary to provide an update description for the current version of the target APP. Specifically, the update description may include, but is not limited to, what new functions have been added to the target APP in this version, what defects have been fixed, performance improvements, and interface optimizations.
[0142] In one embodiment, the number of second channels can be determined based on the needs of the APP administrator.
[0143] Step 1102: Configure corresponding channel distribution information for each of the at least one second channel;
[0144] In one embodiment, taking the second channel as an internal distribution channel of an enterprise as an example, the channel distribution information configured for the internal distribution channel of an enterprise includes whether the current version of the target APP is a forced update, the pilot institutions supported by the current version of the target APP, and the scope of the gray release supported by the current version of the target APP. Among them, the pilot institutions are nationwide by default, but can also be set to provincial or municipal institutions. The scope of gray release is 100% by default, but can also be set as needed. Specifically, when gray release is set to 30%, it means that the current version of the target APP will only be distributed to 30% of users.
[0145] In one embodiment, taking the second channel as an external app store distribution channel as an example, the channel distribution information configured for the external app store distribution channel includes the personalized information required by the current app store. The personalized information required by different app stores varies. For example, some app stores require filling in information such as "app category", "application sensitive permission description", and "application filing number", and uploading materials such as "application screenshots" or "enterprise qualification certificates". This information is generally used for the external store's listing review.
[0146] In one embodiment, the APP administrator can configure corresponding channel distribution information for each second channel through a graphical interface.
[0147] Step 1103: Distribute the target APP to the target user through the second channel with configured channel distribution information.
[0148] In one embodiment, the target APP can be distributed to the target user through the second channel with configured channel distribution information to complete the multi-channel distribution of the production version, thereby improving the distribution efficiency of the target APP in the production version.
[0149] In one embodiment, the data flow and processing of the system are described, and a top-level data flow diagram of the system is established, such as... Figure 13As shown. First, the external entity "Automated Packaging Tool" sends the successfully compiled App installation package to the system. Then, the external entity "App Administrator" can provide the system with the corresponding App, version, and download link, and can query and modify them at any time. They can also query various system statistics (such as download volume, device information, user feedback, etc.). After the App download link is pushed to the external entity "App User," the "App User" can provide feedback (including problem feedback and requirement / defect acceptance feedback) after installation and use. If the created version is a test version, the system can also retrieve the version-related requirement / defect list from the external entity "Project Management System" as needed for "App User" acceptance feedback, and the system can also provide the acceptance feedback results to the "Project Management System." If the created version is a production version, the system will push this version to the external entity "Internal Enterprise Links / External App Store." In addition, the external entity "Traffic Monitoring System" can obtain the system's download traffic statistics for real-time monitoring and analysis of download traffic changes, ensuring the efficiency and stability of the distribution process.
[0150] In one embodiment, the top-level data flow graph is further refined and decomposed to establish a level 0 data flow graph of the system, such as... Figure 14 As shown. First, the processes related to "App Manager" are refined, including: creating / modifying App information, creating / modifying version information, creating / modifying download page information, version requirement / defect management, download page feedback issue management, production version release, and various statistical information. Corresponding storage files are added for each: App information, basic version information, download link information, requirement / defect information, feedback issue information, and production release related information. Second, the processes related to several external entities (mostly internal enterprise systems) are refined: the "Automated Packaging Tool" entity and the "Creating / Modifying App Information" process, the "Project Management System" entity and the "Managing Version Requirements / Defects" process, the "Internal Enterprise Links / External App Stores" entity and the "Production Version Release" process, and the "Traffic Monitoring System" entity and the "Download Traffic Statistics" process. "App Users" complete the download and installation through the "Download Authentication Verification" process and can also accept version requirements / defects and provide feedback. The Level 0 data flow diagram further refines the processes and functions in the top-level data flow diagram, showing in detail the interactions and collaborations between multiple roles (such as App Manager, App Users, and other external entities), making the entire system more complete and efficient.
[0151] In one embodiment, a unified entity model is established for the App distribution platform, such as... Figure 15As shown, the App entity includes attributes such as: App name, App description, App icon, Android package name, and Apple Bundle ID. The Version entity includes attributes such as: Version type (e.g., Beta / Test Center / Business Acceptance / Frozen / Production), Version number, Installation package address, Installation package size, and Version description. One App entity can create multiple Version entities. If a Version entity's Version type belongs to Test version (i.e., Beta / Test Center / Business Acceptance / Frozen), the Version entity will contain multiple Feedback / Issue entities, be associated with multiple Requirement / Defect entities, and create one Download Link entity. The Feedback / Issue entity includes attributes such as: Issue status, Feedback content, Feedback provider's contact information, Feedback provider's device information, Attachments, and Issue reply. The Requirement / Defect entity includes attributes such as: Number, Title, Description, Status, Feedback, and Attachments. The Download Link entity includes attributes such as: Link address, Connection status, QR code image, Remarks, Download verification code, Download count, and Support contact information. If a Version entity's Version type belongs to Production version, the Version entity will create a Production Release entity. The production release entity includes the following attributes: release channel, update instructions, whether the update is mandatory, pilot institutions, gray-scale settings, and information required by the app store.
[0152] In summary, the solution provided in this public disclosure is as follows:
[0153] First, by determining whether the target app version is the preset version, the distribution channels corresponding to different versions can be identified, supporting a more comprehensive distribution strategy. By obtaining the first download link information corresponding to the target app, and responding to the first download link information corresponding to the target app by verifying the first download condition, the verified target app can be distributed to the target user through the first channel, which can improve the security of target app distribution. Distributing the target app to the target user through at least one first channel or at least one second channel can improve the distribution efficiency of the target app.
[0154] Secondly, by determining the first version of the target APP based on the first target APP and APP version information, the version of the target APP can be managed.
[0155] Furthermore, by modifying the first download link information corresponding to the target APP, the second download link information corresponding to the target APP can be obtained, thus enabling the target APP download page to be customized as needed.
[0156] Furthermore, by synchronizing the download traffic of the target app to the enterprise's internal traffic monitoring system, interaction with the enterprise's internal systems can be achieved.
[0157] Furthermore, by managing feedback issues in the test version, the performance of the target app can be further optimized, and the user experience improved.
[0158] Furthermore, by distributing the target APP to the target user through the second channel with configured channel distribution information, the multi-channel distribution of the production version can be completed, thereby improving the distribution efficiency of the target APP in the production version.
[0159] The following application example further illustrates the APP distribution method provided in this disclosure:
[0160] like Figure 16 As shown, Figure 16 This is a flowchart illustrating the APP distribution method provided in this application example. The APP distribution method provided in this application example includes the following steps:
[0161] Step 1601: Obtain the target APP installation package and APP information;
[0162] Step 1602: Based on the target APP installation package and the APP information, determine the first target APP;
[0163] Step 1603: Based on the first target APP and APP version information, determine the first version of the target APP;
[0164] Step 1604: Determine whether the version of the target APP is a preset version;
[0165] Step 1605: If the judgment result is yes, then obtain the first download link information corresponding to the target APP;
[0166] Step 1606: In response to the first download link information corresponding to the target APP being verified by the first download condition, the target APP is distributed to the target user through at least one first channel;
[0167] In one embodiment, after obtaining the first download link information corresponding to the target APP, the APP distribution method includes:
[0168] Modify the first download link information corresponding to the target APP to obtain the second download link information corresponding to the target APP;
[0169] In response to the first download link information corresponding to the target APP being verified through the first download condition, the target APP is distributed to the target user through at least one first channel, including:
[0170] In response to the second download link information corresponding to the target APP being verified by the first download condition, the target APP corresponding to the second download link is distributed to the target user through at least one first channel.
[0171] In one embodiment, after the target APP is distributed to the target user through at least one first channel, the APP distribution method includes:
[0172] Obtain the download traffic of the target APP;
[0173] The download traffic of the target APP is synchronized to the enterprise's internal traffic monitoring system.
[0174] In one embodiment, after the target APP is distributed to the target user through at least one first channel, the APP distribution method includes:
[0175] In response to enabling the requirements / defects list function, a requirements / defects list associated with the target APP is obtained from the enterprise's internal management system.
[0176] Step 1607: If the judgment result is negative, select at least one second channel from the preset channels;
[0177] Step 1608: Configure corresponding channel distribution information for each of the at least one second channel;
[0178] Step 1609: Distribute the target APP to the target user through the second channel with configured channel distribution information.
[0179] To implement the APP distribution method provided in this disclosure, this disclosure also provides an APP distribution device, such as... Figure 17 As shown. Figure 17 This is a schematic diagram of the structure of an APP distribution device provided in an embodiment of the present disclosure. The APP distribution device 1700 includes:
[0180] The first acquisition unit 1701 is used to acquire the target APP;
[0181] The judgment unit 1702 is used to determine whether the version of the target APP is a preset version;
[0182] The second acquisition unit 1703 is used to acquire the first download link information corresponding to the target APP if the judgment result is yes;
[0183] The first distribution unit 1704 is configured to distribute the target APP to the target user through at least one first channel in response to the first download link information corresponding to the target APP being verified by the first download condition.
[0184] The second distribution unit 1705 is used to distribute the target APP to the target user through at least one second channel if the determination result is negative.
[0185] In one embodiment, the first acquisition unit 1701 is specifically used for:
[0186] Obtain the target app's installation package and app information;
[0187] Based on the target APP installation package and the APP information, the first target APP is determined;
[0188] Based on the first target APP and APP version information, the first version of the target APP is determined.
[0189] In one embodiment, the APP distribution device 1700 further includes a modification unit, which is used to:
[0190] Modify the first download link information corresponding to the target APP to obtain the second download link information corresponding to the target APP;
[0191] In one embodiment, the first distribution unit 1704 is specifically used for:
[0192] In response to the second download link information corresponding to the target APP being verified by the first download condition, the target APP corresponding to the second download link is distributed to the target user through at least one first channel.
[0193] In one embodiment, the APP distribution device 1700 further includes a synchronization unit, which is used for:
[0194] Obtain the download traffic of the target APP;
[0195] The download traffic of the target APP is synchronized to the enterprise's internal traffic monitoring system.
[0196] In one embodiment, the APP distribution device 1700 further includes a third acquisition unit, which is used for:
[0197] In response to enabling the requirements / defects list function, a requirements / defects list associated with the target APP is obtained from the enterprise's internal management system.
[0198] In one embodiment, the second distribution unit 1705 is specifically used for:
[0199] Select at least one secondary channel from the preset channels;
[0200] Configure corresponding channel distribution information for each of the at least one second channel;
[0201] The target app is distributed to the target user through the second channel, which has been configured with channel distribution information.
[0202] It should be noted that the APP distribution device provided in the above embodiments is only illustrated by the division of the above program modules when distributing APPs. In actual applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the APP distribution device can be divided into different program modules to complete all or part of the processing described above. In addition, the APP distribution device provided in the above embodiments and the APP distribution method embodiments provided in this disclosure belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.
[0203] Figure 18 This is a schematic diagram of the hardware composition structure of the electronic device provided in the embodiments of this disclosure, such as... Figure 18 As shown, the electronic device 1800 includes at least one processor 1802; and a memory 1801 communicatively connected to the at least one processor 1802; wherein the memory 1801 stores instructions executable by the at least one processor 1802, the instructions being executed by the at least one processor 1802 to implement the steps of the APP distribution method described in the embodiments of this disclosure.
[0204] Optionally, the electronic device may specifically be an APP distribution device according to the embodiments of this application, and the electronic device may implement the corresponding processes implemented by the APP distribution device in the various methods of the embodiments of this application. For the sake of brevity, it will not be described in detail here.
[0205] It is understood that the electronic device also includes a communication interface 1803. The various components in the electronic device are coupled together via a bus system 1804. It is understood that the bus system 1804 is used to implement communication between these components. In addition to a data bus, the bus system 1804 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 18 The general labeled all buses as Bus System 1804.
[0206] It is understood that memory 1801 can be volatile memory or non-volatile memory, or both. Non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), ferromagnetic random access memory (FRAM), flash memory, magnetic surface memory, optical disc, or compact disc read-only memory (CD-ROM); magnetic surface memory can be disk storage or magnetic tape storage. Volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Synchronous Static Random Access Memory (SSRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), SyncLink Dynamic Random Access Memory (SLDRAM), and Direct Rambus Random Access Memory (DRRAM).The memory 1801 described in the embodiments of the present invention is intended to include, but is not limited to, these and any other suitable types of memory.
[0207] The methods disclosed in the above embodiments can be applied to or implemented by processor 1802. Processor 1802 may be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above methods can be completed by integrated logic circuits in the hardware of processor 1802 or by instructions in software form. Processor 1802 may be a general-purpose processor, DSP, or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. Processor 1802 can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this invention. A general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this invention can be directly manifested as execution by a hardware decoding processor, or execution by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, specifically memory 1801. Processor 1802 reads information from memory 1801 and, in conjunction with its hardware, completes the steps of the aforementioned methods.
[0208] In an exemplary embodiment, the electronic device may be implemented by one or more application-specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), complex programmable logic devices (CPLDs), FPGAs, general-purpose processors, controllers, MCUs, microprocessors, or other electronic components to perform the aforementioned method.
[0209] This disclosure also provides a non-transitory computer-readable storage medium storing computer instructions, which are used to cause the computer to execute the steps of the APP distribution method described in this disclosure.
[0210] Optionally, the computer-readable storage medium can be applied to the APP distribution device in the embodiments of this application, and the computer instructions cause the computer to execute the corresponding processes implemented by the APP distribution device in the various methods of the embodiments of this application. For the sake of brevity, they will not be described in detail here.
[0211] This disclosure also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the APP distribution method provided in this embodiment of the invention.
[0212] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. The device embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods, such as: multiple units or components can be combined, or integrated into another system, or some features can be ignored or not executed. In addition, the coupling, direct coupling, or communication connection between the various components shown or discussed can be through some interfaces, and the indirect coupling or communication connection between devices or units can be electrical, mechanical, or other forms.
[0213] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of the units may be selected to achieve the purpose of this embodiment according to actual needs.
[0214] In addition, in the various embodiments of the present invention, each functional unit can be integrated into one processing unit, or each unit can be a separate unit, or two or more units can be integrated into one unit; the integrated unit can be implemented in hardware or in the form of hardware plus software functional units.
[0215] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media that can store program code, such as mobile storage devices, ROM, RAM, magnetic disks, or optical disks.
[0216] Alternatively, if the integrated units of this invention are implemented as software functional modules and sold or used as independent products, they can also be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the embodiments of this invention, or the parts that contribute to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the methods described in the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, ROM, RAM, magnetic disks, or optical disks.
[0217] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.
Claims
1. A method for distributing an application (APP), characterized in that, include: Obtain the target app; Determine whether the version of the target APP is a preset version; If the determination result is yes, then obtain the first download link information corresponding to the target APP; the first download link information includes the link status, the link validity period, the number of downloads of the link, and the download password of the link; In response to the first download link information corresponding to the target APP being verified by the first download condition, the target APP is distributed to the target user through at least one first channel; the first download condition verification includes verifying that the link is valid, the link is within the validity period, the number of downloads of the link has not exceeded a preset number, and the download password of the link is correct; If the determination result is negative, the target APP will be distributed to the target user through at least one second channel; After obtaining the first download link information corresponding to the target APP, the method includes: Modify the first download link information corresponding to the target APP to obtain the second download link information corresponding to the target APP; In response to the first download link information corresponding to the target APP being verified through the first download condition, the target APP is distributed to the target user through at least one first channel, including: In response to the second download link information corresponding to the target APP being verified by the first download condition, the target APP corresponding to the second download link is distributed to the target user through at least one first channel.
2. The method according to claim 1, characterized in that, The acquisition of the target APP includes: Obtain the target app's installation package and app information; Based on the target APP installation package and the APP information, the first target APP is determined; Based on the first target APP and APP version information, the first version of the target APP is determined.
3. The method according to claim 1, characterized in that, After distributing the target APP to the target user through at least one first channel, the method includes: Obtain the download traffic of the target APP; The download traffic of the target APP is synchronized to the enterprise's internal traffic monitoring system.
4. The method according to claim 1, characterized in that, After distributing the target APP to the target user through at least one first channel, the method includes: In response to enabling the requirements / defects list function, a requirements / defects list associated with the target APP is obtained from the enterprise's internal management system.
5. The method according to claim 1, characterized in that, The distribution of the target APP to the target user through at least one second channel includes: Select at least one secondary channel from the preset channels; Configure corresponding channel distribution information for each of the at least one second channel; The target app is distributed to the target user through the second channel, which has been configured with channel distribution information.
6. An APP distribution device, characterized in that, include: The first acquisition unit is used to acquire the target APP; The judgment unit is used to determine whether the version of the target APP is a preset version; The second acquisition unit is used to acquire the first download link information corresponding to the target APP if the judgment result is yes; the first download link information includes the link status, the link validity period, the number of downloads of the link, and the download password of the link; The first distribution unit is configured to distribute the target APP to the target user through at least one first channel in response to the first download link information corresponding to the target APP passing the first download condition verification; the first download condition verification includes verifying that the link is valid, the link is within the validity period, the number of downloads of the link has not exceeded a preset number, and the download password of the link is correct. The second distribution unit is used to distribute the target APP to the target user through at least one second channel if the determination result is negative. After obtaining the first download link information corresponding to the target APP, the device is used to: Modify the first download link information corresponding to the target APP to obtain the second download link information corresponding to the target APP; In response to the first download link information corresponding to the target APP being verified through the first download condition, the target APP is distributed to the target user through at least one first channel, including: In response to the second download link information corresponding to the target APP being verified by the first download condition, the target APP corresponding to the second download link is distributed to the target user through at least one first channel.
7. An electronic device, characterized in that, include: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1 to 5.
8. A non-transitory computer-readable storage medium storing computer instructions, characterized in that, The computer instructions are used to cause the computer to perform the method according to any one of claims 1 to 5.
9. A computer program product comprising a computer program that, when executed by a processor, implements the method of any one of claims 1 to 5.
Citation Information
Patent Citations
Method and device for processing service request
CN114490058A