국내 기종에 Wanam Xposed를 사용할 경우


feature.xml이 해외기종용으로 변조되어서


HD보이스나 기타 CSC관련 기능들이 작동하지 않는 문제가 발생하는 것을 잘 알고 계실 겁니다.



이를 막기 위한 방법은 이미 알려져있는데

1. Wanam Xposed를 끌 때 뒤로가기로 끄지 말기

2. feature.xml 자체에 Write Protection을 걸기 (퍼미션 등...)

3. Wanam에 의해 변조되기 전의 feature.xml로 돌리기.. 등등..



그러나 이러한 1,2,3의 방법은

불편함과 부작용이 따르게 됩니다.

1의 경우 매번 신경을 써야하는 불편함이 있으며

2의 경우 feature.xml의 편집을 필요로 하는 다른 앱이나 사용자의 편집을 방해하는 문제가 있으며

3의 경우 매번 백업/복원을 해야하는 불편함이 있습니다.


이러한 문제들을 해결하기 위해서


Wanam Xposed에 한하여 feature.xml 변조를 막도록 하는 패치를 만들었습니다.

(루트권한과 Busybox가 필요합니다)

자료실 링크:

http://www.matcl.com/?m=bbs&bid=appDB&uid=220870




이 패치의 원리는

Wanam에서 내부적으로 사용하는

/data/data/ma.wanam.xposed/cache/apply_csc_features.sh 스크립트의 실행만 막는 것입니다.


해당 스크립트의 실행을 막기 위해서는

chmod로는 불가능합니다. 왜냐하면 Wanam 내부적으로 해당 스크립트를 다시 생성하기 때문에

기존 파일에 퍼미션을 지정해놓아도 새 파일의 것으로 대체되기 때문입니다.


그러므로 여기에는

chattr 이라는 강력한 파일시스템 명령어가 사용됩니다.


chattr (Change Attribute)는 리눅스 ext2, ext3, ext4 파일시스템의 각종 attribute를 설정하는 명령어인데

이것이 매우 강력하기 때문에

chattr +i 명령을 통해 Immutable 비트를 set하게 되면

해당 파일은 삭제, 이름변경 등등이 불가능하게 됩니다.



/data/data/ma.wanam.xposed/cache/apply_csc_features.sh 에


#!/system/bin/sh


한줄만 넣어서 더미 스크립트를 만들고, 퍼미션 700을 준 다음


chattr +i /data/data/ma.wanam.xposed/cache/apply_csc_features.sh 을 하게 되면


해당 파일은 삭제, 이름변경이 불가능하게 됩니다.


그러므로 Wanam이 이 더미 스크립트를 실행하게 되므로

Wanam에 의해 feature.xml이 변조되는 것을 선택적으로 막을 수 있게 됩니다.



이 방법을 통한 패치의 장점은


feature.xml 자체의 퍼미션이나 속성은 건들지 않기 때문에


기타 feature.xml 수정을 필요로 할 때 언제든지 feature.xml을 수정할 수 있다는 장점이 있습니다.


게다가


(순정 Wanam Xposed 기준)

Wanam Xposed를 업데이트 하더라도 패치가 유지되는 커다란 장점이 있습니다.

(Unpatch를 하기 전까지는...)





이러한 패치/언패치 과정을 손쉽게 할 수 있도록 패치앱을 만들어서 자료실에 올렸습니다.

(루트권한과 Busybox를 필요로 합니다)

http://www.matcl.com/?m=bbs&bid=appDB&uid=220870

필요하신 분들은 주의사항을 꼼꼼히 읽으신 후 이용하시기 바랍니다.


감사합니다.






/* 팁:

http://www.matcl.com/?m=bbs&bid=usermoim&uid=221079

 닉스s님의 팁입니다.

 Wanam Xposed가 feature.xml의 & amp ;를 &로 축약함으로 인해 XML 파싱에 문제가 생겨서 HD보이스가 활성화되지 않는 문제 원인을 알려주셨습니다. 감사합니다.


 그러나 Wanam Xposed 자체의 버그로 인해

 본 Wanam HD보이스 패치 없이는

 Wanam이 다시 feature.xml을 변조하므로 문제가 재발되는 것으로 확인되었습니다.

 

 그러므로 본 Wanam HD보이스 패치를 이용해 Wanam Xposed가 feature.xml를 변조하는 것을 원천적으로 막고 사용하시기 바랍니다.

 (Wanam Xposed의 해당 버그가 수정되기 전까지는 본 패치는 유효할 듯 싶습니다.)

*/



