iPhone 앱 파일 크기를 10.0MB 미만으로 유지하기위한 좋은 지침은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/919481

  •  06-09-2019
  •  | 
  •  

문제

셀룰러 및 WiFi 네트워크 환경에서 쉽게 다운로드 할 수 있도록 앱을 10.0MB 미만으로 유지하고 싶습니다. 당신의 경험에서 당신은 당신의 앱을 슬림하게 유지하는 좋은 방법을 얻었습니까? 그렇다면 공유하십시오. iPhone 앱 파일 크기를 10.0MB 미만으로 유지하기위한 좋은 지침은 무엇입니까?

도움이 되었습니까?

해결책

내가 다루는 대부분의 앱은 10m 이상으로 이동하는 앱은 자원, 종종 이미지 및 오디오 때문입니다. 올바르게 크기를 조정하는 것이 중요합니다. iPhone은 장치를 번들링 할 때 자동으로 약간의 압축을 수행하므로 시뮬레이터의 물건 크기는 장치에서 근본적으로 다를 수 있습니다.

모든 최적화 연습과 마찬가지로 먼저 견고하고 제정신 시스템을 구축 한 다음 가장 큰 문제를 일으키는 작품에 최적화 노력을 집중하려고합니다. 나는 사용한다 du 이것을 위해 :

  • 릴리스 중에 장치를 빌드하십시오
  • 빌드/릴리스 -iphoneos/.app으로 이동하십시오
  • du -ak | sort -rn | head

이것은 당신에게 가장 큰 위치의 목록을 제공합니다. 이 정보는 KB에 있지만 다음 블록 (Mac의 4K)으로 반올림됩니다. 그러나 당신은 단지 모든 것의 정확한 크기를 해결하지 않고 큰 것을 찾고 있습니다.

특히 자원에 복사되는 것을 찾으십시오. 재미있는 것들이 때때로 거기에 들어가고, 특히 프로젝트에 추가 한 문서. 이것을 테스트하면, 내 프로젝트 템플릿이 xcconfig 파일을 번들에 복사하고 있음을 알 수 있습니다 (고칠 수 있습니다 ...)

현지화 된 펜촉이 많으면 NIB를 국소화하지 않고 Iboutlet Uilabels를 사용하는 것을 고려할 수 있습니다. 실제 현지화 된 텍스트가 없으면 펜촉을 현지화하지 마십시오. 하나의 펜촉을 현지화한다고해서 모든 펜촉을 현지화해야한다는 의미는 아닙니다.

일반적으로 iPhone의 빌드 설정은 이미 크기를 낮추는 데 적극적이므로 변화하는 것을 연구하지 않고는 많은 것을 엉망으로 만들지 않을 것입니다.

결코 전화하지 않는 많은 방법이있는 Objective-C 클래스를 조심하십시오. Objective-C는 역동적이므로 C에서와 같이 데드 코드 스트리핑을 할 수 없습니다. 컴파일 시간에 선택기가 런타임에 사용할 수 있는지 여부를 알 수있는 방법은 없습니다. 따라서 주방 싱크대가있는 물건이 있다면 "만약"을 사용하면 그 내용을 제거하고 싶을 수도 있습니다. 그러나 일반적으로 우리는 단일 오디오 파일에 비해 많은 공간에 대해 이야기하지 않습니다. 나는 당신이 당신이 어떤 클래스 방법이나 상수에 대해서만 연결하는 정말 큰 객체를 가지고있는 드문 경우에 대해서만 언급합니다.

다른 팁

또 다른 팁 : 9.9MB 앱에주의하십시오!

앱이 10.1MB 인 것으로 보이는 많은 최적화 후에 발견하고 싶지 않습니다.

하나의 팁은 압축 미디어 형식을 사용하는 것입니다. 예 : 오디오 파일을 사용하는 경우 AIFF 또는 WAV 대신 MP3를 사용하여 약간 높은 처리 오버 헤드의 가능한 가격으로 고려할 수 있습니다. 10MB 실행 파일은 비정상적으로 높은 소리를 내기 때문에 큰 미디어 컨텐츠 (이미지, 오디오)가 포함 된 앱이있을 수 있습니다.

앱의 모양으로 작동하는 경우 더 큰 이미지 중 일부를 Grayscale로 변환하십시오. 순수한 회색차를 만들 수 있다면 저축은 상당히 상당합니다.

빌드 프로세스는 귀하를 위해 PNG 파일을 자동으로 압축했습니다 (PNGCrush 사용은 직접 수행하지 마십시오). 실제로 10MB 이상을 얻으려면 상당히 많은 자산이 있어야합니다. 나는 이것에 대해 걱정하는 것이 조기 최적화라고 생각하며 나중에 자신이 가까워 질 때까지 걱정할 필요가 없을 것입니다.

이 팁은 대부분 iPhone 게임에 적용됩니다.

  • 투명성이없는 이미지에 PNG 대신 JPG를 사용하십시오.
  • MP3로 당신의 소리를 내고 세우다 앱을 처음로드 할 때 물결시켜 앱 문서에 저장합니다.
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top