Xamarin Installerでインストール中に発生した問題と対策

Xamarin中に起きたエラーの回避方法です。

- Android SDK
- Xamarin.VisualStudio

のインストールに失敗しました。

# Android SDK
## エラーメッセージ
```
[2017-03-19 01:03:31.712] [Error] Attempt to unzip Android archive 'system-image-23-x86-google' found in <USER_HOME>\Temp\Xamarin\downloads\x86-23_r19.zip failed.
[2017-03-19 01:03:31.722] [Info] Status: failed.
[2017-03-19 01:03:31.732] [Error] Android SDK Platform API level 23, ABI x86, tag google_apis system image.
[2017-03-19 01:03:31.742] [Exception] Installation of Android SDK component 'system-image-23-x86-google' failed with exception.
[2017-03-19 01:03:31.742] [Exception] System.InvalidOperationException: Component installation failed
[2017-03-19 01:03:31.742] [Exception] 場所 Xamarin.Installer.AndroidSDK.AndroidComponentSystemImage.Install(String archivePath, String androidSdkRoot)
[2017-03-19 01:03:31.742] [Exception] 場所 Xamarin.Installer.AndroidSDK.AndroidSDKInstaller.InstallComponent(AndroidComponentBase component, AndroidSdkInstance instance)
[2017-03-19 01:03:31.752] [Info] Status: failed.
[2017-03-19 01:03:31.762] [Info] Status: failed.
[2017-03-19 01:03:31.771] [Exception] Installation of software item 'Android SDK' failed with exception.
[2017-03-19 01:03:31.771] [Exception] Xamarin.Web.Installer.InstallException: Failed to install Android archive. ---> System.InvalidOperationException: Component installation failed
[2017-03-19 01:03:31.771] [Exception] 場所 Xamarin.Installer.AndroidSDK.AndroidComponentSystemImage.Install(String archivePath, String androidSdkRoot)
[2017-03-19 01:03:31.771] [Exception] 場所 Xamarin.Installer.AndroidSDK.AndroidSDKInstaller.InstallComponent(AndroidComponentBase component, AndroidSdkInstance instance)
[2017-03-19 01:03:31.771] [Exception] 場所 Xamarin.Installer.AndroidSDK.AndroidSDKInstaller.InstallComponents[T](List`1 components, AndroidSdkInstance instance, String progressMessageFormat, Object[] args)
[2017-03-19 01:03:31.771] [Exception] 場所 Xamarin.Installer.AndroidSDK.AndroidSDKInstaller.InstallSystemImage(List`1 components, AndroidSdkInstance instance, String apiLevel, SystemImageSpec sis)
[2017-03-19 01:03:31.771] [Exception] 場所 Xamarin.Installer.AndroidSDK.AndroidSDKInstaller.Install(AndroidSdkInstance instance, InstallationSet installationSet)
[2017-03-19 01:03:31.771] [Exception] 場所 Xamarin.Web.Installer.Installer.AndroidSoftwareItem.Install(UInt32 tryNumber)
```

## 原因
- Install時に、フォルダへのアクセスが拒否されていた

## 対策
- エラーウインドウの「Once all the required components are selected (you can select others as well, if you wish) start the installation. Click here to open target dir」、「Click here」をクリックし、Android SDK toolsのexeへアクセス
- exeを管理者権限で実行
- 手動で、インストールを求められている以下のパッケージをDL
     - Android SDK Tools
     - Android SDK Platform-tools
     - Android SDK Build-tools
     - Android API 23

(そもそもXamarinInstallerを「管理者権限で実行」すれば、本エラーを発生させずに済むかもしれません)

# Xamarin.VisualStudio
## エラーメッセージ
```
Installation of 'Xamarin' failed with more than one exception (attempt 3)
Errors while installing items.
Exception type: System.AggregateException
Installation of archive 'C:\Users\Guess\AppData\Local\Temp\Xamarin\downloads\Xamarin.VisualStudio_4.3.0.789.msi' failed with exception.
Exception type: Xamarin.Web.Installer.InstallException
Full stack trace:
at Xamarin.Web.Installer.Installer.InstallationArchiveHandler.Install(String path, Boolean needsPrivileges)
at Xamarin.Web.Installer.Installer.BaseSoftwareItem.InstallDownloadedItem(String url, InstallationArchiveHandler handler, DownloadServiceWorkItem download)
at Xamarin.Web.Installer.Installer.BaseSoftwareItem.Install(UInt32 tryNumber)
at Xamarin.Web.Installer.Installer.XamarinVSSoftwareItem.Install(UInt32 tryNumber)
at WindowsInstaller.ProgressPage.InstallationWorker()
Installation of archive 'C:\Users\Guess\AppData\Local\Temp\Xamarin\downloads\Xamarin.VisualStudio_4.3.0.789.msi' failed with exception.
Exception type: Xamarin.Web.Installer.InstallException
Full stack trace:
at Xamarin.Web.Installer.Installer.InstallationArchiveHandler.Install(String path, Boolean needsPrivileges)
at Xamarin.Web.Installer.Installer.BaseSoftwareItem.InstallDownloadedItem(String url, InstallationArchiveHandler handler, DownloadServiceWorkItem download)
at Xamarin.Web.Installer.Installer.BaseSoftwareItem.Install(UInt32 tryNumber)
at Xamarin.Web.Installer.Installer.XamarinVSSoftwareItem.Install(UInt32 tryNumber)
at WindowsInstaller.ProgressPage.InstallationWorker()
Installation of archive 'C:\Users\Guess\AppData\Local\Temp\Xamarin\downloads\Xamarin.VisualStudio_4.3.0.789 .msi' failed with exception.
Exception type: Xamarin.Web.Installer.InstallException
Full stack trace:
at Xamarin.Web.Installer.Installer.InstallationArchiveHandler.Install(String path, Boolean needsPrivileges)
at Xamarin.Web.Installer.Installer.BaseSoftwareItem.InstallDownloadedItem(String url, InstallationArchiveHandler handler, DownloadServiceWorkItem download)
at Xamarin.Web.Installer.Installer.BaseSoftwareItem.Install(UInt32 tryNumber)
at Xamarin.Web.Installer.Installer.XamarinVSSoftwareItem.Install(UInt32 tryNumber)
at WindowsInstaller.ProgressPage.InstallationWorker()
```


## 対策
- Xamarin Installer PackageをDL
- インストール

不思議ですが、Installerパッケージを動かしたら、特に問題なくインストールが完了しました。