{"id":21644596,"url":"https://github.com/samsung/adbi","last_synced_at":"2025-04-06T22:07:33.344Z","repository":{"id":78613124,"uuid":"50975191","full_name":"Samsung/ADBI","owner":"Samsung","description":"Android Dynamic Binary Instrumentation tool for tracing Android native layer","archived":false,"fork":false,"pushed_at":"2023-04-07T10:41:11.000Z","size":588,"stargazers_count":307,"open_issues_count":7,"forks_count":78,"subscribers_count":40,"default_branch":"master","last_synced_at":"2025-03-30T19:11:36.830Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Samsung.png","metadata":{"files":{"readme":"README","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-02-03T05:00:31.000Z","updated_at":"2025-03-27T20:49:30.000Z","dependencies_parsed_at":"2024-11-25T06:31:16.819Z","dependency_job_id":null,"html_url":"https://github.com/Samsung/ADBI","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Samsung%2FADBI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Samsung%2FADBI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Samsung%2FADBI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Samsung%2FADBI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Samsung","download_url":"https://codeload.github.com/Samsung/ADBI/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247557767,"owners_count":20958047,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-25T05:41:26.873Z","updated_at":"2025-04-06T22:07:33.327Z","avatar_url":"https://github.com/Samsung.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"Android Dynamic Binary Instrumentation (ADBI) is a tool for dynamically tracing Android native layer. Using this tool you can insert tracepoints (and a set of corresponding handlers) dynamically into the process address space of a running Android system. When the tracepoint is hit your custom handler (which can be written in C) is executed. You can deliver your own code through the handlers. It is possible to access process variables and memory. Host side tool written in Python communicates with the native adbiserver process (which resembles the gdb-server in its operation) and translates source level symbols into addresses within the final binaries. As of authors knowledge this is a first such tool for ARM (including ARM64) architecture.\r\nADBI tool was developed in Samsung Poland R\u0026D Center located in Warsaw, Poland as a research project for new development tools and process improvement.\r\n\r\nSample features:\r\nGenerates function trace from Android native user space\r\nAllows for dynamically driven trace configuration\r\nCan measure time between instructions for profiling\r\nInjects custom code into running process\r\nCan modify and reimplement running native applications\r\n\r\nBenefits:\r\nNo recompilation of debugging application is needed\r\nCan see what exactly happens in Android native layer\r\nFinding problem areas, tracking down strange bugs more manageable\r\nBetter system knowledge, faster product delivery\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsamsung%2Fadbi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsamsung%2Fadbi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsamsung%2Fadbi/lists"}