Method for creating a mobile application

The method uses an operator server to rapidly create and deploy mobile applications with a management system, addressing the limitations of existing methods by enabling rapid, flexible, and secure mobile app development across multiple platforms.

WO2025221161A1PCT designated stage Publication Date: 2025-10-23REZVOV ANDREY VLADIMIROVICH
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/RU2025/000099
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-04-19
Filing Date
2025-04-08
Publication Date
2025-10-23

AI Technical Summary

Technical Problem

Existing methods for creating mobile applications are time-consuming, costly, and inflexible, requiring extensive testing and customization, and often rely on centralized services that can fail or change terms, leading to data loss and security risks.

Method used

A method utilizing an operator server with a mobile application management system that assembles and deploys ready-made software components across various operating systems, allowing for rapid creation and deployment of mobile applications with customizable scenarios, independent of third-party services.

Benefits of technology

Enables the quick and repeated creation of fully functional mobile applications on any operating system, written in any programming language, with user-controlled content and security, reducing development time to a day and eliminating the need for continuous testing and reliance on external services.

✦ Generated by Eureka AI based on patent content.
Patent Text Reader

Abstract

The invention relates to computing. A method for creating a mobile application with a mobile application management system and transmitting same to a user is implemented with the aid of an operator server configured to be capable of receiving a request and transmitting a ready-made result to a user. The method includes receiving from a user a signal containing a request to create a mobile application, said request including information about a mobile application operating scenario; processing the received signal and selecting corresponding ready-made software components; assembling the selected ready-made software components, and also adjusting, adapting and integrating said components with one another, with a mobile application management system and with an operating system; creating from the assembled ready-made software components a ready-made mobile application; and transmitting the ready-made mobile application with the mobile application management system to the user. The invention makes it possible to quickly and repeatedly create mobile applications which are ready for unlimited deployment on a target platform.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] METHOD OF CREATING A MOBILE APPLICATION

[0002] AREA OF TECHNOLOGY

[0003] The invention relates to the field of computer technology and can be used to create mobile applications that are completely ready for deployment on the target platform.

[0004] LEVEL OF TECHNOLOGY

[0005] Various methods for developing and creating mobile applications are known in the art. Traditional methods for creating mobile applications include custom mobile app development and the use of mobile app builder services.

[0006] Custom mobile app development involves developing and approving technical specifications and design, auditing the workflow, testing, and implementing it into the client's workflow. One of the main disadvantages of this method is the lengthy development time, the need for constant approval of the final product, testing of the mobile app to identify and correct any shortcomings, and the high financial costs of creating the mobile app.

[0007] The estimated time to complete a finished product, from the start of technical specification development to the delivery of a minimum viable product, is typically 4-6 months or more. A technical specialist with an understanding of the target platforms' functionality and skills and experience in drafting technical specifications is required to audit the progress of the work. Acceptance conditions must be ensured, and testing must be conducted taking into account all platform features. In addition to a functional audit of the finished product, it is necessary to test the application's stability under various conditions, ensure the design documentation is up-to-date, conduct static code analysis, and identify coding style issues, vulnerabilities, and errors. Performance analysis, memory leaks, and other resource usage issues must be conducted.For example, the testing process might involve running and testing the same code on each mobile device variant, identifying problematic parts of the code, rewriting the code to fix those parts, and repeating the testing on the rewritten code.

[0008] Using builder services to create ready-made mobile apps is a common practice among providers of mass-produced standard solutions, and the goal is to deliver a finished app in a shorter timeframe than with custom development. However, builders are limited by the functionality of the chosen service and may pose challenges with publishing on app store platforms. Mobile apps remain functional only if regular payments are made to the service and depend on its functionality.

[0009] Typically, a minimum viable prototype (MVP) can be created using such a set of standard features. This option is suitable for startups or testing product hypotheses, but it is inflexible and difficult or impossible to customize to meet the needs of a specific client.

