Hax빙글
13.02.07
조회 수 4058
추천 수 28
댓글 12
*참고 : 이전에 잉크락 추가 관련 강좌에서 빠뜨린 부분이 있습니다.

CircleUnlockRippleRenderer.smali 파일을 여시고

0x1080618 를 찾으신 다음 framework-res.apk의 public.xml에 있는 reflectionmap 의 id값에 맞게 수정해주세요.

이때문에 물결이 조금 다르게 나오더군요.



잉크 색상 목록 중 마음에 드는 색상이 없어 추가하고 싶으신가요?

그럼 이 4가지 파일을 수정해야합니다 : public.xml, InkeffectPreview.smali, CircleUnlockRippleRenderer.smali, LockScreenSettings.smali.

public.xml 와 LockScreenSettings.smali 가 가장 쉬운 부분이므로 먼저 건드리도록 하죠.
 
public.xml 을 열어서 ink_*.png 와 ink_*_h.png 파일의 id값을 추가해줍니다. 이 png 파일들은 잉크 효과 선택 시 사진입니다.

예) ink_red.png 와 ink_red_h.png:


Code:

<public type="drawable" name="ink_red" id="0x7f02023c" />
<public type="drawable" name="ink_red_h" id="0x7f02023d" />

이제 저장합니다.



LockScreenSettings.smali 을 여셔서 이 부분을 찾습니다.


Code:

const/16 v0, 0x9

