/** Ċ Ġ* ĠDesign ed Ġand Ġdeveloped Ġby ĠAnd rea ĠC ioc care l li Ġ(@ ci oc care l lia ) Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġcom . ci oc care l lia . k sp ref sample . activities . main Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . util . Log Ċ import Ġandroid . widget . Button Ċ import Ġandroid . widget . TextView Ċ import Ġandroid . widget . Toast Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġcom . ci oc care l lia . k sp refs . Ks Prefs Ċ import Ġcom . ci oc care l lia . k sp refs . config . Encryption Type Ċ import Ġcom . ci oc care l lia . k sp refs . config . K sp Config Ċ import Ġcom . ci oc care l lia . k sp ref sample . App Ċ import Ġcom . ci oc care l lia . k sp ref sample . Build Config Ċ import Ġcom . ci oc care l lia . k sp ref sample . R Ċ import Ġcom . ci oc care l lia . k sp ref sample . activities . all . All Activity Ċ import Ġcom . ci oc care l lia . k sp ref sample . activities . amb iguous . Amb iguous Activity Ċ import Ġcom . ci oc care l lia . k sp ref sample . activities . batch . Batch Activity Ċ import Ġcom . ci oc care l lia . k sp ref sample . activities . dynamic . Dynamic Activity Ċ import Ġcom . ci oc care l lia . k sp ref sample . activities . json . Json Activity Ċ import Ġcom . ci oc care l lia . k sp ref sample . activities . numbers . Numbers Activity Ċ import Ġcom . ci oc care l lia . k sp ref sample . activities . observer . Observer Activity Ċ import Ġcom . ci oc care l lia . k sp ref sample . pref center . Start Counter Pref Center Ċ import Ġcom . ci oc care l lia . k sp ref sample . util . onClick De bounc ed Ċ Ċ class ĠMainActivity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġnumbers Ġby Ġlazy Ġ{ ĠfindViewById < Button >( R . id . numbers Activity ) Ġ} ĊĠĠĠ Ġprivate Ġval Ġjson Ġby Ġlazy Ġ{ ĠfindViewById < Button >( R . id . json Activity ) Ġ} ĊĠĠĠ Ġprivate Ġval Ġambiguous Ġby Ġlazy Ġ{ ĠfindViewById < Button >( R . id . amb igu os Char Activity ) Ġ} ĊĠĠĠ Ġprivate Ġval Ġbatch Ġby Ġlazy Ġ{ ĠfindViewById < Button >( R . id . batch Activity ) Ġ} ĊĠĠĠ Ġprivate Ġval Ġobserver Ġby Ġlazy Ġ{ ĠfindViewById < Button >( R . id . observer Activity ) Ġ} ĊĠĠĠ Ġprivate Ġval Ġdynamic Ġby Ġlazy Ġ{ ĠfindViewById < Button >( R . id . dynamic Activity ) Ġ} ĊĠĠĠ Ġprivate Ġval Ġall Ġby Ġlazy Ġ{ ĠfindViewById < Button >( R . id . all Activity ) Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġdetails Test View Ġby Ġlazy Ġ{ ĠfindViewById < TextView >( R . id . details Test View ) Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġstart Count Ġ= ĠStart Counter Pref Center . read () ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ main ) ĊĊĠĠĠĠĠĠĠ Ġval Ġdest inations Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnumbers Ġto ĠNumbers Activity :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġjson Ġto ĠJson Activity :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġambiguous Ġto ĠAmb iguous Activity :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbatch Ġto ĠBatch Activity :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġobserver Ġto ĠObserver Activity :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdynamic Ġto ĠDynamic Activity :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġall Ġto ĠAll Activity :: class . java , ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġdest inations . forEach Ġ{ Ġdestination Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdestination . first . onClick De bounc ed Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIntent ( this , Ġdestination . second ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġdetails Test View . text Ġ= Ġbuild String Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend (" Ks Prefs Ġ${ Build Config . VERSION _ NAME }") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend (" Ġ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend ("@ Ġ${ Build Config . VERSION _ CODE }") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend (", Ġ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend (" tg sdk Ġ${ com . ci oc care l lia . k sp ref sample . Build Config . compile Sdk }") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend (", Ġ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend (" Kotlin Ġ${ com . ci oc care l lia . k sp ref sample . Build Config . kotlin Version }") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend Line () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend ( App . prefs . internal Report ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠK s Prefs . internal Report () Ġ= Ġbuild String Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġconfig Ġ= ĠK sp Config (). apply ( App . global Config State Fx ) ĊĊĠĠĠĠĠĠĠ Ġappend Line (" Writing Ġon Ġ'$ namespace ' Ġusing Ġ${ config . charset }") ĊĠĠĠĠĠĠĠ Ġappend Line (" SP Ġmode Ġ${ config . mode }, Ġstrategy Ġ${ config . commit Strategy . name }, Ġautos ave Ġ${ config . auto Save }") ĊĊĠĠĠĠĠĠĠ Ġwhen Ġ( config . encryption Type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEncryption Type . Plain Text () Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġappend Line (" Saved Ġin Ġplaintext ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEncryption Type . Base 6 4 () Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġappend Line (" Encoded Ġin ĠBase 6 4 ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġappend Line (" Encrypted Ġusing Ġ${ config . encryption Type . java Class . simple Name }") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġappend Line (" Start Ġcount Ġ$ start Count ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġlog ( str : ĠString ) Ġ= ĠLog . d (" Ks Pref ", Ġstr ) ĊĠĠĠ Ġprivate Ġfun Ġtoast ( str : ĠString ) Ġ= ĊĠĠĠĠĠĠĠ ĠToast . makeText ( this , Ġstr , ĠToast . LENGTH _ SHORT ). show (). also Ġ{ Ġlog ( str ) Ġ} Ċ }