2013-02-11 3 views
0

작년에 Android 앱을 발행했습니다. apk의 최신 버전은 3.2 (최종 수정일은 2012 년 5 월 26 일) 인 반면 2.8 버전의 소스 코드 만 있습니다 (2012 년 5 월 15 일 최종 수정). 2.8과 3.2 사이의 코드에서 어떤 변화가 있었는지 잘 모르겠습니다.파일의 마지막 수정 날짜를 변경하지 않고 android apk 압축을 풉니 다

따라서 최신 apk를 풀고 변경 사항을 확인했습니다. 나는 APKtoJava_RC2 도구를 사용하여 같은 것을 풀었다. 소스 코드를 얻을 수 있지만 모든 파일의 마지막 수정 날짜가 현재 시간으로 변경됩니다. 따라서, 나는 apk의 2.8 버전 이후에 업데이트 된 파일을 식별 할 수 없었다.

디 컴파일러가 대부분의 코드 (변수 이름, 상수 ...)를 변경함에 따라 파일 비교 도구를 사용하여 디 컴파일 된 코드와 2.8 버전 소스 코드 간의 파일 변경을 식별 할 수 없었습니다.

2.8 버전 이후에 업데이트 된 파일 또는 내 소스 코드와 디 컴파일 된 소스 코드를 비교하는 마법 도구를 수동으로 비교할 수 있도록 파일의 원래 마지막 수정 날짜를 가져와야합니다.

내가, 웹 많이 검색하고 일부 version control system을 사용하여 미리

+2

나는 당신이 채워 졌다고 생각합니다. 다음 번에는 버전 제어 시스템을 사용하십시오. 나는 그것이 당신에게 지금 도움이되지 않는다는 것을 압니다, 그러나 그것은 제가 가진 최고의 조언입니다. – Clyde

답변

0

나에게 :)

감사합니다 도움이 하나, 바람직하게는 one on the cloud있을 것이라는 희망에 유래 와서 한 이러한 문제를 피할 수 . 또한 IntelliJ IDEA와 같은 IDE를 사용하면 모든 변경 사항에 대한 로컬 기록을 유지하고 다른 버전의 파일을 비교 및 ​​병합 할 수 있습니다.

+0

감사합니다. 나는 버전 관리 시스템을 위해 ADT (이전의 eclipse)와 eGit을 사용하고있다. 나는 28까지 버전을 유지하고 있었고 마지막 몇 가지 버전에 대한 자식을 업데이트하지 않았다. (그것은 나쁘다.) – sharmi

0

원본 소스 코드와 비교하기보다는 apk의 두 버전을 역 어셈블하거나 디 컴파일하여 결과를 비교해보십시오.

+0

감사합니다 JesusFreke. – sharmi