Abstract:
Disclosed are various embodiments for developing versions of applications based on application fingerprinting. For example, an application may be ported from one operating system platform to another, or an application may be modified to be compatible with a specific device. In one embodiment, an application fingerprint is received for an application. The application fingerprint may be generated based at least in part on a static analysis of the application and a dynamic analysis of the application. A device that is incompatible with the application based at least in part on the application fingerprint may be determined. A modification to the application to make the application compatible with the device may be determined.
Abstract:
In various embodiments, static, dynamic, and behavioral analyzes may be performed on an application. A set of software libraries employed by the application may be determined. A set of device resources employed by the application may be determined. An application fingerprint is generated for the application. The application fingerprint encodes identifiers for the set of software libraries and identifiers for the set of device resources. Improvements can be recommended based upon an analysis of the application fingerprint.