package Ġpt . mob iles word . silent update . strategy Ċ Ċ import Ġandroid . os . Handler Ċ import Ġpt . mob iles word . silent update . core .* Ċ import Ġjava . io . File Ċ Ċ /** Ċ Ġ* ĠTraffic Ġsituation Ċ Ġ*/ Ċ internal Ġclass ĠMobile Update Strategy Ġ: ĠUpdate Strategy Ġ{ ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġ// After Ġthe Ġdownload Ġis Ġcomplete ĊĠĠĠĠĠĠĠ ĠDown Load Center . on Download Complete Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠHandler (). post Delayed ({ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġactivity Ġ= ĠContext Center . get Top Activity () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . show Install Dialog ( it )// Show Ġinstallation Ġpopup ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠContext Center . get AppContext (). open A pk By FilePath ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġ 2 0 0 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// Upgrade Ġoperation Ġin Ġthe Ġcase Ġof Ġtraffic ĊĠĠĠ Ġoverride Ġfun Ġupdate ( apk Url : ĠString , Ġlatest Version : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġapk Url . check Update Url () ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠContext Center . get AppContext () ĊĠĠĠĠĠĠĠ Ġval Ġactivity Ġ= ĠContext Center . get Top Activity () ĊĠĠĠĠĠĠĠ Ġval ĠfileName Ġ= Ġ"${ context . get AppName ()} _ v $ latest Version . apk " ĊĠĠĠĠĠĠĠ Ġval Ġpath Ġ= ĠConst . UPDATE _ FILE _ DIR Ġ+ ĠfileName ĊĠĠĠĠĠĠĠ Ġval ĠtaskId Ġ= ĠS PC enter . get Download TaskId () ĊĊĠĠĠĠĠĠĠ Ġlo ge (" Ġ[ task ID =$ taskId ãĢĳ ") ĊĠĠĠĠĠĠĠ Ġif Ġ( File ( path ). isFile Exist ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlo ge (" Ġ[ This Ġfile Ġalready Ġexists ãĢĳ ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Down Load Center . is Down Task Success ( taskId )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlo ge (" Ġ[ The Ġtask Ġhas Ġbeen Ġdownloaded ãĢĳ ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . show Install Dialog ( File ( path )) Ġ// pop Ġup Ġdialog ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( Down Load Center . is Down Task Pause ( taskId )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlo ge (" Ġ[ The Ġtask Ġhas Ġbeen Ġsus pended ãĢĳ ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Start Ġdownload ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlo ge (" Ġ[ Continue Ġdownload ãĢĳ ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDown Load Center . add Request ( apk Url , ĠfileName , Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( Down Load Center . is Down Task Processing ( taskId )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlo ge (" Ġ[ The Ġtask Ġis Ġbeing Ġexecuted ãĢĳ ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . show Install Dialog ( File ( path )) Ġ// pop Ġdialog ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlo ge (" Ġ[ Show Ġdownload Ġpopup ãĢĳ ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . show Download Dialog ( apk Url , ĠfileName ) Ġ// Show Ġdownload Ġpopup ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊ Ċ } Ċ