PR

いよいよ開発Expo! WindowsでiOSアプリ開発~環境構築編~

expo-ios-eyecatch プログラミング
記事内に広告が含まれています。
スポンサーリンク

前回の続きで、Mac無しでiOSアプリ開発の環境構築編です。

今回はWindowsマシンでiOSアプリの開発を進めるために環境構築を行っていきます。

この記事はこんな方におすすめ
  • iPhoneのアプリを開発してみたい
  • 手元にはWindows PCしかない
  • 開発のためだけにAppleのPCを買うのは避けたい

前提条件

実行環境

 Windows11のPC とiPhone13を使って進めていきます。

使用するツール

主に使用するのは次の2つのツールです。

React Native

こちらは前回の記事で触れていますが、React Native を使用してJavaScriptベースでiOSとAndroid両方のプラットフォーム向けにアプリ開発をしていきます。

私はiPhone向けにリリース・使用したいのでAndroidでの動作確認などは直近しない予定です。

Expo

React Nativeのアプリ開発を容易にするためのプラットフォーム。

これを使うことで手元のスマホ(iPhoneでもAndroidでも)、QRコードを読み込むだけでアプリをテストできるようです。

Windows PCへのNode.jsのインストール

React NativeはJavaScriptを使用するので、JavaScript実行環境の1つであるNode.jsをインストールします。

https://nodejs.org/enからインストーラをダウンロードして実行し、インストール。

コマンドプロンプトを起動して次のコマンドを打つとバージョンが表示されました。

途中でコマンドプロンプトのようなものが立ち上がって、「続行するにはキーを押してください」というようなメッセージが表示されました。

最初、私はエンターを2回ほど押しても変化が無かったので、Xボタンで閉じてしまったのですが、必要なパッケージなどがインストールされないようです。私はインストーラでインストールを進める際に必要なパッケージを自動でインストールする旨のチェックボックスにチェックを入れたのでこのような動作になっているのだと思います。

何かキーを押してコマンドプロンプトの進行を待っていると管理者権限でWindows PowerShellが立ち上がって必要なパッケージをインストールしてくれます。

因みに、最初はPowerShellでうまくいきませんでした。

このエラーは、PowerShellのスクリプト実行ポリシーが原因で発生しているようです。

Windowsではセキュリティの観点から、デフォルトでスクリプトの実行が無効になっている場合があります。

これは次の手順で解決できます。

  1. PowerShellを管理者権限で開く
  2. 現在の実行ポリシーを確認
    次のコマンドを入力して、現在の設定を確認します。
    Get-ExecutionPolicy
    「Restricted」と表示される場合、この設定を変更する必要があります。
    私の場合は「Restricted」と表示されました。
  3. 実行ポリシーを一時的に変更
    次のコマンドを入力して、実行ポリシーを「RemoteSigned」に変更します。
    Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
    RemoteSignedはローカルスクリプトの実行を許可し、外部からダウンロードされたスクリプトに署名を要求します。これは安全性が高い選択肢です。
  4. 変更を確認 変更が反映されたことを確認するには、再度以下を入力します
    Get-ExecutionPolicy
  5. その後、npm -v コマンドを試す。

実際に、上記の手順を進めた結果次のようになりました。

セキュリティの観点でこのような設定になっているようなので、リスクを理解していない私は設定を戻してコマンドプロンプトを使うことにしました。

設定を戻すには、次のコマンドを打ちます。

Expo-CLIのインストール

ExpoのコマンドラインツールであるExpo-CLIをインストールします。

次のコマンドを打って、Expo-CLIをインストールします。

歯車的なグルグルがしばらく表示されたあとWarningが沢山でて固まりまりました。

コマンドプロンプトを立ち上げなおして、バージョン確認のために次のコマンドを打ってみました。

表示された、リンク先のブログポストによるとnpxを付ければ新しいバージョンとしてのExpoを使えるようで、それで問題ないみたいです。

プロジェクトの作成

次のコマンドを打って、アプリ開発プロジェクトの雛形を作成します。

上記の下部、”Choose a template”にあるとおり、workflowを選ぶように促されました。

とりあえずblankを選択。

(TypeScript)の選択肢があるので、JavaScriptでなくても開発できそうです。
TypeScriptは静的型付け言語でありオブジェクト指向開発もできるので、私のようなNativeよりの開発になれているエンジニアには親和性が高いです。

blankを選択すると、なにやらインストールが始まりました。

しばらく待っていると。

“Your project is ready!”と表示されたので、プロジェクトのひな型が完成したようです。

初めて使う人にとって、簡単なコマンド例と説明が書かれているのは分かりやすいですね。

プロジェクトのディレクトリに移動してexpo startしてみました。

間違えました、npxが必要でした。正しくは次のように打ちます。

するとWindows セキュリティのプロンプトが表示されました。

npx expo startコマンドによってExpoの開発サーバがローカルマシン上で起動し、このサーバがアプリのコードをホストするようです。
アプリにスマートフォンからローカルネットワークを介してアクセスすると、スマートフォン上でアプリが実行されるようです。

許可をクリックすると、QRコードが表示されました。

一応QRコードを塗りつぶしてみましたが、多分、exp://192.168.1.13:8081という文字列が書かれているだけで、同じローカルネットワーク内に接続しないとアクセスできないのあまり意味が無いとは思います。。

このQRコードをiPhoneでそのまま読んでも、何も起きませんでした。

iPhoneにExpoのアプリをインストールしないといけないようです。

Expo Goアプリのインストール

Expo Goというアプリをストアから検索してインストールしました。

アプリを起動するとiPhone側でもExpo Goアプリにローカルネットワーク上でデバイスを見つけることを許可するかの確認が求められるので許可しました。

そして、iPhoneの画面が次のような画面になり、ひな型のアプリが起動しました。

そしてPCのターミナル側には次のような表示が出ており、iPhoneのiOSを認識したようです。

デフォルトの設定ではiPhoneを振るとデバッグメニューが出てきて、色々開発に役立ちそうな項目がありました。

ここまでで、ひとまず開発環境は整ったようです。

まとめ

今回はReact NativeとExpoを使用したiOSアプリの開発環境をWindows PC上に構築して、実際に手元のiPhoneで動かすところまで実際にやってみました。

ツールのインストールで少しだけ躓きましたが、ほぼスムーズに実機で動かすところまでできたので、簡単な印象を抱きました。

 私は過去に(もう10年ほど前ですが..)Android Studioを使ってアプリ開発しようとした時に実機で動かすところまでかなり苦労した経験があります。

 その時、USBケーブルで実機と繋ぐだけでなく、Android端末はデバッガーモードに切り替えないといけなかったと記憶しています。(そもそもAndroid Studioが重くて時間がかかる。)

 しかし、今回のExpoのように専用のアプリを入れて、QRコードを読むだけでアプリが動くのは、やはり手軽でいいなと思いました。

 複数の端末が手元にあれば、より簡単にデバッグもできそうです。

次回はひな型のプロジェクトについて、理解し、コードを改変して開発を進めてみたいと思います。

以上、最後までお読みいただき、ありがとうございました。

コメント

タイトルとURLをコピーしました