Multi-Android System Switching via Virtual Input Device

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing multi-user mode in Android systems is high-coupling and low-security, leading to privacy data leakage and poor compatibility, as third-party applications can easily inject code to access sensitive information.

Innovation Solution

Implementing a multi-Android system method that supports single system and multi-system multi-user modes by using a switching interface to select Android systems, controlling the driver layer to switch between systems, and employing a virtual input device to read and send data securely, without exposing user-level interfaces to prevent third-party access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a native multi-user mode is implemented by modifying interfaces and adding driver interfaces, then multi-user operation is enabled, but security deteriorates due to easy code injection by third-party applications

Engineering Contradiction:
Improvemulti-user operation capabilityVSAvoidsecurity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system is segmented into multiple independent Android system instances, each with its own user space and data isolation. The kernel layer is separated from the user layer, with the kernel managing multiple Android instances through virtualization mechanisms, ensuring that third-party applications cannot inject code across system boundaries.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Multiple Android systems are nested within a single kernel environment, with each Android instance containing its own application layer, system services, and user data. This nested structure allows independent security contexts while sharing underlying hardware resources through the kernel.

Inventive Principle:
Principle #7Nested doll (Nesting)

2Ease of manufacture

If a privacy mode is implemented with simple restrictions, then implementation simplicity is maintained, but compatibility with multi-user mode deteriorates

Engineering Contradiction:
Improveimplementation simplicityVSAvoidmulti-user mode compatibility
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The kernel layer provides universal multi-user support that works across all Android instances, enabling both simple privacy mode restrictions and full multi-user mode compatibility through a unified underlying mechanism that handles both use cases.

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

3Ease of operation

If interfaces are exposed for third-party application access, then ease of operation is improved, but security deteriorates due to potential data leakage

Engineering Contradiction:
Improveapplication accessibilityVSAvoiddata security
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The kernel layer acts as an intermediary between Android systems and hardware resources, mediating all access requests through controlled interfaces. This intermediary layer enforces security policies while maintaining ease of operation for authorized applications through standardized access mechanisms.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11314894B2Multi-android system implementation method, non-transitory computer-readable storage medium, and terminal
Publication Date: 2022.04.26 HUIZHOU TCL MOBILE COMM CO LTD
  • US11314894B2 patent drawing
  • US11314894B2 patent drawing
  • US11314894B2 patent drawing

AI summary

The present disclosure provides a multi-Android system implementation method, a non-transitory computer-readable storage medium, and a terminal provided. The method may include the following operations: starting a switching interface for a user to select any one of Android systems, when a terminal receives a user operation instruction; sending control information of an operating system to a driver layer, when the switching interface detects the any one of Android systems selected or created by the user; controlling a foreground program by the driver layer, to switch to the any one of the Android systems selected or created by the user; reading data from a virtual input device by the any one of the Android systems, and sending the data to an application in an own environment of the any one of Android systems.