Federated Service Layer for Dynamic Application Binary Switching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Developing mobile applications that are compatible across various operating system versions is challenging due to the need for separate development for each version, leading to increased effort and complexity.
Innovation Solution
A federated service layer dynamically generates and deploys application binaries compatible with different operating system versions by parsing and modifying the application code to enable or disable features based on the target OS, using switch flags to ensure compatibility without requiring additional human intervention.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If an application is developed for a latest version of an operating system, then the application can support newer features and functionalities, but the application may not be compatible with earlier versions of the operating system
Solution Approach 1:
The patent segments the application code into feature modules that can be independently enabled or disabled based on the target operating system version. Each feature is associated with version information, allowing the application to selectively include or exclude features during compilation for different OS versions, thereby achieving version-specific compatibility without manual redevelopment.
Solution Approach 2:
The patent performs preliminary analysis of application code to identify features and their associated operating system version requirements before compilation. This advance preparation allows the system to automatically generate appropriate compilation configurations for different OS versions, eliminating the need for developers to manually adapt code for each version.
2Adaptability or versatility
If an application is developed to be compatible with a complete set of earlier versions of the operating systems, then the application can support all versions, but the development effort is directly proportional to the number of versions
Solution Approach 1:
The patent implements a self-service system where the compilation framework automatically analyzes application code, identifies features, determines compatible operating system versions, and generates multiple version-specific binaries without human intervention. This automation eliminates the need for developers to manually create and maintain separate versions for each operating system version.
Solution Approach 2:
The patent changes the parameter of compilation by dynamically associating feature modules with specific operating system version parameters. The system automatically adjusts which features are included or excluded based on the target OS version, allowing a single application codebase to serve multiple versions through parameter-driven compilation rather than requiring separate development efforts.
3Reliability
If separate development is performed for each operating system version, then compatibility for each version can be ensured, but the development time and resources increase significantly
Solution Approach 1:
The patent merges the development process for multiple operating system versions into a single unified compilation process. By combining feature analysis, version compatibility determination, and binary generation into one automated workflow, the system produces multiple version-specific binaries from a single application codebase, significantly reducing development time while maintaining version-specific compatibility.
Solution Approach 2:
The patent introduces an intermediary compilation framework that acts as a mediator between the application code and multiple operating system versions. This framework automatically handles the complexity of version-specific adaptations by analyzing code features, determining compatibility, and generating appropriate binaries, thereby eliminating the need for developers to directly engage in time-consuming version-specific development work.
Data Source
AI summary
An application binary is received at an intermediate federated service layer before deployment of the application binary at the application store. At the intermediate federated service layer multiple copies of application binaries are generated concurrently. At the intermediate service layer, program code of the copies of application binaries is concurrently parsed and features of copies of application binaries are matched with features of operating system. If the features match, corresponding program codes are flagged to switch off, and re-generated as custom application binary and deployed in application store. The custom application binary and a container along with features corresponding to operating system of a mobile device are downloaded to a mobile device. A request to access a set of features is received from the custom application binary at the container. If the set of features match the features of the operating system request is allowed through the container else it's blocked.


