package Ġcom . ang cy o . picker . media . bean Ċ Ċ import Ġandroid . provider . Media Store Ċ import Ġcom . ang cy o . u iv iew . utils . R Utils Ċ import Ġcom . ang cy o . u iv iew . utils . T _ Ċ Ċ /** Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 6 , æ·± åľ ³ å¸Ĥ çº¢ é¸ Ł ç½ĳç»ľ ç§ĳ æĬĢ èĤ¡ ä»½ æľī éĻĲ åħ¬åı¸ ĠAll Ġrights Ġreserved . Ċ Ġ* Ġ é¡¹çĽ® åĲįç§° ï¼ļ Ċ Ġ* Ġ ç±»çļĦ æııè¿° ï¼ļ åĬłè½½ åªĴ ä½ĵ çļĦ ä¸ĢäºĽ éħįç½® åıĤæķ° Ċ Ġ* ĠåĪĽå»º äººåĳĺ ï¼ļ Rob i Ċ Ġ* ĠåĪĽå»º æĹ¶éĹ´ ï¼ļ 2 0 1 8 / 0 6 / 1 5 Ġ 1 4 : 0 5 Ċ Ġ* Ġä¿®æĶ¹ äººåĳĺ ï¼ļ Rob i Ċ Ġ* Ġä¿®æĶ¹ æĹ¶éĹ´ ï¼ļ 2 0 1 8 / 0 6 / 1 5 Ġ 1 4 : 0 5 Ċ Ġ* Ġä¿®æĶ¹ å¤ĩ æ³¨ ï¼ļ Ċ Ġ* ĠVersion : Ġ 1 . 0 . 0 Ċ Ġ*/ Ċ class ĠMedia Loader Config Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ// åĽ¾çīĩ åĴĮ è§Ĩé¢ĳ , Ġ( éŁ³ é¢ĳ è¦ģ ä¸įè¦ģ æĶ¯æĮģ åĳ¢ ?) ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠLO ADER _ TYPE _ ALL Ġ= Ġ 1 ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠLO ADER _ TYPE _ IMAGE Ġ= Ġ 2 ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠLO ADER _ TYPE _ VIDEO Ġ= Ġ 3 ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠLO ADER _ TYPE _ AUDIO Ġ= Ġ 4 ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠLO ADER _ TYPE _ IMAGE _ VIDEO Ġ= Ġ 5 ĊĊĠĠĠĠĠĠĠ Ġ/** åįķ éĢī */ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠSELECT OR _ MODEL _ SINGLE Ġ= Ġ 1 ĊĠĠĠĠĠĠĠ Ġ/** å¤ļ éĢī */ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠSELECT OR _ MODEL _ MULTI Ġ= Ġ 2 ĊĊĠĠĠĠĠĠĠ Ġconst Ġval ĠF OLDER _ PATH _ AUDIO Ġ= Ġ" audio " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠF OLDER _ PATH _ IMAGE Ġ= Ġ" image " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠF OLDER _ PATH _ VIDEO Ġ= Ġ" video " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠF OLDER _ PATH _ ALL Ġ= Ġ" all " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠF OLDER _ PATH _ IMAGE _ VIDEO Ġ= Ġ" image _ video " ĊĊĠĠĠĠĠĠĠ Ġ// ä¸į éĻĲåĪ¶ æĸĩä»¶ å¤§å°ı ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠSIZE _ MODEL _ NONE Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġ// æī«æıı åªĴ ä½ĵ çļĦæĹ¶åĢĻ Ġ åĬł ä¸Ĭ å¤§å°ı éĻĲåĪ¶ æĿ¡ä»¶ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠSIZE _ MODEL _ MEDIA Ġ= Ġ 1 ĊĠĠĠĠĠĠĠ Ġ// éĢīæĭ© åªĴ ä½ĵ çļĦæĹ¶åĢĻ , ĠåĪ¤æĸŃ å¤§å°ı æĺ¯åĲ¦ åĲĪ éĢĤ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠSIZE _ MODEL _ SELECT OR Ġ= Ġ 2 ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġvar Ġmedia Loader Type Ġ= ĠLO ADER _ TYPE _ IMAGE ĊĊĠĠĠ Ġ/** æĺ¯åĲ¦ æĺ¾ç¤º åİŁ åĽ¾ æĮīéĴ® , Ġå¦Ĥæŀľ æĶ¯æĮģ å°± æīĵå¼Ģ , Ġ åĲ¦åĪĻ åħ³éĹŃ */ ĊĠĠĠ Ġvar Ġshow Origin Button Ġ= Ġfalse ĊĊĠĠĠ Ġ/** æľĢå¤§ éĢīæĭ© æķ°éĩı */ ĊĠĠĠ Ġvar Ġmax Selector Limit Ġ= Ġ 9 ĊĊĠĠĠ Ġ/** éĢīæĭ© æ¨¡å¼ı , Ġ å»ºè®® åįķ éĢī æ¨¡å¼ı ĠçĶ¨ Ġmax Selector Limit = 1 Ġ Ġ æİ§åĪ¶ */ ĊĠĠĠ Ġvar Ġselector Model Ġ= ĠSELECT OR _ MODEL _ MULTI ĊĊĠĠĠ Ġ/** æĺ¯åĲ¦ æĺ¾ç¤º ç¼ĸè¾ĳ æĮīéĴ® , Ġ çĽ®åīį åıª æĶ¯æĮģ åĽ¾çīĩ ç¼ĸè¾ĳ */ ĊĠĠĠ Ġvar Ġenable Image Edit Ġ= Ġtrue ĊĊĠĠĠ Ġ/** æĺ¾ç¤º æĭ į çħ§ æĮīéĴ® */ ĊĠĠĠ Ġvar Ġenable Camera Ġ= Ġtrue ĊĊĠĠĠ Ġ/** æĮĩå®ļ ç¼ĸè¾ĳ è¾ĵåĩº åĽ¾çīĩ çļĦ å®½åº¦ / é«ĺåº¦ */ ĊĠĠĠ Ġvar Ġoutput Image Width Ġ= Ġ 0 ĊĠĠĠ Ġvar Ġoutput Image Height Ġ= Ġ 0 ĊĊĠĠĠ Ġ/** éĻĲåĪ¶ æĸĩä»¶ å¤§å°ı æ¨¡å¼ı , Ġæ· · åĲĪ æĸĩä»¶ ç±»åŀĭ æĹ¶ Ġ æĹłæ³ķ è¿ĩæ»¤ , Ġ è¯· ä½¿çĶ¨ ĠSIZE _ MODEL _ SELECT OR Ġ*/ ĊĠĠĠ Ġvar Ġlimit FileSize Model Ġ= ĠSIZE _ MODEL _ NONE ĊĠĠĠ Ġ// kb ĊĠĠĠ Ġvar Ġlimit File Min Size Ġ= Ġ 0 f ĊĠĠĠ Ġ// kb ĊĠĠĠ Ġvar Ġlimit File MaxSize Ġ= Ġ 0 f ĊĊĠĠĠ Ġ/** æĺ¾ç¤º æĸĩä»¶ å¤§å°ı */ ĊĠĠĠ Ġvar Ġshow FileSize Ġ= Ġfalse ĊĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġæ· · åĲĪ éĢīæĭ© æ¨¡å¼ı ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠLO ADER _ TYPE _ ALL ĠĠĠĠ Ġ-- éĥ½ èĥ½ éĢī ĊĠĠĠĠ Ġ* ĠLO ADER _ TYPE _ IMAGE ĠĠ Ġ-- ä¸»è¦ģ éĢīæĭ© åĽ¾çīĩ , Ġ åħ¶ä»ĸ åıªèĥ½ éĢīæĭ© åįķ ä¸ª ĊĠĠĠĠ Ġ* ĠLO ADER _ TYPE _ VIDEO ĠĠ Ġ-- ä¸»è¦ģ éĢīæĭ© è§Ĩé¢ĳ , Ġ åħ¶ä»ĸ åıªèĥ½ éĢīæĭ© åįķ ä¸ª ĊĠĠĠĠ Ġ* ĠLO ADER _ TYPE _ AUDIO ĠĠ Ġ-- ä¸»è¦ģ éĢīæĭ© éŁ³ é¢ĳ , Ġ åħ¶ä»ĸ åıªèĥ½ éĢīæĭ© åįķ ä¸ª ĊĠĠĠĠ Ġ* ĠLO ADER _ TYPE _ IMAGE _ VIDEO Ġ Ġ-- åĽ¾çīĩ åĴĮ è§Ĩé¢ĳ éĥ½ èĥ½ éĢī , Ġ åħ¶ä»ĸ åıªèĥ½ éĢīæĭ© åįķ ä¸ª ĊĠĠĠĠ Ġ* Ġ*/ ĊĠĠĠ Ġvar Ġmix Selector Model Ġ= ĠLO ADER _ TYPE _ ALL ĊĠĠĠ Ġ/** éĿŀ æ·· åĲĪ æ¨¡å¼ı ä¸ĭ , Ġåı¯ä»¥ éĢīæĭ© è§Ĩé¢ĳ çļĦ æķ°éĩı */ ĊĠĠĠ Ġvar Ġmax Selector Video Limit Ġ= Ġ 1 ĊĠĠĠ Ġvar Ġmax Selector Audio Limit Ġ= Ġ 1 ĊĊĠĠĠ Ġ/** æĺ¯åĲ¦ æĺ¯ å¤ļ éĢī æ¨¡å¼ı */ ĊĠĠĠ Ġfun Ġis Multi Model (): ĠBoolean Ġ= Ġselector Model Ġ== ĠSELECT OR _ MODEL _ MULTI ĊĊĠĠĠ Ġ/** æĺ¯åĲ¦ åı¯ä»¥ éĢī ä¸Ń æĸĩä»¶ */ ĊĠĠĠ Ġfun Ġcan Selector File ( file Size : ĠLong ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( limit FileSize Model Ġ== ĠSIZE _ MODEL _ SELECT OR ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( limit File Min Size Ġ== Ġ 0 f Ġ&& Ġlimit File MaxSize Ġ== Ġ 0 f ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( limit File Min Size Ġ> Ġ 0 f Ġ&& Ġlimit File MaxSize Ġ> Ġ 0 f ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠfileSize Ġ* Ġ 1 f Ġ/ Ġ 1 0 2 4 Ġin Ġlimit File Min Size .. limit File MaxSize ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠT _. error (" æĸĩä»¶ å¤§å°ı éľĢè¦ģ åľ¨ Ġ${ R Utils . format FileSize (( limit File Min Size Ġ* Ġ 1 0 2 4 ). to Long ()) } ~ ${ R Utils . format FileSize (( limit File MaxSize Ġ* Ġ 1 0 2 4 ). to Long ()) } Ġ ä¹ĭéĹ´ ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( limit File Min Size Ġ> Ġ 0 f ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠfileSize Ġ* Ġ 1 f Ġ/ Ġ 1 0 2 4 Ġ>= Ġlimit File Min Size ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠT _. error (" æĸĩä»¶ å¤§å°ı éľĢè¦ģ å¤§äºİ Ġ${ R Utils . format FileSize (( limit File Min Size Ġ* Ġ 1 0 2 4 ). to Long ()) }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( limit File MaxSize Ġ> Ġ 0 f ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠfileSize Ġ* Ġ 1 f Ġ/ Ġ 1 0 2 4 Ġ<= Ġlimit File MaxSize ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠT _. error (" æĸĩä»¶ å¤§å°ı éľĢè¦ģ å°ı äºİ Ġ${ R Utils . format FileSize (( limit File MaxSize Ġ* Ġ 1 0 2 4 ). to Long ()) }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠgetFile Selector Selection (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( limit FileSize Model Ġ== ĠSIZE _ MODEL _ MEDIA ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( limit File Min Size Ġ== Ġ 0 f Ġ&& Ġlimit File MaxSize Ġ== Ġ 0 f ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( limit File Min Size Ġ> Ġ 0 f Ġ&& Ġlimit File MaxSize Ġ> Ġ 0 f ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ" ĠAND Ġ${ Media Store . Files . File Columns . SIZE } < =${ limit File MaxSize Ġ* Ġ 1 0 2 4 } ĠAND Ġ${ Media Store . Files . File Columns . SIZE }> =${ limit File Min Size Ġ* Ġ 1 0 2 4 }" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( limit File Min Size Ġ> Ġ 0 f ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ" ĠAND Ġ${ Media Store . Files . File Columns . SIZE }> =${ limit File Min Size Ġ* Ġ 1 0 2 4 }" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( limit File MaxSize Ġ> Ġ 0 f ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ" ĠAND Ġ${ Media Store . Files . File Columns . SIZE } < =${ limit File MaxSize Ġ* Ġ 1 0 2 4 }" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġ"" ĊĠĠĠ Ġ} Ċ }