如何在Windows上静默地为所有用户安装Android SDK?

时间:2017-09-04 13:57:08

标签: android android-studio android-sdk-2.3

android-studio-bundle-162.4069837-windows.exe / S

正在将Android studio安装到c:\ program files \ android \ android studio。和SDK到%localappdata%\ android \ sdk。

在某些论坛中,提到使用/ AllUsers为所有用户安装SDK。

我试过了 android-studio-bundle-162.4069837-windows.exe / S / AllUsers android-studio-bundle-162.4069837-windows.exe / S / ALLUSERS

但没有用,它只是安装到localappdata。

即使使用/ S,即使配置完毕,我也会在每次启动时都看到SDK丢失。

我只尝试了没有SDK的工作室安装

https://developer.android.com/studio/index.html

“C:\ Users \ uday \ Downloads \ android-studio-ide-162.4069837-windows.exe”/ S

通过快捷方式启动,我将SDK安装到programdata,并为该文件夹的所有用户授予完全权限。

如果我看到设置在c:\ users \ username.Android和.AndroidStudio2.3文件夹中。

但是相同的文件夹,如果我复制到其他用户,它只将SDK文件夹作为程序数据,但在未检测到SDK的情况下给出提示,需要再次下载,即使我跳过它并转到设置,它显示为空指向同一个文件夹。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

似乎没有任何内置方法可以做到,但这就是我所做的。因人而异。另外,我从教室的角度来做这件事,在那里学生用户档案在重新启动时被清除。

安装A.S. 3.0.x的。

以受限用户身份登录(无管理员权限)。 运行A.S.,进入设置,并将SDK位置更改为(示例)c:\ AndroidStudioSDK。确保您以受限用户身份创建了此文件夹。

完全更新,安装所需的SDK和组件,并构建项目,解决所有缺失的组件和问题。

档案>使缓存无效并单击无效。然后文件>导出设置,并将其保存到桌面。然后从用户的主文件夹中删除或移动以下文件夹:.android,.AndroidStudio3.0和.Gradle。 运行A.S.但取消向导,选择不要重新运行设置向导,单击配置>导入设置,然后从桌面导入 settings.jar 文件。重新启动后,您可以点击配置> SDK Manager 以验证它是否仍然指向您的自定义位置。

关闭A.S.,然后将(现在很小的) .android .AndroidStudio3.0 文件夹复制到 c:\ users \ default

瞧。登录的任何新用户都应具有指向位于中心的SDK文件夹的就绪环境。您可以将SDK文件夹和默认用户文件夹复制到每台实验室PC。

我已经包含了部署时使用的(已清理的)Windows批处理文件。

希望这有帮助。

@echo off
cd /d %0\.. & color 0e & setlocal

::this code assumes that 7zip is installed at "%ProgramFiles%\7-zip\7z.exe"

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
set "installer=android-studio-ide-171.4443003-windows.exe"
set "SDKfolder=AndroidStudioSDK"
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

ECHO %installer%
ECHO.
ECHO Installing Android Studio...
%installer% /S

netsh advfirewall firewall add rule Name="OpenJDK Platform binary" Program="C:\Program Files\Android\Android Studio\jre\bin\java.exe" Description="Part of Android Studio" Action=Allow Direction=In Protocol=6
netsh advfirewall firewall add rule Name="OpenJDK Platform binary" Program="C:\Program Files\Android\Android Studio\jre\bin\java.exe" Description="Part of Android Studio" Action=Allow Direction=In Protocol=17

::Install Intel HAXM
cmd /c %CD%\HAXM\silent_install.bat

::Install Default user files
"%ProgramFiles%\7-zip\7z.exe" x userfolders.7z -o%CD% -y
set "defaultUserDir=%SystemDrive%\Users\Default"
if exist %defaultUserDir%\.android (rmdir /s /q %defaultUserDir%\.android)
if exist %defaultUserDir%\.AndroidStudio3.0 (rmdir /s /q %defaultUserDir%\.AndroidStudio3.0)
move %CD%\.android %SystemDrive%\Users\Default
move %CD%\.AndroidStudio3.0 %SystemDrive%\Users\Default

::Install SDK files
"%ProgramFiles%\7-zip\7z.exe" x %SDKfolder%.7z -o%CD% -y
if exist %SystemDrive%\%SDKfolder% (rmdir /s /q %SystemDrive%\%SDKfolder%)
move %CD%\%SDKfolder% %SystemDrive%\

timeout 9
:END
color & endlocal
EXIT 0