댓글 24
  • profile
    오... chattr 은 슈퍼슈에서 보고 첨 보네요. 이게 가장 확실한 방법이네요. 전 태스커로 파일이 변경되면 자동으로 복원하는 프로필을 생각했는데 이게 더 좋은 방법인듯 합니다. [2.2.8/E210SKSUGNA2/4.3]
  • profile
    요약하면 더미로 빈깡통 스크립트를 만들고 이걸 완전히 변조 방지시키는거라고 이해하면 되겠군요. [2.2.8/E210SKSUGNA2/4.3]
  • ?
    hsk
    14.03.16
    네 ^^ 저도 언뜻 SuperSU에서 OTA Survival의 목적으로 chattr를 사용한다는 것과 Wanam에서 내부적으로 스크립트를 통해 feature.xml을 수정한다는 점에 착안해서 feature.xml 대신 해당 Wanam 스크립트 자체에 chattr +i을 걸어버리면 어떨까 아이디어가 떠올라서 시도해봤는데 잘 되더라구요 ㅎㅎ 해당 아이디어를 사용자들이 손쉽게 사용할 수 있게 패치로 구현했습니다. ^^
  • ?
    hsk
    14.03.16
    네~ 맞습니다. 특히 chattr은 파일시스템 자체에 적용되는 매우 강력한 명령이라서 data 파티션을 포맷하거나 CWM등의 data 백업본을 복원하지 않는 이상 chattr -i 하기 전까지는 절대 풀리지 않기 때문에 한번 패치해놓으면 Wanam을 지우든 버전이 바뀌든 상관없이 패치가 유지됩니다 ㅎㅎ
  • ?
    선시아
    14.03.16
    wanam 적용할 때 마다 feature.xml 파일 복원하는 게 참 귀찮았는데.. ^^; 감사합니다~ 잘 사용할게요~ :)
  • ?
    hsk
    14.03.16
    감사합니다 ^^
  • profile
    어플로는 비지박스 미설치라고 니외서 결국 수작업으로 ㅜㅡㅜ 비지박스 설치에 문제가 있나봅니다. ㅋ 수동 적용후 리네임 안되는거 확인했네요. ㅋ
  • ?
    hsk
    14.03.16
    어라 ㅎㅎ 혹시 Busybox를 Stericson님 버전 말고 다른 버전을 사용하시나요? 아.. 그러고보니 커널 등에 들어있는 busybox에 chattr이 없는 경우라면 busybox chattr로 명령을 실행 시 그 busybox가 PATH 우선 순위에 있기 때문에 문제가 될 수 있겠네요 ㅎㅎ busybox chattr 대신 chattr로 수정해야겠네요 ^^ 피드백 감사드립니다.
  • ?
    어쌈
    14.03.17
    15 추천수 돌파 축하드려요!!
  • ?
    대박! 매번 복원하기 귀찮았는데 정말 감사합니다~ ㅎㅎ
  • ?
    hsk
    14.03.17
    감사합니다~~
  • ?
    hsk
    14.03.17
    ^^ 감사합니다~
  • ?
    매번 HD보이스 때문에 귀찮았는데 덕분에 넘무 편해졌습니다.^^ 감사합니다.^^
  • ?
    hsk
    14.03.17
    넵~ 감사합니다 ^^
  • ?
    고생이 많으십니다....
  • ?
    hsk
    14.03.17
    감사합니다~~+
  • ?
    생성
    14.03.17
    매번바꾸는거 귀찮아서 wanam을지웠었는데 다시 깔아야겠네요 감사합니다 [2.2.7/E250KKKUENA4/4.3]
  • ?
    hsk
    14.03.17
    이제 편하게 Wanam을 사용하세요~~ ^^
  • ?
    수고하셨습니다
  • ?
    hsk
    14.03.17
    감사합니다~^^
  • ?
    와....완전능력자세요ㅜㅜ감사합니다 정말 유용하네요 추천 쾅쾅쾅!
  • ?
    hsk
    14.03.17
    헉... 과찬이십니다 ㅎㅎ 감사합니다~~
  • ?
    역시 hsk님 능력자이십니다
  • ?
    hsk
    14.03.17
    헛.. ㅎㅎ 고맙습니다~~+
