在计算机实验室环境中安装Android Studio,并在OSX上进行个人学生登录



我在主管理员帐户上安装了Android Studio,包括使用sdk管理器下载所有合适的sdk、工具等,并进一步安装genymotion。一切都设置好后,那台计算机被成像并部署到实验室的36台计算机上。当以主管理员身份登录时,一切都可以工作,但显然Android Studio喜欢将东西保存在用户的个人库中,因此没有其他用户的环境被适当设置。

我尝试将Android文件夹从/Users/main/Library复制到/Users/main/Shared文件夹,但我似乎无法避免必须通过设置向导并下载最新的API(我不想在课程中使用)。

实验室的工作方式是每个学生都有网络账号。任何学生都可以以标准用户的身份登录任何一台计算机,并对某些系统偏好进行有限的访问。如果一个学生要换电脑(我确实希望他们这样做,因为他们全年都应该与不同的合作伙伴一起工作),我不希望他们不得不重新下载我们将使用的两个api的所有sdk工具(19 &21)。

仅仅以主管理员身份登录并不是一个理想的解决方案,因为学生将无法访问包含个人文件存储的网络驱动器。

是否有办法设置Android Studio的多个用户帐户,其中一些有管理权限,其他具有标准用户权限?实验室里有36台运行优胜美地的2013年imac。

你能想出解决办法吗?

我正在处理相同的情况,但是我没有重新想象我的实验室,只是在现有的10.9实验室上安装软件+优胜美地更新。

我发现的工作,是将sdk文件夹放入用户模板(/System/user Templates/English.proj/Library/Android)。这将导致每个帐户约2.5GB,所以不是一个非常实用的解决方案,如果你有160Gb的磁盘像我。

我最后做的是在用户模板中创建智能链接。通过将sdk一次性存储在磁盘上(例如/Android/sdk),并将其链接到每个用户的配置文件中,Android Studio将按预期启动并工作,并且不会为每个用户占用宝贵的磁盘空间。

这是我在Apple Remote Desktop中使用的脚本,包括从网络共享中抓取android studio应用程序和sdk。

mkdir /Volumes/fs2/
echo "Mounting share"
mount_smbfs //user:pass@fs2/installs/ /Volumes/fs2/
echo "Copying Android studio Application"
cp -r /Volumes/fs2/software/MacOS/Android/Android Studio.app /Applications/
chmod -R 655 /Applications/Android Studio.app
chown -R root:wheel /Applications/Android Studio.app
mkdir /Android
echo "Copying Android sdk folders"
cp -r /Volumes/fs2/software/MacOS/Android/sdk /Android/
chmod -R 655 /Android/
chown -R root:wheel /Android/
umount /Volumes/fs2
echo "Linking sdk to user accounts"
for USER_TEMPLATE in "/System/Library/User Template"/*
do
    ln -s /Android $USER_TEMPLATE/Library/Android
done
for USER_HOME in /Users/*
do
  USER_UID=`basename "${USER_HOME}"`
  if [ ! "${USER_UID}" = "Shared" ]
  then
    ln -s /Android $USER_HOME/Library/Android
  fi
done

最新更新