Mobile App Compatibility Testing via Static Dependency Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for determining mobile application suitability are limited by reliance on manifest data, which can be falsified or incomplete, and do not perform dynamic analysis, leading to potential compatibility issues with hardware and software features on user devices.
Innovation Solution
Implementing a method that extracts mobile application suitability features by performing dependency analysis in the open package format context, interpreting results for OS compatibility and additional suitability metrics, and accumulating results in a dictionary to track hardware and software interfaces, beyond just manifest data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If manifest data is used to determine mobile application suitability, then the process is simple and fast, but the accuracy is low because the manifest can be falsified or incomplete
Solution Approach 1:
The patent performs preliminary dependency analysis on the application package before installation to extract actual hardware and software requirements. This preliminary action reveals the true dependencies embedded in the application code, preventing reliance on potentially falsified manifest data and enabling accurate compatibility assessment before deployment
Solution Approach 2:
The patent replaces the manual/declarative manifest-based approach with an automated static analysis system that programmatically examines application code, libraries, and resources. This substitution uses computational methods to automatically discover dependencies and generate accurate compatibility requirements without human intervention
2Reliability
If static analysis of package contents is performed, then dependency information can be extracted, but dynamic behavior and runtime compatibility cannot be assessed
Solution Approach 1:
The patent performs preliminary static analysis to extract dependency information from application code, resources, and libraries before runtime. This preliminary extraction of hardware and software requirements enables compatibility assessment without requiring actual execution, saving time while maintaining reliability
Solution Approach 2:
The patent introduces an intermediary analysis layer that processes application packages to generate a compatibility profile. This intermediary step creates a simplified representation of application requirements that can be quickly evaluated against device capabilities, bridging the gap between detailed static analysis and rapid compatibility checking
3Measurement precision
If comprehensive dependency analysis is performed on all package contents, then accuracy improves, but the processing time and computational resources increase
Solution Approach 1:
The patent segments the application package into distinct components (code, resources, libraries, manifests) and analyzes each segment separately using appropriate methods. This segmentation allows targeted analysis of only relevant portions, improving accuracy while reducing overall processing time compared to analyzing the entire package uniformly
Solution Approach 2:
The patent performs partial analysis by focusing on key components that most significantly impact compatibility, such as binary code for hardware dependencies and resource files for software requirements. By analyzing only the most critical portions rather than every detail, the system achieves sufficient accuracy while maintaining high productivity
Data Source
AI summary
Application compatibility testing for mobile applications enables enterprises to improve the extraction of mobile application suitability features (MASFs) from an App using techniques other than reading the package's manifest. In addition to performing dependency analysis in the open package format context, embodiments of the invention interpret the analysis results in the context of mobile devices where, in addition to binary, i.e. go/no go, OS compatibility, there is compatibility testing for other suitability metrics, such as enterprise policy compliance and device capability and/or compliance. A MASF results dictionary keeps track of the various identified hardware and software interfaces of the App.


