Je constate que la taille du tas augmente automatiquement lorsque l'application en a besoin, quelle que soit la taille maximale du tas du téléphone. Je vois aussi que la taille maximale du tas est différente en fonction de l'appareil.Deux questions sur les tailles de tas maximum et la mémoire disponible en android
Donc, ma première question est, quelles sont les tailles de tas maximales typiques sur les appareils Android? J'ai testé l'allocation de mémoire sur un téléphone qui était capable d'utiliser un tas de plus de 40 Mo alors qu'un autre a donné des erreurs OutOfMemory dans les 20 mbs. Quels sont les plus bas qui sont d'usage courant et quels sont les plus hauts sur les appareils communs? Y a-t-il une norme ou une moyenne?
La deuxième question, et la plus importante, est de savoir comment vous assurer que vous pouvez utiliser les ressources disponibles par appareil tout en évitant d'en utiliser trop. Je sais qu'il existe des méthodes telles que onLowMemory() mais celles-ci semblent ne concerner que la mémoire système entière, pas seulement le tas pour votre application spécifique.
Existe-t-il un moyen de détecter la taille maximale du tas pour le périphérique et de détecter également si la mémoire disponible du tas atteint un point bas pour votre application? Par exemple, si l'appareil n'autorise qu'un maximum de 24 Mo et que l'application est proche de cette limite d'allocation, il peut détecter et réduire l'erreur. Cependant, si l'appareil pouvait gérer confortablement plus, il serait en mesure de tirer parti de ce qui est disponible.
Merci
Il implique le traitement des images et 20 Mo de mémoire est facile à utiliser avec des images. Il est tout à fait correct d'utiliser moins de mémoire et de traiter moins en même temps, mais je voudrais pouvoir laisser l'application les traiter plus rapidement si le périphérique peut le gérer. – cottonBallPaws
En outre, même avec l'idée d'utiliser moins de mémoire, quel est un chapeau idéal pour essayer de rester sous? – cottonBallPaws