package Ġorg . xt im ms . ride bus . ui . more Ċ Ċ import Ġandroidx . preference . Preference Screen Ċ import Ġorg . xt im ms . ride bus . Build Config Ċ import Ġorg . xt im ms . ride bus . R Ċ import Ġorg . xt im ms . ride bus . ui . base . controller . No AppBar Elevation Controller Ċ import Ġorg . xt im ms . ride bus . ui . base . controller . with Fade Transaction Ċ import Ġorg . xt im ms . ride bus . ui . more . licenses . License s Controller Ċ import Ġorg . xt im ms . ride bus . ui . setting . Settings Controller Ċ import Ġorg . xt im ms . ride bus . util . Crash Log Util Ċ import Ġorg . xt im ms . ride bus . util . lang . to DateTime stamp String Ċ import Ġorg . xt im ms . ride bus . util . preference . add Ċ import Ġorg . xt im ms . ride bus . util . preference . onClick Ċ import Ġorg . xt im ms . ride bus . util . preference . preference Ċ import Ġorg . xt im ms . ride bus . util . preference . title Res Ċ import Ġorg . xt im ms . ride bus . util . system . copy To Clipboard Ċ import Ġjava . text . DateFormat Ċ import Ġjava . text . SimpleDateFormat Ċ import Ġjava . util .* Ċ Ċ class ĠAbout Controller Ġ: ĠSettings Controller (), ĠNo AppBar Elevation Controller Ġ{ ĊĊĠĠĠ Ġprivate Ġval ĠdateFormat : ĠDate Format Ġ= Ġpreferences . date Format () ĊĊĠĠĠ Ġoverride Ġfun Ġsetup Preference Screen ( screen : ĠPreference Screen ) Ġ= Ġscreen . apply Ġ{ ĊĠĠĠĠĠĠĠ Ġtitle Res Ġ= ĠR . string . pref _ category _ about ĊĊĠĠĠĠĠĠĠ Ġadd ( About Header Preference ( context )) ĊĊĠĠĠĠĠĠĠ Ġpreference Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġkey Ġ= Ġ" pref _ about _ build _ info " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Res Ġ= ĠR . string . build _ info ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsummary Ġ= Ġ"${ get Formatted Build Time ()} Ġ(${ Build Config . COMMIT _ SHA })" ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġpreference Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġkey Ġ= Ġ" pref _ about _ copy _ debug _ info " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Res Ġ= ĠR . string . copy _ debug _ info ĊĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdevice Info Ġ= ĠCrash Log Util ( it ). get Debug Info () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . copy To Clipboard (" Debug Ġinformation ", Ġdevice Info ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġpreference Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġkey Ġ= Ġ" pref _ about _ licenses " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Res Ġ= ĠR . string . licenses ĊĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrouter . push Controller ( License s Controller (). with Fade Transaction ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġadd ( About Links Preference ( context )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget Formatted Build Time (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinput Df Ġ= ĠSimpleDateFormat (" yyyy - MM - dd ' T ' HH : mm ' Z '", ĠLocale . US ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinput Df . time Zone Ġ= ĠTime Zone . getTime Zone (" UTC ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbuild Time Ġ= Ġinput Df . parse ( Build Config . BUILD _ TIME ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġoutput Df Ġ= ĠDate Format . get DateTime Instance ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDate Format . MEDIUM , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDate Format . SHORT , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLocale . getDefault () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoutput Df . time Zone Ġ= ĠTime Zone . getDefault () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuild Time !!. to DateTime stamp String ( date Format ) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBuild Config . BUILD _ TIME ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