[0010] The disadvantages of using app builder services include the time-consuming nature of studying manuals and instructions for building and configuring the app, as well as connecting third-party services. Furthermore, the security of the resulting mobile app and user data depends entirely on the reliability of the chosen service provider (the builder's owner), where the content is physically stored. If the terms of use change or such service providers cease operations, user data is lost, and support for published mobile apps ceases.

[0011] Another well-known method for reducing time spent on custom development and / or as part of mobile app builder services is porting, which is the process of adapting software or code to a computing environment different from the one for which it was originally developed. Development using this method is commonly referred to as cross-platform. This method involves creating an application on a single code base for multiple operating systems simultaneously, using ready-made libraries and components, so-called frameworks. Universal frameworks such as Flutter, React Native, Apache Cordova, Ionic, and others are used for this type of development.

[0012] The general disadvantages of this method include lower performance and limited ability to use the resources of the target device, in contrast to the native application development method.

[0013] Native development involves using a unique codebase for the target operating systems (OS). For example, Kotlin is used for Android, and Swift is used for iOS. The advantages of native development include the ability to support low-level functions, flexible functionality, a familiar interface, and the fast execution of the resulting application within the environment without the use of intermediate libraries.

[0014] The closest solution in terms of technical essence was chosen to be a well-known computer-implemented method for creating and managing mobile applications, which contains the following stages:

[0015] - receive the initial data of the application;

[0016] - generate the program logic of the application; determine the format of the program logic of the mobile application depending on the type of mobile data transmission channel;

[0017] - represent the mentioned application logic in the required format;

[0018] - transmit the software logic of the application via the mentioned mobile data transmission channel to the end user’s device (see WO 2018056856 A1, published 03 / 29 / 2018).

[0019] The disadvantages of the closest solution are the following: the need to use a centralized service constructor, on which the functionality of the created mobile application depends, i.e., if service constructors are disabled or fail, the functionality of the mobile application ceases; the need to use frameworks to generate universal program code for mobile applications on all target platforms, as a result of which the performance of mobile applications decreases, as does the ability to use the resources of all target platforms.

[0020] ESSENCE OF THE INVENTION

[0021] The technical problem solved by the proposed invention is the development of a method that will allow, in the shortest possible time, the creation of any mobile application with a control system that satisfies all the requirements of customers and users of mobile applications, an unlimited number of times.

[0022] The technical result of the invention is to provide the ability to quickly and repeatedly create mobile applications that are ready for deployment an unlimited number of times on the target platform, which can implement any operating scenario, which can run on any operating system written in any programming language, by modifying the incoming data to the parameters of specific target devices, based on the software features of the specific target device.

[0023] The technical result of the invention is achieved by implementing the proposed method for creating a mobile application with a mobile application management system and transferring it to the user, which is implemented using an operator server configured with the ability to receive an unlimited number of times from the user a request to create a mobile application with a mobile application management system and an unlimited number of times to transfer to the user a ready-made mobile application with a mobile application management system that has its own operating scenario on any operating system, wherein the operator server contains an assembly interface, a plurality of ready-made software components and a single entry point for processing the parameters of a plurality of ready-made software components, configured with the ability to adapt a plurality of ready-made software components to each other,running on any operating systems and written in any programming languages ​​and with the ability to be adapted to the specified mobile application management system, wherein each ready-made software component from the specified set implements its own operating scenarios for the mobile application and has an architecture and a set of instructions designed with the ability to interact with other ready-made software components from the specified set of ready-made software components, with the ability to interact with the specified mobile application management system and with the ability to integrate with any operating system, wherein, with the help of the operator's server, a signal is received from the user containing a request for the creation of a mobile application, which includes information about the operating scenario of the mobile application, with the help of the operator's server, the signal received from the user is processed and ready-made software components are selected that correspond to the operating scenario of the mobile application,specified in the user's request, using the assembly interface, they assemble the selected ready-made software components, and also configure, adapt and integrate them with each other, with the specified mobile application management system and with the operating system, using the operator's server, they create a ready-made mobile application from the assembled ready-made software components, which includes a control panel for the ready-made mobile application, a data exchange key in the form of a command built into the assembled ready-made software components, as well as a binary data package corresponding to the operating scenario of the mobile application specified in the request received from the user, and configured with the possibility of deployment on the user's operating system, wherein the data exchange key is configured with the possibility of interaction between the user's server and the ready-made mobile application to receive user content,With the help of the operator's server, a ready-made mobile application with a mobile application management system is transferred to the user for subsequent deployment by the user on the operating system and the implementation of the mobile application's operating scenario.

[0024] In addition, the signal from the user received by the operator's server may additionally contain a set of operating parameters for the mobile application, and the finished software components may have settings files, and when assembling the finished software components, a comparison is made between the set of operating parameters for the mobile application and the parameters of the finished software components stored in the settings files, and data corresponding to the operating parameters for the mobile application is entered into the settings files.

[0025] In addition, they can use an operator server, which can be represented by the GitLab source code repository management system, server environment deployment scripts using Ansimble software with integration into the GitLab source code repository management system using the REST API or WebSocket technology to obtain a set of mobile application operating parameters.

[0026] In addition, a binary data package can be a Docker container that stores pre-assembled and compiled binary executable files, auxiliary libraries, auxiliary resources, functional parameters, and server environment settings from a set of source codes of ready-made software components.

[0027] In this case, preliminary assembly and compilation of binary executable files from a set of source texts of ready-made software components can be carried out using the Golang development environment, while the installation and launch of binary executable files, auxiliary libraries and auxiliary resources can also be carried out using the Golang development environment.

[0028] In addition, they can use the operator server, which may include a graphical user interface, a set of pre-configured executable scripts of operating system commands, a system for assembling a software package in the Linux Ubuntu environment using the Docker containerization system, Android Studio, SDKtools, GradleBuildTool, Docker-compose, Bashscripting, Xcode targets, PostgreSQL, FirebaseCloudMessaging, source codes for modifying and assembling Docker images of the web interface and REST API of the pre-configured administrative panel, source codes for modifying and assembling a pre-configured mobile application for the Android / AOSP and iOS platforms.

[0029] In addition, the signal from the user may additionally contain information about the mobile application being created, which can be integrated during the assembly of finished software components, using tools for translating input parameters of various formats to the uniform standards of the operating system being used.

[0030] In addition, the binary data package of the finished mobile application transmitted to the user can be designed with the ability to implement the mobile application operation scenario without using the resources of the operator's server.

[0031] EXAMPLES OF IMPLEMENTING THE INVENTION: The proposed method for creating a mobile application with a mobile application management system and transmitting it to the user is implemented using a combination of technical means, which may include (but are not limited to): an operator server for receiving input parameters in interactive or automatic mode with a set of instructions for the target platform at the software level. The operator server may be represented by any technical electronic device, such as a personal computer, laptop, tablet, smartphone, mobile device, etc., with internal memory, control processors, and may also be represented by cloud storage or third-party services, as well as a combination thereof;

[0032] - the user's server, which can be represented by any technical electronic device, such as a personal computer, laptop, tablet, smartphone, mobile device, etc., with internal memory, control processors, and can also be represented by cloud storage or third-party services that allow for the sending of requests to the operator's server, as well as ensure the operation and support of the created ready-made mobile application and the mobile application management system with the ability to fill the mobile application with any user content.

[0033] The proposed method is designed for creating an unlimited number of mobile applications, each with any functionality required by the user and implementing any user-facing scenario. The proposed method enables the creation of mobile applications of any type, running on any operating system, written in any programming language, capable of being delivered to end users an unlimited number of times, and capable of being deployed an unlimited number of times on the target platform.

[0034] The operator's server, with the help of which the proposed method is implemented, is configured with the capability of receiving an unlimited number of requests for the creation of mobile applications with a mobile application management system from an unlimited number of users, and an unlimited number of times of transmitting ready-made mobile applications with a mobile application management system to users.

[0035] To implement the proposed method, an operator server is used, which has the following components: an assembly interface (assembly system); services for generating virtual devices of the target platform for assembling ready-made software components of the system for supporting the operation of mobile applications; services for loading interconnected ready-made software components in the form of source code packages into the internal memory of the electronic device; a plurality of ready-made software components; a single main entry point for processing the parameters of a plurality of ready-made software components, designed with the ability to adapt to each other a plurality of ready-made software components running on any operating systems and written in any programming languages ​​and with the ability to adapt to the mobile application management system and to the target platform.

[0036] The operator server can be implemented in the form of an electronic device that allows the operator to access the administration system server and display the graphical interface of the assembly, and / or execute pre-compiled scripts of the target platform commands to set the input parameters for the assembly of ready-made software components for mobile applications and the control system loaded into the memory of the electronic device.

[0037] The operator's server can be represented by the GitLab source code repository management system, server environment deployment scenarios using Ansimble software with integration into the GitLab source code repository management system using the REST API or WebSocket technology to obtain a set of mobile application operating parameters.

[0038] The operator server may include a graphical user interface, a set of pre-configured executable scripts of operating system commands, a system for assembling a software package (ready-made software components) in the Linux Ubuntu environment using the Docker containerization system, Android Studio, SDKtools, GradleBuildTool, Docker-compose, Bashscripting, Xcode targets,

[0039] PostgreSQL, FirebaseCloudMessaging, source code for modifying and building Docker images of the web interface and REST API of the pre-configured administrative panel, source code of ready-made software components for modifying and building a pre-configured mobile application for the Android / AOSP and iOS platforms.

[0040] Moreover, each ready-made software component from the set of software components is prepared in advance (prior to the implementation of the proposed method) and uploaded to the operator's server. Each ready-made software component can be modified and implements its own operating scenarios for the mobile application being created. It has an architecture and a set of instructions designed to interact with other ready-made software components from the set of ready-made software components, to interact with the mobile application management system, and to integrate with any operating system.

[0041] The single entry point is designed to process REST API requests to deliver target settings files for the target platform configured in accordance with all or some of the parameters to the above virtual devices.

[0042] The target platform is the operating system and environment in which the finished mobile application and its control system run. For the control system, this is most often Linux Ubuntu, while for mobile applications, this is one or another implementation of Android or iOS. An API (Application Programming Interface) is a unified set of standardized methods and rules by which various programs or their modules, implemented in different programming languages, different architectures, and different operating systems, communicate with each other and exchange data. REST stands for REpresentational State Transfer, a software architecture style for distributed systems that enables flexible resource management. When implementing the proposed method, the REST API helps different types of functions correctly maintain a uniform data type and parameter sequence.They receive a single structured list of parameters as input and distribute it for building programs of different types. The REST API allows for collecting various parameters, consolidating them into a unified format, and producing output configurations for ready-made mobile applications for different operating systems (Android and iOS), as well as for the management system, which runs on the Linux operating system and also consists of separate, interconnected software components. A similar software interface (REST API) is also used for interaction between components of a ready-made mobile application: the mobile application management system and the mobile applications themselves. The REST API facilitates interaction between completely different ready-made software components.When implementing the proposed method, this application programming interface (API) is a set of definitions and protocols that describe data exchange methods and enable various software components to interact with each other. Target files (a set of target platform files) are required to indicate to the programming environment the type and intended use of the finished software components being built. Target files are the destination files where all settings and parameters are recorded. Following the instructions in these files, the parameters for a specific use of the finished mobile application are modeled. A saved target file can (and should) be reused, eliminating the need to re-enter all the necessary settings and simply making minor adjustments if necessary. Target files implement a specific scenario, allowing software components to quickly determine what to do and in what sequence.

[0043] A binary data package contains binary executable files and supporting libraries that may contain auxiliary resources (such as strings or graphical interface elements). The binary data package is contained in a single container from which it is executed. This container contains everything necessary for the functioning of the finished mobile application. When using a binary data package, the target platform's task is limited to supporting the deployment of such a container. Because this container type is strictly standardized, the range of target platforms is very wide.

[0044] Deployment is possible on any operating system with kernel support for control groups and namespace isolation to support a containerized environment. The binary package is a Docker container that stores pre-built and compiled binary executables, environments and dependencies, auxiliary libraries, auxiliary resources, functional parameters, and server environment settings, all pre-built and compiled from a set of source code for pre-built software components. The Docker Compose package manager is used to manage the set of containers, enabling the launch of multi-container applications.In this case, preliminary assembly and compilation of binary executable files from a set of source texts of ready-made software components can be carried out using the Golang development environment, and installation and launch of binary executable files, auxiliary libraries and auxiliary resources can also be carried out using the Golang development environment.

[0045] The ability to work with Docker containers is available on Linux, Windows, macOS, and BSD operating systems, on x86-64, ARM, and IBM System / 390 hardware platforms with minor adjustments.

[0046] When creating a ready-made mobile application on the operator's server, the server environment can be configured on the user's primary operating system, without the use of Docker containers.

[0047] The ready-made mobile applications that can be created using the proposed method can represent any resource; systems can support any operational scenarios in any industry. Examples of ready-made mobile applications with a management system that can be created and delivered using the proposed method include: - A marketplace platform for online sales of goods or services with a user personal account and the ability to implement virtual marketplace functionality - for example: e-commerce platforms, an online e-commerce store, or provision of information about third-party products or services;

[0048] - Coverage of the activities of commercial or non-profit organizations and social programs with the possibility of selling tickets, goods or services, with the possibility of making donations or voluntary contributions;

[0049] - Social networks, communities, competitions and exhibitions of works, other implementations of online platforms that are used for communication, dating, social relations, as well as for entertainment and work - for example: user registration, technical support, notifications about promotions and events, a system for rating various categories of information materials, settings for individual and group access to information, content based on user interests, statistics and popularity ratings;

[0050] - Information and commercial trade catalogs of products and services;

[0051] - Electronic media, reference books, encyclopedias and media catalogues;

[0052] Information platforms for covering the lives and activities of organizations, famous people, media personalities, and opinion leaders;

[0053] - Product and brand news coverage, announcements of new products, discounts and promotions for app users, multi-level, quickly updated wholesale and retail catalogs; coverage of the activities of sports clubs and federations;

[0054] - CRM system for automation and optimization of marketing and customer service and team task planners (task managers) to implement the ability to automate and integrate data and conduct e-commerce.

[0055] By implementing the proposed method, it is possible to create in the shortest possible time (within one day) and transfer to the user (customer) any other ready-made mobile application with a control system that the user needs to implement his task and the required scenario for the mobile application operation, and which has the ability to be updated.

[0056] The target audience includes, but is not limited to, small and medium businesses, online retailers, wholesalers, multi-functional organizations, educational organizations, medical organizations, sports clubs and federations, museums, art groups and creative individuals, bloggers, non-profit and social organizations, libraries, and other organizations that require prompt access to regularly updated information for their customers and subscribers.

[0057] All finished mobile applications created using the proposed method are delivered to the user without any content. The user then manages all content creation and updates independently, using their own servers and resources, including the internal memory of their device and the internet. Further operation of the created mobile application with the management system is accomplished without the need for an operator server.

[0058] The proposed method for creating a mobile application with a mobile application management system and transferring it to the user is as follows.

[0059] The operator's server receives a signal from the user containing a request to create a mobile application, which includes information about the mobile application's operating scenario. The user can send the request to the operator's server using any convenient method, including any of the user's electronic devices. The user's signal may additionally contain a set of mobile application operating parameters, including indications of the application's operating mode, the target audience, the need to process specific user content, and so on. The user's signal may also contain information about the mobile application being created, which is integrated during the assembly of the finished software components using tools for translating input parameters of various formats to the uniform standards of the operating system being used.Information about the mobile app being developed may include: the mobile app name, the user (customer) name, the user (customer) logo, the color palette of the mobile app being developed, field layout preferences, and any other information the user wishes to incorporate into the mobile app being developed. The signal received from the user is then processed using the operator's server. Based on the information in the request, the type of mobile app being developed, its operating scenario, and input parameters are determined.

[0060] Next, using the operator's server, they select ready-made software components that have configuration files and that correspond to the mobile application's operating scenario specified in the user's request, as well as the input parameters and information about the mobile application being created.

[0061] After selecting all the ready-made software components necessary to implement the mobile application's operational scenario, the operator server's build interface assembles the selected ready-made software components. Using a single entry point, the selected ready-made software components are configured, adapted, and integrated with each other, the mobile application management system, and the operating system (target platform). During the assembly of the ready-made software components, the mobile application's operating parameters are compared with the parameters of the ready-made software components stored in the configuration files, and the data corresponding to the mobile application's operating parameters is updated in the configuration files.

[0062] Next, using the operator's server, a ready-made mobile application is created from the assembled ready-made software components, which includes a control panel for the ready-made mobile application, a data exchange key in the form of a command built into the assembled ready-made software components, as well as a binary data package corresponding to the mobile application's operating scenario specified in the request received from the user.

[0063] Moreover, the binary data package is designed with the ability to be deployed on the user's operating system, and the data exchange key is designed with the ability to interact between the user's server and the ready-made mobile application to obtain the user's content.

[0064] Next, the operator's server delivers the completed mobile application to the user, along with the mobile application management system, for subsequent deployment by the user on the operating system and implementation of the mobile application scenario. Moreover, the binary data package of the completed mobile application delivered to the user is designed to implement the mobile application scenario without using the operator's server resources.

[0065] Regardless of the type, style, or scenario of the created ready-made mobile application operating within the mobile application management system, the final use of the finished mobile application does not affect the order of actions and does not require operator intervention. This means that regardless of the type of ready-made mobile application created using the proposed method (marketplace, news app, media catalog, etc.), the algorithm used on the operator's server remains virtually unchanged, as does the set (number) of input parameters. When implementing the proposed method, saved configurations from previous builds can be reused, with modifications to the set of initial configuration parameter values, thereby reducing the amount of new data required to enter into the mobile application being created.The proposed method creates multifunctional universal mobile applications, regardless of the intended use case. Whether it's a store or a newspaper is up to the user, who submits a request to the operator's server and ultimately receives a ready-to-deploy mobile application with a mobile application management system. The user specifies the name and design of the mobile application in their request for mobile application creation. The management system is universal for both iOS and Android platforms.

[0066] Further in the text, examples of the implementation of the proposed method are described.

[0067] Example 1 shows the creation of a mobile application for an online store with a management system for the Android platform.

[0068] 1. The user (customer) sends a signal to the operator's server, which includes a request to create a mobile app that implements the online store's operating scenario. In the signal sent, the user also specifies the name of the online store, provides their logo, provides all personal information, suggests a color scheme for their mobile app, and specifies another set of input parameters.

[0069] 2. On the operator's server, using the operator's graphical user interface and / or server environment deployment scenarios, using Ansimble software with integration into the gitlab source code base repository management system, a user request is processed. The request contains all the information about the mobile application usage scenario with the mobile application management system and a set of input configurable parameters: a unique name of the mobile application, a unique name of the software package, graphical interface parameters, mobile application graphical design packages according to the legacy+adaptive icons specification, the name of the domain name or IP address with the port number for sending and receiving GET and POST REST API requests to ensure interaction between the finished mobile application and the mobile application management system, and the user's contact information.

[0070] 3. Using the GET and POST request methods on the operator's server and / or by receiving data from the GitLab source code base repository management system, the input configurable parameters are read and interconnected ready-made software components are loaded into the internal memory in the form of sets of source code for a mobile application for the Android platform and sets of source code for a mobile application management system for the Linux Ubuntu platform.

[0071] 4. The operator interface initiates the launch of the assembly system (assembly interface), which automatically, without additional dialogs, selects ready-made software components in accordance with the mobile application usage scenario specified in the user's request, by comparing the received input configurable parameters with a set of initial values.

[0072] 5. Executable automatic scripts compare the received input configurable parameters with a set of initial values ​​of configuration parameters and enter modified data into target files provided by the application architecture, create and integrate a unique key for data exchange into the program code and modify the source texts of software components.

[0073] 6. Containerization tools Docker-compose; AndroidStudioSDKtools; GradleBuildTool assemble ready-made software components into binary data packages and executable programs for the target platform.

[0074] 7. The operator's user terminal receives a completed mobile application in the form of completed interconnected software components, including a mobile application management system, containing a deployment scheme for target platforms for transfer to the end user, who performs and organizes the storage of data on a platform independent of the build system, based on the requirements of the target use, and / or the transfer is carried out by deployment at the user's site using Ansimble software.

[0075] 8. Receive the finished mobile application in the Android App Bundle file format, ready for publication in the Google Play app store, and in the Android Package file format for publication on alternative platforms or installation directly on a compatible device, to the operator's user terminal for transfer to the end user.

[0076] When creating a mobile application for an online store with a management system for the Android platform, the following ready-made software components can be used in the example, which implement the following scenarios (not limited to the list below): 1. A management system component that implements scenarios for adding information resources to the database, editing and deleting, changing the order and level of nesting, changing the type of information resource, adding and changing categories and filters for content personalization.

[0077] 2. A content management system component that implements visual word processor scenarios, similar in functionality to traditional WYSIWYG solutions, which implements scenarios for adding text descriptions, style formatting, adding headings and lists of various nesting levels, images with the ability to download data locally and from the cloud, editing functions, and conforming to a common style for displaying content information.

[0078] 3. A component of the management system that implements scenarios for adding markup elements and scripting language to information resources in source text editing mode using tools for visualizing blocks of displayed source code.

[0079] 4. A control system component that implements scenarios for connecting external services by specifying the network address of a resource to implement remote trading functionality (settings depend on the specific service provider).

[0080] 5. A mobile application component for the Android platform that implements scenarios for retrieving data and synchronizing it with local storage on the device by sending GET and POST requests to the JSON REST API, with the ability to personalize content based on the user's interests by specifying categories and filters. 6. A mobile application component for the Android platform, similar in functionality to the WebView system component, implementing scenarios for processing markup language and visually displaying text and media content stored in the device's local database on the mobile device.

[0081] 7. A component of a mobile application for the Android platform that implements scripts and supports the operation of a scripting language for the implementation of interactive elements and their interaction.

[0082] 8. A component of a mobile application for the Android platform that implements scenarios for automatic video playback in the desired orientation of the mobile device display.

[0083] Thus, we quickly created and delivered a mobile app with a user management system. The delivered mobile app is ready for use, ready to implement an online store scenario, and ready to be populated with user content.

[0084] Example 2 shows the creation of a mobile application for an online newspaper with a management system for the iOS platform.

[0085] 1. The user (customer) sends a signal to the operator's server, which includes a request to create a mobile app implementing the online newspaper's workflow. In the signal sent, the user also specifies the name of the online newspaper, provides their logo, provides all personal information, suggests a color scheme for their mobile app, and specifies another set of input parameters.

[0086] 2. On the operator's server, using the operator's graphical user interface and / or server environment deployment scenarios using Ansimble software with integration into the gitlab source code base repository management system, a user request is processed. The request contains information about the mobile application usage scenario with the mobile application management system and a set of input configurable parameters: a unique name of the mobile application, a unique name of the software package, graphical interface parameters, mobile application graphical design packages according to the legacy+adaptive icons specification, the domain name or IP address with the port number for sending and receiving GET and POST REST API requests to ensure interaction between the finished mobile application and the mobile application management system, and the user's contact information.

[0087] 3. Using the GET and POST request methods on the operator's server and / or by receiving data from the GitLab source code repository management system, the input configurable parameters are read and interconnected ready-made software components are loaded into the internal memory in the form of sets of source code for a mobile application for the iOS platform and sets of source code for a mobile application management system for the Linux Ubuntu platform.

[0088] 4. The operator interface initiates the launch of the build system (build interface), which automatically, without additional dialogs, selects software components in accordance with the mobile application usage scenario specified in the user request by comparing the received input configurable parameters with a set of initial values. 5. Automatically executed scripts compare the received input configurable parameters with a set of initial configuration parameter values ​​and enter modified data into the target files specified by the application architecture, create and integrate a unique key for data exchange into the program code, and modify the source code of the software components.

[0089] 6. Using containerization tools Docker-compose and Bash scripting, they assemble the source texts of ready-made software components into binary data packages and executable programs for the target platform.

[0090] 7. Receive a completed mobile application on the operator's user terminal in the form of completed interconnected software components, including a mobile application management system, containing a deployment scheme on target platforms for transfer to the end user, who executes and organizes the storage of data on a platform independent of the build system, based on the requirements of the target use and / or transfer is carried out by deploying to the user's platform using Ansimble software.

[0091] 8. Receive the finished mobile application in the form of an Xcodeproject archive package on the operator's user terminal for assembly and upload to the App Store Connect using Xcode target and transfer of the finished mobile application to the end user by transferring the application to the user's Apple Developer account.

[0092] When creating a mobile application for an online newspaper with a management system for the iOS platform, the following ready-made software components can be used in the example, which implement the following scenarios (not limited to the list below):

[0093] 1. A component of the management system that implements scenarios for adding information resources to the database, editing and deleting them, changing the order and level of nesting, changing the type of information resource, adding and changing categories and filters for content personalization.

[0094] 2. A content management system component that implements visual word processor scenarios, similar in functionality to traditional WYSIWYG solutions, which implements scenarios for adding text descriptions, style formatting, adding headings and lists of various nesting levels, images with the ability to download data locally and from the cloud, editing functions, and conforming to a common style for displaying content information.

[0095] 3. A component of the management system that implements scenarios for adding markup elements and scripting language to information resources in source text editing mode using tools for visualizing blocks of displayed source code.

[0096] 4. A control system component that implements scenarios for connecting external services by specifying the network address of a resource to implement the functionality of displaying content from external information sources (settings depend on the specific service provider).

[0097] 5. A mobile application component for the iOS platform that implements scenarios for obtaining data and synchronizing it with local storage on the device by sending GET and POST requests to the JSON REST API, with the ability to personalize content based on the user's interests by specifying categories and filters.

[0098] 6. A mobile application component for the iOS platform, similar in functionality to the UlWebView system component, implementing scenarios for processing markup language and visual display of text and media content stored in the local database of the mobile device on a mobile device.

[0099] 7. A component of a mobile application for the iOS platform that implements scripts and supports the operation of a scripting language for the implementation of interactive elements and their interaction.

[0100] 8. A component of a mobile application for the iOS platform that implements scenarios for automatic video playback in the desired orientation of the mobile device display.

[0101] Thus, we quickly created and delivered a mobile app with a user management system. The delivered mobile app is ready for use, ready to implement the online newspaper scenario, and ready to be populated with user content.

[0102] By implementing the proposed method using an operator server, which implements the functionality of assembling ready-made software components using a single entry point, enabling the adaptation of any ready-made software components from the server's existing set of ready-made software components to each other and to the target platform, it is possible to create interconnected ready-made software components ready for unlimited deployment on the target platform. This also enables the rapid and repeated creation of mobile applications ready for unlimited deployment on the target platform, capable of implementing any scenario, running on any operating system, and written in any programming language.

[0103] It provides the ability to create mobile applications ready for deployment on target platforms and a system for supporting their operation with the ability to self-host deployment on one's own servers by modifying incoming data to the parameters of specific target devices, based on the software features of a specific target device.

[0104] The proposed method allows for the adaptation of software or codes to the parameters of specific target devices to ensure their correct execution on a given mobile device.

[0105] The proposed invention aims to create a method for deploying client-server solutions within a mobile application support system and ready-made mobile applications. Implementation of the proposed method enables the creation of a ready-made mobile application in the form of a software package adapted for deployment on the target platform, consisting of an application support system and mobile applications for the Android / AOSP and iOS target platforms.

[0106] The described method for creating a ready-to-use mobile application and delivering it to the user utilizes native development methods and eliminates the shortcomings of traditional mobile app development methods. The proposed invention utilizes a developed system for assembling and automatically deploying a mobile application, which represents a set of functionally implemented ready-to-use software components for producing a fully deployable mobile application in the form of a software package consisting of: Docker images pre-prepared for deployment on a VPS server running Ubuntu, a unified management system for both platforms (Android / AOSP and iOS), and a REST API; and pre-prepared and fully deployable mobile application packages for Android / AOSP and iOS operating systems, ready for publication in the Google Play and App Store app stores.It is possible to change the procedure for deploying the management system based on the final requirements of the launch environment and automation tools.

[0107] The claimed invention uses a developed method for exchanging data when establishing a connection using a key for exchanging data and connecting standard SSL security certificates to protect the information transfer channel between the application and the REST API.

[0108] The proposed method allows for the use of previously pre-installed configurations on the operator's server an unlimited number of times, significantly reducing the time spent on releasing ready-to-use mobile applications.

[0109] The proposed method allows for the creation of a ready-made mobile application and its transfer to the user, who can publish the mobile application in as little as one day and exercise full control over the selection of a platform for hosting and monitoring the security of information data without the use of third-party services for a similar purpose.

[0110] Ready-made mobile applications created using the proposed method are hosted on a personal account and are the personal responsibility of the account owner.

[0111] The proposed method allows for the creation of a ready-made mobile application and its transfer to the user, with the finished mobile application consisting of the following components:

[0112] 1. A server component for storing application data, a REST API for updating mobile application content in real time, and a web-based administrator interface. The implementation example is presented in the form of pre-prepared Docker images. Deployment is performed on the customer's (user's) VPS running the Ubuntu operating system using Docker Compose software and auxiliary installation packages from the official repository.

