[컴][안드로이드] debugging symbols 가진 apk 만들기


추가사항
eclipse 에서 debug 하는 방법이다.

----


추가사항

ref.3,4 에 따르면 Apk-tool 1.4.1 를 사용해야 한다고 한다. 그렇지 않으면 .java 를 생성하지 않아서 netbeans 에서 line breakpoint 를 설정할 수 없다고 한다.

apktool-2.0.6 을 사용해 봤는데, java 가 만들어진다.


----


apktool 을 이용해서 debugging symbols 를 가진 binary(apk) 를 만들어 보자. 이건 나중에 NetBeans 를 이용해서 debugger 를 attach 해서 사용할 수 있다.

apk 를 debugging mode (-d) 로 decode 하자.
apktool d -d e:\Superuser.apk e:\s
E:\s 에 있는 녀석이 debugging 을 할 때 client source 부분이 된다.

이것을 다시 debug mode(-d) 의 apk 로 만든다(build). apktools 은 original symbols 를 제거하고 smali 를 참조하는 새로운 symbols 를 넣게 된다.

build 가 끝나면 E:\s 에  build 와 dist 폴더가 추가되는데, 나중에 NetBeans 에서 사용할 때는 이 폴더가 없는 상태로 사용해야 한다.
apktool.bat b -d e:\s

d:\Program Files\Android\apktool>apktool d -d e:\Superuser.apk e:\sI: Baksmaling...
I: Loading resource table...
I: Loaded.
I: Loading resource table from file: C:\Users\namh\apktool\framework\1.apk
I: Loaded.
I: Decoding file-resources...
I: Decoding values*/* XMLs...
I: Done.
I: Copying assets and libs...
d:\Program Files\Android\apktool>apktool.bat b -d e:\sI: Checking whether sources has changed...
I: Smaling...
I: Checking whether resources has changed...
I: Building resources...
I: Building apk file...

이러고 나서 sign 을 해야 한다. 그것은 아래 경로를 참고하자.
http://i5on9i.blogspot.kr/2012/10/zip-apk-sign.html

References

  1. http://code.google.com/p/android-apktool/wiki/SmaliDebugging 
  2. http://code.google.com/p/smali/
  3. http://d-kovalenko.blogspot.kr/2012/08/debugging-smali-code-with-apk-tool-and.html
  4. http://kkomak.wordpress.com/2012/10/17/apktool%EB%A5%BC-%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC-%EB%94%94%EB%B2%84%EA%B9%85-%EA%B0%80%EB%8A%A5%ED%95%9C-apk-%EC%83%9D%EC%84%B1/

댓글 없음:

댓글 쓰기