Cross-Platform Software Payload Distribution via Device Mesh
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current systems lack the ability for cross-platform and cross-architecture distribution, removal, sharing, and synchronization of software payloads, making it difficult to update or share applications across different devices, especially those not constantly connected to the Internet, such as vehicle navigation systems or remote sensors.
Innovation Solution
A system where devices can act as separate payload delivery systems, allowing software packages with segments for multiple architectures to be downloaded from an application store, shared, and synchronized across devices, even those not connected to the Internet, using a network of registered devices for delivery and updating.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If software is downloaded from an application store for a specific architecture, then the software can be loaded and executed on that platform, but it cannot be shared or distributed to devices with different architectures or platforms
Solution Approach 1:
The software package is segmented into multiple architecture-specific portions, where each portion contains code adapted for a specific device architecture. The system downloads a single package containing all segments and selectively loads only the appropriate portion for the current device architecture, enabling cross-platform distribution without requiring separate downloads for each platform.
Solution Approach 2:
A single software package is designed to serve multiple device architectures and platforms universally. The package contains code portions that can be loaded on different platforms (iOS, Android, Windows, macOS, Linux, embedded systems), allowing one package to function across diverse environments without requiring platform-specific separate distributions.
2Reliability
If devices are not constantly connected to the Internet, then they can operate independently, but they become difficult to update because there is no easy way to connect them to an application store
Solution Approach 1:
An already-updated device acts as an intermediary or mediator to transfer software packages to devices that are not constantly connected to the Internet. The updated device downloads the package from the application store while connected, stores it locally, and then transfers it via direct connection (USB, Bluetooth, Wi-Fi Direct) to the offline device, enabling updates without requiring the offline device to have direct Internet access.
Solution Approach 2:
The software package is downloaded and prepared in advance on a device that has Internet connectivity. This preliminary action allows the package to be ready for transfer to offline devices when they need updates, eliminating the need for offline devices to connect to the Internet at the moment of update requirement.
3Reliability
If application stores target specific platforms, then they can optimize for that platform, but specialized or new devices with few users experience a critical mass problem and have difficulty encouraging application stores and developers to target these less widely-used platforms
Solution Approach 1:
The application store system is designed to support multiple platforms and device types through a universal package format. By enabling a single package to target multiple architectures (mobile, desktop, embedded, specialized devices), the system eliminates the need for separate store optimizations for each platform, allowing even specialized or new devices with small user bases to access and receive software updates.
Data Source
AI summary
Multiple devices having different architecture or platforms may be supported by the same application store. The related devices are used to synchronize the state of each device in a group, such as all the devices owned or used by a particular user. The devices themselves are used as separate payload delivery systems that are capable of sharing software, such as new or updated applications and operating systems, among the different types of devices in the group. A software payload may be created by a server that contains software for more than one device's architecture. They payload may include segments targeted for different platforms or architectures. Once the payload is loaded on one device, that device can then send the payload to the other devices within the group. Each device that receives the payload uses the appropriate software segment for its particular architecture or platform.


