마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

이클립스에서 Unable to execute dex: method ID not in [0, 0xffff]: 65536 에러가 발생합니다.

0 추천
현재  구글 플레이서비스에 페이스북 라이브러리 까지 들어있엇 함수 갯수가 많은 듯합니다.
함수갯수를 줄이는 방법에 대해서 알아보니 proguard로 줄인다는 방법이 있는데 찾아보니
잘 없는것 같습니다. 혹시 이클립스에서 proguard로  함수갯수를 줄여서 함수 초과 오류가 안나게 할수 있나요?
아니면 혹시 이클립스에서 구글라이브러리에서 안쓰는것을 빼는 방법이 있나요? 현재 dependanty project를
물려서 하고 있는데 실제적으로 google play service 8115000 버젼에 jar로 된 파일이 큰용량으로 있던데 이파일안에 필요없는 클래스들을 지우고 다시 묶는 방법도 있나요?
참고로 알집으로 압축풀고 필요없는거 지우고 다시 압축해서 넣었는데 인식이 잘 안되는거 같습니다. 혹시 방법이 있나요? 구글링해도 워낙 답을 알수 없어서 질문드립니다. 참고로 이클립스라서
자료가 많이 없는거 같네요... 답변 아니 힌트라도 알고 계시면 꼭 답변부탁드립니다.
grape111 (1,950 포인트) 님이 2016년 7월 12일 질문

2개의 답변

0 추천
비슷한 내용을 2번째 질문하신것 같은데요

아래 질문하셨던 글에서 mcsong님이 답변하신대로 google play services lib에서 필요한 lib만 가져다 쓰세요

하지만 나중에 프로젝트가 커지고 나면 이런 방법은 미봉책이 될 수 있습니다

장기적으로 볼때는 android studio로 넘어가셔서 multidex를 사용하시는걸 추천드립니다
prague (26,200 포인트) 님이 2016년 7월 12일 답변
아래 답변도 보았는데 제가 이클립스를 쓰고 있어서요... 안드로이드 스튜디오같은경우는 gradle 스크립트에서 부분만 가져오는 것을 쓸수 있는데 이클립스의 경우는
안에 jar로 묶여져 있고 어떻게 필요한 lib만 가져오는지 잘 모르겠네요......혹시 이클립스에서는 어떻게 하는지 아시나요?
아... 제가 android studio와 착각을 했군요
play services의 필요한 jar만 받는건 저도 검색을 안해봐서 잘 모르겠군요
libs에 들어간 파일중에 쓰지 않는것들을 정리해보시면서 컴파일 해보세요
하지만 다시 말씀드리지만 android studio로 넘어가시는걸 추천드립니다
저도 같은 문제로 결국은 android studio로 넘어갔지만 그때라도 넘어간걸 잘했다 싶습니다
0 추천
지금도 되는지는 모르겠지만 이걸 참조해서 필요없는 클래스를 제외시켜서 사용했습니다.

https://gist.github.com/dextorer/a32cad7819b7f272239b
racy (1,540 포인트) 님이 2016년 7월 13일 답변
...