# canyie/pine

Dynamic java method hook framework on ART. Allowing you to change almost all java methods' behavior dynamically.

Repository: https://github.com/canyie/pine
Canonical: https://ross.abutalabs.com/products/canyie-pine
Language: Java
License Family: other
Topics: android, art, hook, aop, aop-framework, xposed, java-hook, hook-framework, hooking, art-runtime
Last push: 2025-11-08T08:00:23+00:00

## Health v2 (maintenance only)
Score: 55/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 51, release rhythm 35, longevity 100
- inputs: {"age_days": 2320, "days_push": 298, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases, no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1528, forks 280 (observed 2026-08-28T04:04:58.642969+00:00)

## What it is
Pine is a dynamic Java method hooking framework for the Android ART runtime, allowing interception and modification of almost any Java method call within the current process. It supports Android 4.4 through 15 on thumb-2/arm64 architectures and offers Xposed-style hooking and module loading.

## Use cases
- hook java methods on android at runtime
- monitor activity lifecycle calls in an android app
- intercept thread creation and destruction for debugging
- bypass android ui thread checks to modify views off the main thread
- load xposed modules without root
- build an aop framework on android
- disable hidden api restrictions on android 9+

## When to choose
- you need dynamic java method hooking on ART without root
- you want Xposed-style hooking or to run Xposed modules in-process
- you target a wide range of Android versions from 4.4 to 15 on arm devices

## When to avoid
- you need to hook native (C/C++) methods rather than Java methods
- you target x86/x86_64 devices or non-ART Dalvik runtimes
- you need resource hooking or other unsupported Xposed features
- you require a permissively licensed dependency, as it uses the Anti-996 license

## Facets
- artifact type: library
- maturity: active
- function: security, developer-tools, middleware
- domain: android-tools, developer-tools, reverse-engineering
- platform: -
- tags: android, art-runtime, method-hooking, xposed-compatible, aop, java-hooking

## Member repositories
- canyie/pine (main) score 55

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:58.642969+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:31:30.534691+00:00, confidence not recorded.
  - readme: https://github.com/canyie/pine (fetched 2026-08-28T04:04:58.642969+00:00, sha cbcc8832ca04)
- Data as of 2026-08-30T08:39:29.467469+00:00.
