Code Conversion System for Cross-Platform Compatibility

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software applications are often not compatible across different computing platforms due to differences in APIs and runtime libraries, making it difficult for developers to distribute their applications across various mobile devices and operating systems without significant modifications.

Innovation Solution

A system and method for program code conversion that automatically converts code sequences targeting one platform to be compatible with another platform through static or dynamic code conversion, or by using an abstraction layer, allowing applications to execute on multiple platforms with minimal developer effort.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If developers create applications for one specific computing platform, then the application can be optimized for that platform's specific APIs and runtime libraries, but the application cannot be executed on other platforms without significant modification

Engineering Contradiction:
Improvecross-platform compatibilityVSAvoidcode modification complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a code conversion system that acts as an intermediary between the application code and the target platform. This converter automatically translates code sequences from a source platform to a target platform, eliminating the need for manual code modification and enabling cross-platform execution without requiring developers to understand multiple platform-specific APIs

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The code conversion process is performed in advance before the application is executed on the target platform. By pre-converting the code sequences to match the target platform's API conventions, the system prepares the application beforehand, allowing it to run natively on the target platform without runtime overhead or platform-specific modifications

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If developers manually modify applications for each platform, then cross-platform compatibility can be achieved, but the development time and effort increase significantly

Engineering Contradiction:
Improvecross-platform compatibilityVSAvoiddevelopment time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The code conversion system performs automatic translation of code sequences without requiring developer intervention. The system identifies platform-specific code patterns and automatically transforms them into equivalent target platform code, enabling the application to adapt to different platforms autonomously and eliminating time-consuming manual modification processes

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The conversion system changes the parameters and structure of code sequences to match the target platform's requirements. By automatically adjusting API calls, data types, and runtime library references according to the target platform's specifications, the system enables rapid adaptation across platforms without manual reconfiguration

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9823909B1Program code conversion for cross-platform compatibility
Publication Date: 2017.11.21 AMAZON TECH INC
  • US9823909B1 patent drawing
  • US9823909B1 patent drawing
  • US9823909B1 patent drawing

AI summary

Methods and systems for program code conversion for cross-platform compatibility are disclosed. A plurality of original function calls are identified in an original program. The original program is targeted to a first platform, and the original function calls comprise invocations of a plurality of functions implemented on the first platform. It is determined whether individual ones of the original function calls correspond to alternative function calls in an index. For the original function calls that correspond to the alternative function calls in the index, the original function calls are replaced with corresponding alternative function calls in a modified program. The modified program is targeted to a second platform, and the alternative function calls comprise invocations of a plurality of functions implemented on the second platform.