PWA Plug-in Bridge for Native Code Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Progressive web applications (PWAs) face challenges in accessing native code functionality on mobile devices without requiring distribution through application stores, which complicates updates and compromises the advantages of PWA simplicity and flexibility.

Innovation Solution

Implementing a plug-in bridge and native plug-ins within a PWA framework that allows PWAs to invoke native code on different mobile operating systems using the same invocations, enabling proprietary code distribution in executable form and facilitating updates without store involvement.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If PWAs access native code functionality through traditional methods, then native functionality is achieved, but distribution complexity increases and updates require application store involvement

Engineering Contradiction:
Improvenative code functionalityVSAvoiddistribution process
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a plug-in bridge as an intermediary component that enables communication between the PWA and native code. The bridge acts as a mediator that translates web application requests into native code invocations, allowing the PWA to access native functionality without direct integration or complex distribution processes. This resolves the contradiction by providing native code access while maintaining the simplicity of web-based distribution.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If PWAs are updated through application stores, then updates are managed, but the advantage of PWA simplicity and flexibility is compromised

Engineering Contradiction:
Improveupdate managementVSAvoidPWA simplicity
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent segments the PWA into distinct functional components: the web-based PWA itself and separate native plug-ins. This segmentation allows the PWA to be updated independently through standard web hosting mechanisms, while native functionality is provided through separately distributed plug-ins. This resolves the contradiction by enabling update management without requiring application store involvement, preserving PWA simplicity while achieving reliable updates.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If proprietary code is embedded in PWA, then functionality is achieved, but code visibility and discoverability increase

Engineering Contradiction:
ImprovefunctionalityVSAvoidcode protection
Core Design Contradiction:
Adaptability or versatilityVSLoss of information

Solution Approach 1:

The plug-in bridge serves as an intermediary that hides the proprietary native code from the PWA and end users. The bridge exposes only necessary interfaces to the PWA while keeping the implementation details of native plug-ins concealed. This resolves the contradiction by providing full functionality through native code while protecting proprietary information from easy discovery, as the actual native code remains separate and not directly visible in the web application.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11714663B2Application environment that implements native code functionality in progressive web applications
Publication Date: 2023.08.01 RED HAT INC
  • US11714663B2 patent drawing
  • US11714663B2 patent drawing
  • US11714663B2 patent drawing

AI summary

An application environment that implements native code functionality in progressive web applications. An application executing in a mobile device operating system of a mobile device, the application comprising a plug-in bridge and a first native plug-in, loads a first progressive web application (PWA) from a host device that hosts the first PWA. The first PWA invokes the first native plug-in via the plug-in bridge to implement a first operation on the mobile device.