댓글 쓰기 권한이 없습니다.
분류 추천순 목록 검색 쓰기
List of Articles
제목 글쓴이 추천 조회 날짜
[롤리팝] 커널패치 루팅법 입니다! (킷캣,젤리빈에도 유용!!!) 193 file hsk 448 27573 2014.12.07
맛클 포인트 얻기에 가장 쉬운 방법............ 196 비빅비 406 8774 2013.04.17
4.3 드디어 루팅법 알아냈습니다ㅜ 71 file Jason K 184 32388 2013.10.25
강좌 테그라크(빌드30이후) 업데이트폴더 테마적용방법 232 file 택이아빠 150 71918 2011.06.11
[6개] 겔럭시 노트 젤리빈 베터리 광탈 현상 최소화 하기..! 152 file HackerChang 143 25414 2013.02.18
강좌 안드로이드 framework-res.apk 수정방법(테마수정, 시스템어플수정) 136 불멸[갤K] 140 88261 2011.02.11
부팅 및 종료 애니메이션 파일(*.qmg) 파일 만들기 방법 68 file 웃음투자 137 17427 2013.03.25
Universal Adrenaline Shot V14 470 file 맛싸이언 124 39511 2011.09.30
강좌 [간단루팅]갤럭시S3 NI3 루팅하기! 54 file 5755084 117 27150 2014.10.07
Galaxy Tuner 소개 (IO scheduler, LCD 색온도, HW sound) 201 file 자양 114 35633 2011.01.05
lgu 갤s8+ 구글락 글올린 사람입니다 598 file 떳다마린 113 17604 2018.03.25
[겔S : 1월 11일 V2] 이카루스 패치 N2 - 배포게시판이동 262 file 이카루스 113 16246 2011.01.09
[포인트 올리는 법] 포인트를 올리는 가장 기본적인 루트를 적어두었습... 17 berics 109 526190 2015.03.10
기어s2 다운그레이드 (스포츠,클래식)(아이폰연동) 105 file 정현성 103 16555 2016.01.25
노트2/갤탭10.1)멀티윈도우 가능한 어플 추가하기 108 file 고대인 103 64292 2012.11.11
강좌 잠금화면 상단바 갤4처럼 투명화하기 191 file MuHyeon 100 17653 2013.08.01
강좌 LG V20 부트로더 언락하기(국내 내수용,버라이즌,스프린트,AT&T 모... 300 file xps 94 12011 2017.02.12
노트3 기본 어플 자동 삭제 (세계 최고 387개) #1차 수정 99 file Anony 93 25632 2014.03.01
갤럭시노트 멀티윈도우 포팅시 주의할점과 포팅방법 75 file focusnf 92 16555 2013.02.14
[팁] 롤리팝 디오덱 방법 68 file 푸른구름 88 13551 2015.07.21
갤럭시S4 SKT 기본어플 삭제가능목록 정리해서 올립니다. 61 file 야미 87 60860 2013.09.07
강좌 [안드로이드] 디컴파일 되지 않는 시스템어플 디컴파일 하기 68 불멸[갤K] 87 22896 2011.02.17
강좌 textplus를 이용한 공기계 카카오톡 인증! 36 file bjw4227 86 55530 2015.01.31
[팁][롤리팝] S파인더 퀵커넥트 간단하게 제거하기 24 file hsk 85 22619 2015.05.21
강좌 [대부분의 삼성기종] 카메라 셔터무음 활성화 76 file bdessd 85 14659 2015.05.08
강좌 노트10.1 lte (E230S) 루팅강좌 + 순정펌(4.4.4) 킷캣 58 file 장벌 85 20620 2014.10.28
강좌 Root Explorer(루트익스플로러) 사용방법 114 berics 85 63405 2011.02.10
루팅 관련 용어 정리 71 크램프 84 3456 2013.01.23
패블릿모드 하는법! 강좌 379 file 쿤투 83 30994 2013.03.17
[참고] 롤리팝 루팅 이후 보안알림 제거 (KNOX, SecurityLogAgent 제거... 36 file hsk 81 31851 2015.03.22
1 - 135