{
  "added_at": "2026-11-06",
  "category": "android",
  "description_en": "Sandwitcher instruments Java and Kotlin method calls in Android apps by replacing ART method entry points with a trampoline through Pine and LSPlant. Its AAR exposes callbacks before and after the original call to inspect or change arguments and results and inspect thrown exceptions; it also includes a demo application.",
  "description_zh": "Sandwitcher 通过 Pine 和 LSPlant 在运行时以跳板替换 ART 方法入口，对 Android 应用中的 Java 和 Kotlin 方法调用进行插桩。其 AAR 提供原方法调用前后的回调，可检查或修改参数与返回结果、查看抛出的异常，并附有演示应用。",
  "entry_url": "https://awesomerea.org/resources/sandwitcher/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/sandwitcher/",
  "evidence_url": "https://github.com/IR0NBYTE/Sandwitcher/blob/48f73f26dbcecadb5d71c2993a384e2172fa564f/README.md",
  "group": "tools",
  "id": "sandwitcher",
  "json_url": "https://awesomerea.org/resources/sandwitcher/record.json",
  "kind": "tool",
  "markdown_url": "https://awesomerea.org/resources/sandwitcher/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/sandwitcher/index.md",
  "name": "Sandwitcher",
  "name_zh": "Sandwitcher Android ART 方法钩子库",
  "record_type": "resource",
  "relationship": "foundation",
  "requirement_facets": [
    "prerequisites",
    "scope",
    "license"
  ],
  "requirements": [
    "Android and the AAR integration are required; building from source needs JDK 17 and Android SDK 35.",
    "The README lists Android 5.0 through 15 compatibility.",
    "Apache License 2.0."
  ],
  "requirements_zh": [
    "需要 Android 环境并集成 AAR；从源码构建需 JDK 17 和 Android SDK 35。",
    "README 列出的兼容范围为 Android 5.0 至 15。",
    "采用 Apache License 2.0。"
  ],
  "targets": [
    "app"
  ],
  "url": "https://github.com/IR0NBYTE/Sandwitcher",
  "verification": "source-reviewed",
  "verified_at": "2026-11-06"
}
