android: apk_native_libs.py: New Python helper functions.
This CL introduces a new Python script providing various functions to make it easier to parse Android APK files for symbolization, i.e.: - ApkReader: convenience class to read the content of an APK, especially information related to uncompressed native shared libraries. Mostly useful because it can be easily mocked for unit-testing purpose. - ApkNativeLibrariesMap: convenience class to build a map of native shared libraries contained in an APK. - ApkLibraryPathTranslator: convenience class used to translate on-device APK file paths and offsets (as found in stack traces or tombstones) into a virtual device library path + offset. + Add unit-tests for all features. + Add a small apk_lib_dump.py script used to dump the list of uncompressed native libraries inside an APK and their file start/end offsets and sizes. This is mostly useful for debugging symbolization issues. NOTE: This is a partial rewrite of the corresponding code from the following patch, which shows how this will be used in the future to better symbolize tombstones: https://chromium-review.googlesource.com/c/chromium/src/+/1034054 BUG=755225 R=agrieve@chromium.org, jduborick@chromium.org, pasko@chromium.org, lizeb@chromium.org Change-Id: If71e0048fa88c859e5f256d8c960134b6b88d06f Reviewed-on: https://chromium-review.googlesource.com/1047211 Commit-Queue: David Turner <digit@chromium.org> Reviewed-by:Egor Pasko <pasko@chromium.org> Reviewed-by:
agrieve <agrieve@chromium.org> Cr-Commit-Position: refs/heads/master@{#576193}
Showing
This diff is collapsed.
This diff is collapsed.
Please register or sign in to comment