Cross-Platform Software Payload Distribution via Device Mesh

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvecross-platform software distributionVSAvoidseparate software packages for each platform
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #6Universality (Multi-functionality)

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

Engineering Contradiction:
Improveoffline device operationVSAvoidsoftware update capability
Core Design Contradiction:
ReliabilityVSEase of operation

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

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.

Inventive Principle:
Principle #10Preliminary action

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

Engineering Contradiction:
Improveplatform-specific optimizationVSAvoidsupport for specialized and new devices
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

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.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10031737B2Downloading and distribution of applications and updates to multiple devices
Publication Date: 2018.07.24 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10031737B2 patent drawing
  • US10031737B2 patent drawing
  • US10031737B2 patent drawing

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.