Каковы возможные причины, по которым использование моего приложения настолько велико? - PullRequest
0 голосов
/ 07 сентября 2018

Я сейчас пишу приложение и использую в основном одно действие. Это дерево компонентов.

Я использую изображения с двумя экранами шириной и около 300 пикселей в верхних двух видах изображений, самый нижний - сплошная цветная панель. В дополнение к этому, приложение также создает около 15 кнопок с векторным фоном и размером около 42 дп. Эти кнопки не имеют прослушивателя щелчков, и я отключил для них stateListAnimator. Они не работают как правильные кнопки, но замена их на textView, например, не устранила проблему.

Я также загружаю 48 звуковых файлов в SoundPool с индивидуальным размером 8,57 КБ на файл. Я пытался не загружать эти файлы, но это никак не изменило использование оперативной памяти.

Я установил для minifyEnabled значение true, и это мои зависимости:

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:28.0.0-rc02'
    implementation 'com.android.support:customtabs:28.0.0-rc02'
    implementation 'com.android.support:support-v4:28.0.0-rc02'
    implementation 'com.android.support:support-media-compat:28.0.0-rc02'
    implementation 'com.android.support:animated-vector-drawable:28.0.0-rc02'
    implementation 'com.android.support.constraint:constraint-layout:1.1.2'
    implementation 'com.android.support:preference-v7:28.0.0-rc02'
    implementation 'com.google.android.gms:play-services-ads:15.0.1'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}

Моя проблема сейчас в том, что это приложение, хотя и не имеет утечек, с самого начала потребляет много оперативной памяти. Он отличается от устройства к устройству, но обычно составляет от 70 до 130 МБ. Вот снимок профиля Android.

Не использование рекламы имеет небольшой эффект, но ничего слишком дикого, как видно здесь .

Так что на данный момент я не совсем уверен, что может быть причиной проблемы, и какие шаги я могу предпринять, чтобы понять это. Поэтому я надеюсь, что кто-нибудь здесь может помочь.

Если потребуется какая-либо дополнительная информация, о которой я забыл, я предоставлю ее. Спасибо.

1 Ответ

0 голосов
/ 07 сентября 2018

проверьте размер ваших изображений, возможно, одно из них имеет большой размер, и попробуйте оптимизировать ваш XML-код, это может быть причиной того, что ваше приложение использует много оперативной памяти.и проверьте "LeakCanary", это очень помогает, когда дело доходит до RAM

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...