no-image

【Linux】React Nativeの初期設定(android開発用の環境構築)

React Nativeの初期設定が微妙にややこしい上に
必要のないものまでインストールさせる記事が多かったので
最小で済むような方法をメモ。

nodenvとnode.jsのインストール

まずはnodenvとnode.jsをインストール。

nodenvって何よ?

node.jsのバージョンを手軽に切り替えられる便利系ライブラリ。
バージョンの差異で色々と動かなかったりするので導入を推奨。

git clone https://github.com/riywo/anyenv ~/.anyenv

bashの人

echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(anyenv init -)"' >> ~/.bash_profile
exec $SHELL -l

zshの人

echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(anyenv init -)"' >> ~/.zshrc
exec $SHELL -l

共通の操作

anyenv install --init
anyenv install nodenv
exec $SHELL -l

これでnodenvのインストールは完了したので
あとはnode.jsのインストール

nodenv install -l # バージョンの確認、とりあえず8安定なので8の最新で話を進める
nodenv install 8.16.0

nodenv global 8.16.0

プロジェクトごとにnodeのバージョンを切り替えたいときには
nodenv installで切り替え先のバージョンのnodeをインストールしておいてから
nodenv local ○.○.○というようにすればOK。

react-native-cliのインストール

nodeのインストールが完了したら
npmというコマンドが利用可能になっているので
そのコマンドを利用してreact-native-cliをインストールしておく

npm -g install react-native-cli

【鬼門】Oracle JDK 8のインストール

一番詰みがちなポイント。

公式ではOpenJDK 8でもOKと言っているが
全然駄目で、実際にはOracle JDK 8でないとかなり不安定。

ライセンスが変更になる直前のバージョンのインストール方法を
別記事の中に書いたので参照して貰いたい。

【令和版】Ubuntuの初期設定【日本語入力、zshの導入など】

android SDKのインストール

公式や他の記事ではandroid studioのインストールを勧められているが
インストールするのはSDKだけで問題ない。

sudo apt install unzip
cd ~
wget https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip
unzip sdk-tools-linux-4333796.zip
rm sdk-tools-linux-4333796.zip

mkdir android-sdk
mv tools android-sdk/tools
mkdir .android
touch .android/repositories.cfg

.zshrcか.bash_profileに下記を追記

export ANDROID_HOME=$HOME/android-sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools

追記したら設定を再読込

source ~/.bash_profile # bashの人用
source ~/.zshrc # zshの人用

インストール可能なSDKの一覧を取得しておく

sdkmanager --list

・・・多分表示が多すぎて表示しきれないと思うので結論だけ書くと
要は下記を打ち込めばOK

sdkmanager "platform-tools" "platforms;android-28"

 

参考:https://stackoverflow.com/questions/34556884/how-to-install-android-sdk-on-ubuntu

エミュレータを使いたい場合

エミュレータを使いたい場合には
とりあえずイメージファイルをダウンロードして

sdkmanager "system-images;android-29;google_apis_playstore;x86_64"

android仮想デバイスを作る

avdmanager create avd --force --name myTestDevice --abi google_apis_playstore/x86_64 --package 'system-images;android-29;google_apis_playstore;x86_64' --name "myTestDevice" --device "pixel"

(”pixel”の部分は「avdmanager list device」から好きなデバイスを選択しておく)

 

kvmをインストールして

sudo apt install qemu-kvm libvirt-clients libvirt-daemon-system bridge-utils virt-manager

グループに追加したり色々して(usernameの部分は適宜書き換える)

sudo adduser username libvirt
sudo adduser username libvirt-qemu

.bash_profile(.zshrc)に下記を追記

alias emu="$ANDROID_HOME/tools/emulator"

最後に作成したavdを起動

emulator -list-avds # 作成に成功していればavdの名前が表示される
emulator -avd myTestDevice -qemu -m 2048 -enable-kvm

Watchmanのインストール

これは公式そのままだと
Debianではmakeに失敗するのでひと工夫が必要(Ubuntuの人は公式そのままで大丈夫)

sudo apt install libssl-dev libtool pkg-config python-dev # Debian
git clone https://github.com/facebook/watchman.git
cd watchman
git checkout v4.9.0 # the latest stable release
./autogen.sh
./configure --enable-lenient
make
sudo make install

 

以上!!