최근 수정 시각 : 2025-11-19 12:02:11

Xposed



1. 개요2. 역사
2.1. 1세대 (Xposed)2.2. 2세대 (EdXposed, LSPosed)
3. 사용법
3.1. 루팅 없이 사용
4. 관련 문서

1. 개요

Xposed는 Android 애플리케이션의 동작을 수정할 수 있게 해주는 루팅된 단말용 프레임워크이다.

2. 역사

2.1. 1세대 (Xposed)

Xposed는 XDA Developers의 rovo89가 처음 공개했다. 시스템 모딩이 활발하던 안드로이드 초창기 환경에서 apk 파일의 직접 수정 없이도 모듈 설치로 앱의 동작을 바꿀 수 있다는 것은 혁명과도 같은 사건이었다.

Xposed가 공개되었을 때가 운없게도 Dalvik에서 안드로이드 런타임(ART)으로 전환하던 과도기였기 때문에 꽤 장기간 4.4/5.0 버전에서 실사용이 힘들었던 적이 있지만, 워낙 혁명적인 프레임워크였기에 관심이 끊이지 않았다고 할 수 있다.

Xposed의 공식 지원은 8.0 Oreo로 종료되었다.

2.2. 2세대 (EdXposed, LSPosed)

EdXposed는 Xposed API와 호환되는 Xposed 프레임워크 재구현 프로젝트로, Magisk의 모듈 중 하나인 Riru를 기반으로 작성되었다. EdXposed는 Android 11 버전을 마지막으로 지원을 종료했다.

LSPosed는 EdXposed를 포크한 프로젝트로, Riru 기반으로 개발되다가 Riru의 지원 종료로 Zygisk[1] 기반으로 변경되었다.

LSPosed 팀은 오픈 소스 개발을 중단하고 텔레그램에서 비공개 버전을 배포하고 있고, 오픈 소스 LSPosed는 커뮤니티 기반으로 포크되어 유지보수되고 있다.#

3. 사용법

  1. Magisk, KernelSU, APatch 등의 루트 매니저를 설치한다.
  2. 루트 매니저에 Zygisk 모듈을 설치한다. Zygisk 모듈에는 ZygiskNext (클로즈드 소스), ReZygisk (오픈 소스) 등이 있다. Magisk의 경우 설정에서 Zygisk를 활성화해도 된다.
  3. 루트 매니저에 LSPosed 모듈을 설치하고 재부팅한다.

이제 원하는 Xposed 모듈을 설치해서 사용할 수 있다. LSPosed Manager는 시스템 변조 감지를 막기 위해 기본적으로 앱 형태로 설치되지 않고 알림 상주, 바로가기 또는 루트 매니저의 모듈 탭에서 접근할 수 있게 되어있다.

3.1. 루팅 없이 사용

LSPatch 또는 NPatch 앱으로 Non-Root 환경에서도 각 앱을 패치해서 Xposed 모듈이 작동하게 할 수 있다. 앱을 패치하면 서명이 달라지기 때문에 업데이트 시 매번 패치를 수동으로 해줘야 한다.

4. 관련 문서


[1] Riru의 기능을 Magisk에 통합한 것이라고 보면 된다.