[0113] 2. A pre-prepared mobile application for the Android / AOSP operating system, ready for publishing on Google Play, in the form of an .apk installation package for standalone installation on a device and in the Android App Bundle format for publishing on Google Play. The customer (user) must have a valid Google Play developer account;

[0114] 3. A pre-prepared mobile application for the iOS operating system, ready for deployment in the App Store. The transfer occurs by transferring the mobile application to the customer's (user's) active Apple Developer account.

[0115] The finished mobile applications with a management system created by implementing the proposed method are fully functional and ready-to-use, but content-free, mobile applications for Android / AOSP and iOS platforms with a management system, which are customized by the customer (user) to meet specific requirements. The transferred mobile application and management system belong solely to the customer (user); all information content for the mobile applications is stored on the customer's server and is their sole responsibility.

[0116] The distribution package of a ready-made mobile application (software), based on the application requirements, may include various features. For example: machine translation of content, a personal mobile application user account, various social network elements for interaction between mobile application users in groups or private conversations, integration with external mapping services, sales of goods or services, inventory control and distribution, a payment system, etc. The availability and integration timeframe depend on the automation service used.

[0117] Thus, the proposed method allows for the rapid creation of any type of mobile application and its delivery to the user (customer). This is irrelevant to the operating system the mobile application will run on, the languages ​​it will be written in, the functionality it will implement, or the operational scenario it will support. The proposed method allows for the creation of any mobile application with a management system desired by the user (customer), without the need to identify any bugs, testing, or deficiencies, as the created mobile application is free of any defects and is fully operational.

