Webアプリ開発環境作ってみた(3) - React Native(3)

[前回](https://qiita.com/KororonX/items/5ef5590b78bd5045f0fa)の続きです。今回はAndroid Studioのセットアップ編です。Android Studio起動後の設定は、OSによらないので[書籍 React Native](https://www.amazon.co.jp/React-Native-JavaScript%E3%81%AB%E3%82%88%E3%82%8BiOS-Android%E3%82%A2%E3%83%97%E3%83%AA%E9%96%8B%E7%99%BA%E3%81%AE%E5%AE%9F%E8%B7%B5-%E9%AB%99%E6%9C%A8/dp/4297113910/)の内容に沿って実施してみました。

引き続き、以下のページを参考にさせていただきました。
[React Native の開発環境を整える（React Native開発実践～第0回）](https://qiita.com/EBIHARA_kenji/items/2f6938c4fda7cecbeb19)

### インストール
chocolateyを使用してインストール。インストール自体は完了した扱いになっているようだが、インストーラーからは終了コード1223が返されたとのログが。
~~~
d:\>choco install androidstudio -y
Chocolatey v2.2.2
Installing the following packages:
androidstudio
By installing, you accept licenses for the packages.
Progress: Downloading AndroidStudio 2022.3.1.21... 100%

androidstudio v2022.3.1.21 [Approved]
androidstudio package files install completed. Performing other installation steps.
Using system proxy server 'XXX.XXX.XXX.XXX:XXX'.
Downloading AndroidStudio 64 bit
  from 'https://redirector.gvt1.com/edgedl/android/studio/install/2022.3.1.21/android-studio-2022.3.1.21-windows.exe'
Using system proxy server 'XXX.XXX.XXX.XXX:XXX'.
Progress: 100% - Completed download of C:\Users\XXXX\AppData\Local\Temp\chocolatey\AndroidStudio\2022.3.1.21\android-studio-2022.3.1.21-windows.exe (1.05 GB).
Download of android-studio-2022.3.1.21-windows.exe (1.05 GB) completed.
Hashes match.
Installing AndroidStudio...
WARNING: Exit code '1223' was considered valid by script, but not as a Chocolatey success code. Returning '0'.
AndroidStudio has been installed.
Added C:\ProgramData\chocolatey\bin\studio64.exe shim pointed to 'c:\program files\android\android studio\bin\studio64.exe'.
  androidstudio may be able to be automatically uninstalled.
Environment Vars (like PATH) have changed. Close/reopen your shell to
 see the changes (or in powershell/cmd.exe just type `refreshenv`).
 The install of androidstudio was successful.
  Software installed as 'exe', install location is likely default.

Chocolatey installed 1/1 packages.
 See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).

d:\>
~~~

インストール済のアプリ一覧を確認すると、一応表示される。
~~~
d:\>choco list
Chocolatey v2.2.2
adoptopenjdk 8.192.0
androidstudio 2022.3.1.21
chocolatey 2.2.2
chocolatey-compatibility.extension 1.0.0
chocolatey-core.extension 1.4.0
chocolatey-dotnetfx.extension 1.0.1
chocolateygui 2.1.0
chocolatey-windowsupdate.extension 1.0.5
dotnetfx 4.8.0.20220524
KB2919355 1.0.20160915
KB2919442 1.0.20160915
KB2999226 1.0.20181019
KB3033929 1.0.5
KB3035131 1.0.3
nvm 1.1.9
nvm.install 1.1.11
python3 3.12.0
python312 3.12.0
vcredist140 14.36.32532
vcredist2015 14.0.24215.20170201
yarn 1.22.19
21 packages installed.

d:\>
~~~

詳細は不明だけどとりあえず先に進むことに。

### 起動
[参考](https://qiita.com/EBIHARA_kenji/items/2f6938c4fda7cecbeb19)ページの記載と異なり、インストールしてもAndroid Studioは自動起動しなかった。なので、手動で起動。

### 休憩
choco installの出力を見ると、「Close/reopen your shell to see the changes (or in powershell/cmd.exe just type `refreshenv`」と書いてある。PATHなどの環境変数を変更したら、これまでコマンドプロンプトとかは開き直して反映させていたけど、refreshenvコマンドを実行すると、開いたまま最新の環境変数に設定し直しができた。知らなかった～。

### 初回起動～Welcome画面まで
いよいよAndroid Studioを起動。キリンさんのスプラッシュの上に、「Help improve Android Studio」ウィンドウが。とりあえず「Don't send」を選択。

![1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3622594/570f0c18-62ff-1d17-f85b-d54906f493af.png)
<br>
セットアップウィザードが開始。Android SDKがセットアップされていないとかで、メッセージが表示される。そこには「Setup Proxy」ボタンが。ほかのツール同様、プロキシ設定は必要そうなので、ボタンをクリック。

![2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3622594/37542bad-9ee4-ae53-7973-de7df44b2e0d.png)
<br>
プロキシの自動設定スクリプトが提供されているので、そのURLを指定し「OK」。

![3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3622594/ed51f8a1-7ebc-44f2-7b44-0fa6ee658d3f.png)
<br>
やっとウィザードのスタート。メッセージを流し読みし「Next」をクリック。

![4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3622594/c83c3089-5da4-32ac-36ce-391e8ef750e8.png)
<br>
インストールタイプはわからないので、既定で選択されている「Standard」のまま「Next」を。

![5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3622594/b274de33-1dfe-99c2-42e5-ee10ae9c4078.png)
<br>
UIテーマも既定のまま「Next」。

![6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3622594/29edb034-4d63-4759-fd87-fd1b101e7e17.png)
<br>
設定を確認。といってもいいのかどうかわからないけど。とりあえず「Finish」で設定開始。

![7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3622594/3ede97ea-1fb7-36d6-2d6a-599f051c0c6a.png)
<br>
しばらくすると、なんかよくない感じの表示が。

![8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3622594/9eaf4c8f-0cc3-c37b-4416-ee7ab73f45f6.png)

「Nothing to do!」って？SDKがないからインストールするんじゃなかったの？「up to date」とか書いてあるし。。。どっちにしてもこれ以上ここではやることがないので、「Finish」で終了。とりあえずWelcome画面に到着。

![9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3622594/ff8eb002-f05b-2fd2-a7a5-f4b4d811801d.png)
<br>
### SDKがインストールできない!?
さっきのメッセージからは、Android SDKがインストールできていない様子。とりあえずWelCome画面の真ん中に「More Actions」と書いてあるので、そこをクリックしてみる。そうすると、表示された選択項目に「SDK Manager」の文字が。

![10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3622594/93d48eec-63db-48c3-2817-212f90eeaab9.png)
<br>
SDKインストールの問題ならこれか？と選択。そうするとAndroid SDKのSettingウィンドウが。
いろんなバージョンのSDKらしき一覧が見えるが、いずれも選択できない。また赤い！が表示されている。
どうやらAndroid SDKのインストール先指定がよくないようなメッセージに読めるので、「Android SDK Location」入力欄右の「Edit」をクリック。そしたらSDK Component Setupウィンドウが表示される。

![12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3622594/6ba80970-875a-a167-7dcf-7f7d2fc3cd10.png)
<br>
セットアップ対象として表示されているAndroid SDKには「(unavailable)」というのがくっついている。なんかうまくいっていなさそうだが、さっきのエラーの原因だったと思われる「Android SDK Location」には、悪くなさそうなパスが設定されている。「Next」ボタンも操作できそうなので、クリック。やはりだめなようだ。

![13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3622594/db285b7a-34b7-664a-0476-9fbe7f6f1e33.png)
<br>
必要なコンポーネントが利用できないって書いてあるようだけど。。。SDKに必要なコンポーネントって？頭の中は？？？だらけだったが、とりあえずメッセージを閉じる。そうすると再び「Verify Settings」「Downloading Components」を経て、何もインストールされずに「Settings」に戻ってきた。表示は元のまま。

![11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3622594/ab6936c8-2090-3f12-87ba-e646073b56bb.png)
<br>
リソースにアクセスできていないようなので、再度プロキシの設定を確認することに。Settingの中からその個所を探す。「HTTP Proxy」の設定が見つかった。最初に設定した自動構成スクリプトが指定されていた。それを読めてないのかなと、今度はプロキシを直接指定することに。

![14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3622594/3d06ab46-0993-c0d6-8ff2-0694d01b746f.png)
<br>
今度はつながることを確認しようと「Check connection」をクリック。ダイアログの接続先にGoogleのページを指定し、つながることを確認。

![15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3622594/b21442b9-4900-d8f6-1512-8de13bf36314.png)
![16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3622594/64c4c2a4-1dae-65d6-2843-e68215c414ba.png)
<br>
再び「Android SDK」に戻ってやってみるが、結果は同じ。どうしてもSDKがインストールできない。困った。。。

いったん終了し、手掛かりを探すことに。