Mobile Shell Widget Proxy for Cross-Platform Deployment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Developing and maintaining software applications across different computing platforms is time-consuming due to the need for platform-specific code, leading to increased developer effort and complexity, especially when applications require custom logic and user interfaces tailored to various devices.
Innovation Solution
A mobile shell that allows native and platform-agnostic widgets to execute within a native environment, using a runtime container with common services like activity logging and analytics, and a widget API for loading and unloading widgets, enabling a unified user experience across platforms through modular UI components.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If platform-specific code monoliths are used to build applications for different platforms, then applications can be tailored to specific devices with custom logic and user interfaces, but the difficulty and time required to develop and maintain applications increases significantly
Solution Approach 1:
The patent divides the application into separate modules: a platform-agnostic core application and platform-specific adapter layers. This segmentation allows the core logic to remain simple and reusable across platforms, while customization is achieved through modular adapters rather than complex monolithic codebases.
Solution Approach 2:
The patent creates a universal application core that can run on multiple platforms without modification. This core application provides common functionality that serves all platforms, reducing the need for separate codebases and simplifying maintenance while still allowing platform-specific adaptations through standardized interfaces.
2Adaptability or versatility
If multiple versions of the same application are built for different devices and workflow variations, then each device's specific requirements can be met, but the amount of developer time needed to build and maintain applications increases
Solution Approach 1:
The patent implements a single universal application core that handles multiple workflow variations through configuration rather than separate codebases. This allows developers to maintain one codebase that serves multiple purposes and platforms, significantly improving productivity while maintaining adaptability to different workflow requirements.
Solution Approach 2:
The patent uses parameter-based configuration to adapt the application to different workflows and platforms. Instead of writing separate code for each variation, the system changes runtime parameters and configuration settings to accommodate different scenarios, reducing developer effort and maintenance overhead.
3Productivity
If common code components are modified to support new functionality, then applications can be updated with new features, but developers must verify that modifications do not adversely affect existing applications
Solution Approach 1:
The patent segments the codebase into isolated modules with well-defined interfaces. When common code components need modification, changes are confined to specific modules without affecting other parts of the system. This modular architecture allows for safer updates and easier verification of modifications.
Solution Approach 2:
The patent introduces adapter layers and interface definitions that act as intermediaries between the core application and platform-specific implementations. This allows modifications to be made in isolated adapter modules without directly impacting the core application logic, maintaining stability while enabling updates.
4Productivity
If a unified application architecture is used across platforms, then development and maintenance time is reduced, but platform-specific optimizations and customizations may be limited
Solution Approach 1:
The patent creates a universal application core that provides platform-agnostic functionality, improving development efficiency. Simultaneously, it incorporates standardized adapter interfaces that enable platform-specific optimizations and customizations without compromising the unified architecture's benefits.
Solution Approach 2:
The patent applies the principle of local quality by allowing platform-specific adaptations only in designated adapter modules while keeping the core application unified. This enables targeted optimizations for specific platforms without requiring changes to the entire codebase, maintaining both efficiency and adaptability.
Data Source
AI summary
This disclosure relates to cross-platform applications that include native and non-native components on mobile devices. An exemplary method generally includes receiving a first workflow step definition including a first set of widgets to be loaded into an application shell. A mobile shell identifies a type of each widget in the first set of widgets (e.g., native or platform-agnostic) and loads each widget into the mobile shell based on the widget type. For a platform-agnostic widget, the mobile shell creates a platform-agnostic widget proxy service, which provides a runtime environment. The platform-agnostic widget may be loaded into the platform-agnostic widget proxy service and executes in the runtime provided thereby.


