2012-05-14 5 views
0

appcelerator 및 해당 잘 작동하는 티타늄 모바일 응용 프로그램을 개발했습니다. 문제는 apk 및 IPA 파일의 크기입니다. 응용 프로그램에는 거의 100 줄의 코드가 포함되어 있지만 apk 크기는 6MB이고 IPA 크기는 4.5MB입니다. 제가 Google에서 코드를 최적화 할 때 몇 가지 제안을 보았습니다. 그래서 코드도 거의 70 줄이지만 크기는 여전히 apk와 IPA에서 동일합니다. 그리고 나서 저는 간단한 hello world 응용 프로그램을 실행하여 크로스 체크를 한 다음 작은 hello world 응용 프로그램이 5.4MB apk를 생성한다는 사실에 충격을 받았습니다. 이것이 어떻게 가능할까요?모바일 응용 프로그램 apk 및 IPA 크기가 너무 큽니다.

크기와 관련하여 여기서 무엇이 일어나고 있습니까?

답변

7

여기서 볼 수있는 것은 티타늄을 사용한 결과입니다. Titanium에는 JavaScript 파서 등을 비롯한 많은 추가 코드가 포함되어 있습니다.

배포를 위해 일단 빌드하면 크기는 줄어들지 만 3-4MB 정도가됩니다 (내 경험상).

코드면이 1000 줄이면 응용 프로그램의 크기가이 코드와 거의 같은 크기가됩니다.

APK를 압축 해제하고 다시 압축하여 직접 볼 수 있습니다. 명백하게 티타늄은 제대로 지퍼를 내지 않습니다. 너도 알다시피 .apk은 사실 .zip이다. 그러니 확장을 변경하고, 포장을 풀고, 재 포장하십시오. APK를 작게 만들어야합니다.

+0

그래서 apk의 파일 확장명을 .zip으로 편집해야합니다. 그런 다음 압축을 풀고 다시 압축해야합니다. 내가 잘못하지 않았다면 다시 포장을 풀고 다시 포장하는 것이 무슨 뜻입니까 ?? – Niv

+0

@Niv를 수정하십시오. 크기를 약간 줄여야합니다. –

+1

하지만 죄송 합니다만 이전 크기와 동일한 크기로 축소 된 것을 알지 못했습니다. – Niv

0

우선 평판도가 여전히 낮아서 불편을 끼쳐 드려 죄송합니다. 그러나 APK 총 크기 (APK 만)를 줄이는 유용한 팁은 Android의 빌드 아키텍처를 제한하는 것입니다.

아직 모두 archs available 인 Titanium SDK에는 매우 오래된 장치 인 armv5/armv6이 포함되어 있으며, 짧은 목록은 here에서 확인할 수 있습니다. 트릭이 빌드는 다음과 같이 당신의 tiapp.xml에서 <abi>을 추가 제한하는 것입니다 :

<android xmlns:android="http://schemas.android.com/apk/res/android"> 
     <manifest></manifest> 
     <abi>armeabi-v7a</abi> 
</android> 

당신이 Genymotion 에뮬레이터 빌드하기 전에 제한을 제거해야합니다 사용하는 경우, 관심을 유지

을 편집, 즉이었다 에뮬레이터가 armeabi-v7a가 아닙니다

관련 문제