${SegmentFile}
Var libclasspath
Var SDK
Var User
${SegmentInit}
${ReadUserConfig} $0 SDK ;= User defined directory..
IfErrors +5
StrCmpS $0 "" +4
IfFileExists "$0\tools\bin\sdkmanager.bat" 0 +3
StrCpy $SDK `$0`
Goto +6
IfFileExists "$EXEDIR\App\AndroidStudio\sdk\tools\bin\sdkmanager.bat" 0 +3 ;= In the App directory..
StrCpy $SDK "$EXEDIR\App\AndroidStudio\sdk"
Goto +3
IfFileExists "$PortableAppsDirectory\CommonFiles\AndroidSDK\tools\bin\sdkmanager.bat" 0 +2 ;= Common files directory..
StrCpy $SDK "$PortableAppsDirectory\CommonFiles\AndroidSDK"
IfFileExists $SDK +6
ClearErrors
System::Call "advapi32::GetUserName(t.r0,*i${NSIS_MAX_STRLEN})i" ;= Grabs the current username..
StrCpy $User $0
IfFileExists "C:\Users\$User\AppData\Local\Android\sdk\tools\bin\sdkmanager.bat" +2 ;= Locally installed version..
StrCpy $SDK "C:\Users\$User\AppData\Local\Android\sdk"
${SetEnvironmentVariablesPath} PAL:SDK "$SDK"
!macroend
${SegmentPre}
${ForEachFile} "$0" "$1" "$EXEDIR\App\android-studio\lib\*.jar"
StrCpy $libclasspath "$libclasspath;lib\$1"
${NextFile}
${SetEnvironmentVariablesPath} PAL:libclasspath $libclasspath
!macroend
${SegmentPostPrimary}
;= Because adb.exe will linger after exit if used.
${IfThen} ${ProcessExists} adb.exe ${|} ${TerminateProcess} adb.exe $0 ${|}
!macroend