[0118] The information provided in the description are examples that do not limit the scope of the present invention defined by the claims. A person skilled in the art will understand that there may be other embodiments of the present invention consistent with the essence and scope of the present invention. Using the proposed method, ready-made mobile applications were created, including 2 mobile applications for the iOS operating system: "Children about animals Zoogalaktika" https: / / apps.apple.com / ru / app / детям-о-животных- зоогалактикаЛб6477359007 and "Leonard's Recipes" https: / / apps.apple.sosh / gi / arr / рецепты-леонарда / 1д6478821710

[0119] Industrial applicability and efficiency of the proposed method have been proven.

Claims

Invention formula 1. A method for creating a mobile application with a mobile application management system and transmitting it to a user, implemented using an operator's server configured with the ability to receive an unlimited number of requests from the user to create a mobile application with a mobile application management system and an unlimited number of transmissions to the user of a ready-made mobile application with a mobile application management system that has its own operating scenario on any operating system, wherein the operator's server contains an assembly interface, a plurality of ready-made software components and a single entry point for processing the parameters of a plurality of ready-made software components, configured with the ability to adapt to each other a plurality of ready-made software components operating on any operating systems and written in any programming languages ​​and with the ability to adapt to the specified mobile application management system,wherein each ready-made software component from the specified set implements its own scenarios for the operation of the mobile application and has an architecture and a set of instructions designed with the ability to interact with other ready-made software components from the specified set of ready-made software components, with the ability to interact with the specified mobile application management system and with the ability to integrate with any operating system, while with the help of the operator's server, a signal is received from the user containing a request for the creation of a mobile application, which includes information about the scenario for the operation of the mobile application, with, with the help of the operator's server, the signal received from the user is processed and ready-made software components are selected that correspond to the operating scenario of the mobile application specified in the user's request; with the help of the assembly interface, the selected ready-made software components are assembled, and also they are configured, adapted and integrated with each other, with the specified mobile application management system and with the operating system; with the help of the operator's server, a ready-made mobile application is created from the assembled ready-made software components, which includes a control panel for the ready-made mobile application, a data exchange key in the form of a command built into the assembled ready-made software components, as well as a binary data package corresponding to the operating scenario of the mobile application specified in the request received from the user and designed with the possibility of deployment on the user's operating system,wherein the data exchange key is configured to enable interaction between the user's server and the ready-made mobile application to obtain user content; with the help of the operator's server, the ready-made mobile application with the mobile application management system is transferred to the user for subsequent deployment by the user on the operating system and the implementation of the mobile application operating scenario.

