java - 安卓项目OOM
PHP中文网
PHP中文网 2017-04-18 09:39:09
0
6
514
PHP中文网
PHP中文网

认证0级讲师

모든 응답(6)
Ty80

글라이드 등의 액자를 활용해 보는 것은 어떨까요? 이미지를 자동으로 압축하는 것이 더 나을 수도 있습니다

阿神

저도 겪었고, 완전히 피하진 못했지만 최선을 다해보겠습니다
1. 적절한 압축으로 로컬 이미지를 로드합니다

으아악

2. 신청서에

를 추가하세요. 으아악

물론 가장 근본적인 해결책은 적절한 시기에 메모리를 회수하는 것입니다. 예를 들어, 말씀하신 슬라이딩 인터페이스는 어댑터에서 판단될 수 있습니다. 인터페이스가 표시되지 않으면 이미지가 재활용됩니다.

大家讲道理

일반적으로 단일 사진은 OOM이 아닙니다. 여러 장의 사진이 있는 경우 고화질일 필요는 없습니다. 고화질 이미지가 많으면 처리가 어려우므로 비동기 로딩, 압축(압축 후 더 이상 고화질이 아님), 다중 재활용, 슬라이딩 일시정지 로딩 등을 사용해 보세요.

黄舟
  1. 동일한 인터페이스에서 다수의 고화질 이미지를 사용할 필요는 없습니다. 뷰의 크기를 초과하지 않는 것이 가장 좋습니다. 그렇지 않으면 의미가 없습니다.

  2. 그런 다음 품질을 낮추어 사용량을 줄일 수 있습니다...

  3. 그런 다음 다른 작업을 수행할 때 메모리를 회수할 수 있는 옵션이 있습니다...

左手右手慢动作

글라이드는 피카소보다 조금 더 좋습니다(글라이드는 피카소를 기반으로 개선되었습니다). 사진을 많이 사용하는 APP인데 페이스북의 블랙 기술인 프레스코를 사용하면 사진 캐시와 메모리 공간이 저절로 열려요. 그것은 놀랍습니다. (미리 로드된 흐릿한 이미지도 일부 있는데 사용하기가 좀 번거롭습니다. 개인적으로는 이미지에 최소한 명확한 높이나 너비 값을 주어야 하기 때문입니다. 그렇지 않으면 두 개의 Wrap_contents가 표시되지 않습니다)

小葫芦

간단한 방법은 이미지 형식을 webp로 변환하는 것입니다. 이미지의 품질은 크게 떨어지지 않지만 이미지 크기는 크게 줄어듭니다

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