Android App Virtual Environment via Proxy Components

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Android devices face challenges in implementing effective security measures such as data encryption, behavior monitoring, and real-time virus scans due to their operating system limitations, which restrict access to application files and behavior monitoring, and existing virtualization solutions are resource-intensive and not universally applicable.

Innovation Solution

A lightweight virtual environment is created using a standard Android application package (APK) that allows for the modification and control of installed applications, enabling data isolation, behavior monitoring, and URL filtering without requiring powerful hardware or significant performance impact, by loading and executing applications within a security application context and using proxy components to manage API calls.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If virtualization technology is implemented on Android devices to provide separate work environments, then security isolation is improved, but system performance deteriorates due to limited computing power and memory

Engineering Contradiction:
Improvesecurity isolationVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent introduces a virtual environment application as an intermediary layer between the Android OS and target applications. This mediator provides security isolation through proxy components that intercept and control API calls, while allowing applications to run in their original environment without the overhead of full virtualization. The proxy component acts as a lightweight gateway that enforces security policies without requiring complete system virtualization.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

Instead of creating full virtual copies of the operating system, the patent modifies application package files (APKs) to include proxy components that are copied into the application bundle. These proxy components are lightweight copies of security enforcement mechanisms that run alongside the original application code, providing isolation without duplicating the entire system stack.

Inventive Principle:
Principle #26Copying

2Difficulty of detecting and measuring

If system-level or kernel-level access is obtained to implement security monitoring, then behavior monitoring capability is improved, but ease of manufacture deteriorates due to requiring close collaboration with telephone manufacturers

Engineering Contradiction:
Improvebehavior monitoring capabilityVSAvoiddeployment complexity
Core Design Contradiction:
Difficulty of detecting and measuringVSEase of manufacture

Solution Approach 1:

The patent enables applications to self-modify by including proxy components within their own package files. The security monitoring capability is achieved without requiring external system-level access or manufacturer collaboration. The application itself provides the monitoring infrastructure through its modified package, making the system self-sufficient and universally deployable across different Android devices.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Instead of obtaining system-level access to monitor applications (traditional approach), the patent inverts the approach by having applications include their own monitoring proxies within their package files. This reverses the hierarchy, allowing applications to self-monitor without requiring privileged system access, thereby simplifying deployment while maintaining monitoring capability.

Inventive Principle:
Principle #13The other way round (Inversion)

3Reliability

If application package files are modified to enable security control, then security features are improved, but device complexity increases due to code insertion and repacking processes

Engineering Contradiction:
Improvesecurity featuresVSAvoidpackage modification complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges the security proxy components with the original application code by including them within the same package file structure. The proxy components are combined with the application's manifest and resource files, creating a unified package that requires only standard installation procedures. This merging eliminates separate deployment steps and reduces the perceived complexity for end users.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS8887152B1Android application virtual environment
Publication Date: 2014.11.11 TREND MICRO INC
  • US8887152B1 patent drawing
  • US8887152B1 patent drawing
  • US8887152B1 patent drawing

AI summary

The behavior of an installed application within the Android device is modified. The program code is modified to allow a security application to load and run the application within its own context. The modified program code is repacked into a modified APK file, executed within the context of the security application. A component within a target application includes APIs for starting other components. These APIs are modified to use a new intent object which points to a proxy component. A modified target application is executed. The security application loads the target application into memory without installing it. The security application includes a component of each type and creates a proxy component instance for each component in the target application. A proxy component under control of the security application is created for each component within the target application. The target application is executed under the control of the security application.