package Ġcom . xiao jin zi . component . cache Ċ Ċ import Ġandroid . app . Activity Manager Ċ import Ġandroid . content . Context Ċ import Ġcom . xiao jin zi . component . support . Utils Ċ Ċ /** Ċ Ġ* Ġ æŀĦå»º Ġ[ Cache ] ĠæĹ¶ , ä½¿çĶ¨ Ġ[ Cache Type ] Ġä¸Ń å£°æĺİ çļĦ ç±»åŀĭ , æĿ¥ åĮº åĪĨ ä¸įåĲĮçļĦ æ¨¡åĿĹ Ċ Ġ* Ġä»İ èĢĮ ä¸º ä¸įåĲĮçļĦ æ¨¡åĿĹ æŀĦå»º ä¸įåĲĮçļĦ ç¼ĵåŃĺ çŃĸçķ¥ Ċ Ġ*/ Ċ interface ĠCache Type Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCLASS _ CACHE _ TYPE _ ID Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġval ĠCLASS _ CACHE : ĠCache Type Ġ= Ġobject Ġ: ĠCache Type Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval ĠMAX _ SIZE Ġ= Ġ 2 5 ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġval Ġcache TypeId : ĠInt ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġget () Ġ= ĠCLASS _ CACHE _ TYPE _ ID ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcalculate Cache Size ( context : ĠContext ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠUtils . check Null Pointer ( context , Ġ" context ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġactivity Manager Ġ= Ġcontext . getSystem Service ( Context . ACTIVITY _ SERVICE ) Ġas ĠActivity Manager ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtarget Memory Cache Size : ĠInt Ġ= Ġif Ġ( Utils . is Low Memory Device ( activity Manager )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Manager . memory Class Ġ/ Ġ 6 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Manager . memory Class Ġ/ Ġ 4 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( target Memory Cache Size Ġ> ĠMAX _ SIZE ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMAX _ SIZE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġtarget Memory Cache Size ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġè¿ĶåĽŀ æ¡Ĩæŀ¶ åĨħ éľĢè¦ģ ç¼ĵåŃĺ çļĦ æ¨¡åĿĹ å¯¹åºĶçļĦ Ġ` id ` ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġcache TypeId : ĠInt ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ è®¡ç®Ĺ å¯¹åºĶ æ¨¡åĿĹ éľĢè¦ģ çļĦ ç¼ĵåŃĺ å¤§å°ı ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġcalculate Cache Size ( context : ĠContext ): ĠInt Ċ Ċ }