new-array v0, v0, [I

fill-array-data v0, :array_10

0x9를 원하는 색상 갯수로 바꿔줍니다.
저는 한개만 추가할 것이므로 0xa로 바꾸었습니다.


Code:

const/16 v0, 0xa

new-array v0, v0, [I

fill-array-data v0, :array_10

아래를 보시면 어레이 데이터가 있습니다.


Code:

    :array_10
.array-data 0x4
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
.end array-data

*시스템에 따라 값이 다를 수 있습니다.



몇줄 더 추가해주세요. 이 부분은 잠금화면 옵션 탭에서 잉크 효과 아래에 나타나는 현재 색상 스트링 부분입니다.


Code:

    :array_10
.array-data 0x4
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
0xact 0x0t 0x9t 0x7ft
.end array-data

*저는 색상을 딱 하나 추가하므로 딱 한줄만 더했습니다.

저장!



이제 InkeffectPreview.smali 를 여시면 이런 부분이 보입니다.


Code:

const/16 v1, 0x9

위에 했던 것과 같이 색상 수로 바꿔줍니다.



어레이 데이터 두개도 보실 수 있으신데요, 이 부분에도 줄을 추가해주셔야 합니다.

아까 public.xml에서 지정한 id값을 넣어줍니다.


Code:

 :array_14
.array-data 0x4
0x28t 0x2t 0x2t 0x7ft
0x2at 0x2t 0x2t 0x7ft
0x2bt 0x2t 0x2t 0x7ft
0x2ct 0x2t 0x2t 0x7ft
0x2dt 0x2t 0x2t 0x7ft
0x2et 0x2t 0x2t 0x7ft
0x2ft 0x2t 0x2t 0x7ft
0x30t 0x2t 0x2t 0x7ft
0x31t 0x2t 0x2t 0x7ft
0x3ct 0x2t 0x2t 0x7ft
.end array-data

.line 62
:array_2a
.array-data 0x4
0x32t 0x2t 0x2t 0x7ft
0x33t 0x2t 0x2t 0x7ft
0x34t 0x2t 0x2t 0x7ft
0x35t 0x2t 0x2t 0x7ft
0x36t 0x2t 0x2t 0x7ft
0x37t 0x2t 0x2t 0x7ft
0x38t 0x2t 0x2t 0x7ft
0x39t 0x2t 0x2t 0x7ft
0x3bt 0x2t 0x2t 0x7ft
0x3dt 0x2t 0x2t 0x7ft
.end array-data

아래에 0x9가 하나 더 있으므로


Code:

 const/16 v2, 0x9

new-array v2, v2, [Ljava/lang/String;

sput-object v2, Lcom/android/settings/InkeffectPreview;->mInkcolorItem:[Ljava/lang/String;






Code:

 const/16 v2, 0xa

new-array v2, v2, [Ljava/lang/String;

sput-object v2, Lcom/android/settings/InkeffectPreview;->mInkcolorItem:[Ljava/lang/String;

이런 식으로 바꿔줍니다.


 마지막으로 InkeffectPreview.smali 에서 할 일은 목록에 색상을 추가시키는 것입니다.

이런 구문을 찾아서 아래에 붙여넣기 하세요. 그 후, 굵은 글씨의 부분을 수정해주세요.

빨간 부분은 지우셔도 무관합니다.


Code:

sget-object v2, Lcom/android/settings/InkeffectPreview;->mInkcolorItem:[Ljava/lang/String;

const/16 v3, 0x8 <----목록에서 보여지는 순서. 8번째 색상임을 뜻함.

invoke-virtual {p0}, Lcom/android/settings/InkeffectPreview;->getResources()Landroid/content/res/Resources;

move-result-object v4

const v5, 0x7f090ce6

invoke-virtual {v4, v5}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;


const-string v4, "Light Blue" <----색상의 이름

aput-object v4, v2, v3

저장!



이제 마지막으로 CircleUnlockRippleRenderer.smali 를 수정하셔야 합니다.

이 파일은 렌더링 시 잉크의 RGB값을 지정해줍니다.

0x9를 다시 찾아서 색상 수로 바꿔줍니다:


Code:

const/16 v3, 0xa

이런 구문을 찾으세요.

*시스템에 따라 값이 다를 수 있습니다.


Code:

const/16 v4, 0x8

new-array v5, v7, [F

fill-array-data v5, :array_268

aput-object v5, v3, v4

아래에 붙여넣기하시고 굵은 글씨의 부분을 수정해주세요.


Code:

const/16 v4, 0x9

new-array v5, v7, [F

fill-array-data v5, :array_269

aput-object v5, v3, v4

눈치채셨겠지만, array_269는 존재하지 않습니다. 고로 만들어줍니다.
맨 아래로 내려가셔서 어레이 데이터들 뒤에 끼워줍니다.


Code:

:array_269
.array-data 0x4
0x0t 0x0t 0x80t 0x3ft <--빨간색. 1.0F
0x0t 0x0t 0x0t 0x0t <--초록색. 0.0F
0x0t 0x0t 0x0t 0x0t <--파란색. 0.0F
.end array-data

끝! 이제 컴파일하고 즐기시면 됩니다 :)
댓글 12
댓글 쓰기 권한이 없습니다.
분류 정렬 목록 검색 쓰기
List of Articles
제목 글쓴이 추천 조회 날짜
갤럭시S2 Kies 연결 오류 뜨시는분 5 Lollipop 10 6390 2013.02.07
갤럭시S2 이번 젤리빈 업데이트 이후 13 르릉 14 2713 2013.02.07
루팅 안 하고 기본어플 제거(비활성화)하기 - ICS이상 20 file 할부원금 22 8096 2013.02.07
잉크락 색상 추가 12 Hax빙글 28 4058 2013.02.07
모바일 만물상 3 file Μango('˘ 6 1202 2013.02.06
순정독바 변경법(초보들을 위한??) 46 file Sonic77 : F 36 4571 2013.02.06
구글스토어구매삭제 15 천주산 15 1718 2013.02.06
왕초보 리체롬 올리기 17 file Μango('˘ 27 3341 2013.02.06
갤투 lsj기반 miui 3 file 방개12 4 1346 2013.02.06
[재게시] dpi수정하신 분들 Tstore 사용하는 팁. 1 타브 3 2594 2013.02.06
갤럭시S3 액정문제 13 미남스마 9 1559 2013.02.05
갤3 메모리부스터 2 미남스마 6 2341 2013.02.05
노트2 sms화면상에서 전메세지 바로 건너뛰기 6 pdrj 5 1930 2013.02.05
삼성 스마트폰 펌웨어 다운로드 27 Rotanev 35 2494 2013.02.05
파워앰프에서 외부음장쓰는법(beats, clearbass등등) 32 file tytekfl4265 17 6666 2013.02.05
겔럭시노트2 숨겨진 기능 14 쭈니입니 14 2337 2013.02.05
카카오톡 성인광고 활용법! 24 차칸겸둥 25 4951 2013.02.05
스마트폰 베터리 충전 팁 25 오니선생 23 2574 2013.02.05
노트2 알람음 지정 간단한 팁... 5 오니선생 8 4987 2013.02.05
갤3 순정 락스크린 시계 바꾸기 7 file 휘찐 14 3379 2013.02.05
팝송 무료 스트리밍 사이트 3 file 뚤딸 8 8393 2013.02.04
무음카메라 적용법 루팅만하시면 아주 간편하게(?) 바꾸실수잇습니다 10 snalwod 10 3228 2013.02.04
강좌 [공통] 다중 프로그램 간단 종료 Rev.01 92 Hunnam84 62 3925 2013.02.04
국내판 갤럭시노트1도 triangl away로 카운트 초기화 되네요ㅎ 7 샤킬미카 11 1966 2013.02.04
sj커널사용중 화면 멈추시는 분보세요! abbb1213 5 1232 2013.02.02
갤럭시s3 쉽게 무음카메라 만들기 11 rainbowsix 25 4440 2013.02.01
갤럭시 노트 숨겨진 기능 9 샤방찬수 12 2044 2013.02.01
배터리 효율적으로 관리하는 방법 22 비타민ABC 39 5037 2013.02.01
유플노트2 순정 systemui 1 퐁1듀 5 1729 2013.02.01
SKT 기변 대행사???? 7 까비영웅 5 1539 2013.02.01
1 - 80 - 135