2. The method according to paragraph 1, in which the signal from the user received by the operator's server additionally contains a set of operating parameters for the mobile application, and the finished software components have settings files, and when assembling the finished software components, a comparison of the set is carried out operating parameters of the mobile application with the parameters of the ready-made software components stored in the settings files, and entering into the settings files data corresponding to the operating parameters of the mobile application.

3. The method according to paragraph 1, in which an operator server is used, which is represented by the GitLab source code base repository management system, server environment deployment scenarios using Ansimble software with integration into the GitLab source code base repository management system using the REST API or WebSocket technology to obtain a set of operating parameters for the mobile application.

4. The method according to claim 1, wherein the binary data package is a Docker container that stores pre-assembled and compiled binary executable files, auxiliary libraries, auxiliary resources, functional parameters and server environment settings from a set of source texts of ready-made software components.

5. The method according to item 1, which uses an operator server that includes a graphical user interface, a set of pre-configured executable scripts of operating system commands, a system for assembling a software package in the Linux Ubuntu environment using the Docker containerization system, Android Studio, SDK tools, Gradle Build Tool, Docker-compose, Bash scripting, Xcode targets, PostgreSQL, Firebase Cloud Messaging, source codes for modifying and assembling Docker images of the web interface and REST API of the pre-configured administrative panel, source codes for modifying and assembling pre-configured configured mobile application for Android / AOSP and iOS platforms.

6. The method according to paragraph 4, in which the preliminary assembly and compilation of binary executable files from a set of source texts of ready-made software components is carried out by means of the Golang development environment, while the installation and launch of binary executable files, auxiliary libraries and auxiliary resources is also carried out by means of the Golang development environment.

7. The method according to paragraph 1, in which the signal from the user additionally contains information about the mobile application being created, which is integrated during the assembly of ready-made software components, using tools for translating input parameters of various formats to the uniform standards of the operating system used.

8. The method according to paragraph 1, in which the binary data packet of the finished mobile application transmitted to the user is designed with the ability to implement the operating scenario of the mobile application without using the resources of the operator’s server.

Citation Information

Patent Citations

  • Software application development tool

    RU2651883C2

  • Container packaging device

    US11062022B1

  • Systems and methods for a mobile application development and deployment platform

    US20120260232A1

  • Systems and methods for a specialized application development and deployment platform

    US20130305218A1

  • System integrating a mobile device application creation, editing and distribution system with a website design system

    US20200401648A1