islefield254

(初心者向け)Swift3.0で初アプリ - iPhoneからMacbookへアクセス

Swift3.0を使って簡単なiPhoneアプリを作ってみます
(初心者向け)Swift3.0で初アプリ - 外部ライブラリを使ってみる - CocoaPods, CarthageでAlamoFireを使えるようにしました
自分で自由に使える外部ウェブサイトなどをお持ちでないかたへ、iPhoneから自分のMacbookへアクセスしてアプリ開発の練習をできるようにしたいと思います。

1. Macbookでapacheを起動しておきます

  • iPhoneからMacbookへアクセスできたことを確認するために、あらかじめ自分のMacbookでapacheを起動しておきます。Apacheは世間で一般的に使われているウェブサーバーでMacbookにははじめから入っています。Apacheについてはこちらをどうぞ。
  • 下記コマンドでApacheを起動します
Apacheを起動するコマンド
sudo apachectl start
Apacheの起動
MacBookPro2:~ tohru$ sudo apachectl start
Password:
/System/Library/LaunchDaemons/org.apache.httpd.plist: service already loaded
MacBookPro2:~ tohru$ 

起動したらブラウザでhttp://127.0.0.1を開いてみます。下記のように表示されていればApacheの起動はうまくいっています

スクリーンショット 2017-10-05 10.53.57.png

2. iPhoneからMacbookへつなぎます

  • iPhoneをMacbookへUSB接続します
  • Macbookの「システム環境設定」(画面左上の🍎メニューなどから開きます)の「共有」メニューを開きます
  • 「コンピュータ名」の下の「ローカルネットワーク上のコンピュータから、次のアドレスでこのコンピュータにアクセスできます: xxxxx.local」と表示されているローカル名(文字列)を控えます
  • 同じ「共有」メニューの下のほうで、「インターネット共有」を選びます。右側の「共有する接続経路」は「iPhone USB」を、その下の「相手のコンピュータでのポート」は「Wifi」を選択します。その下の「Wifiオプション」を押し、「インターネット共有ネットワークを構成します」のメニューでネットワーク名を確認します。必要に応じセキュリティのオプションで「WPA2パーソナル」などを選択し、パスワードを設定します

スクリーンショット 2017-10-05 10.17.21.jpg

  • 「インターネット共有」をクリック(「インターネット共有」の左側のチェックボックスにチェックを入れます)し、「インターネット共有機能を開始してもよろしいですか?」のプロンプトに「開始」を選択します。
  • Macbook画面右上のWifiのアイコンが真ん中に上向き矢印を表示するように変化します

スクリーンショット 2017-10-05 10.17.40.png

  • iPhoneの「設定」→「Wi-Fi」を選択します。前項で設定した(Macbookの)Wifiネットワークを選択して接続します(パスワードを設定した場合はここで入力します)

3. iPhoneからMacbookへアクセスします

  • セキュリティソフトなどでファイアウォールの設定をされている場合は、ローカル接続での80番ポートへのアクセスを許容するようにセキュリティ設定を変更しておきます
  • iPhoneのブラウザ(Safari、Chromeなど)を開き、URLに下記を指定してアクセスしてみます
http://xxxx(上記で確認したローカル名(文字列)).local
  • Macbookでhttp://127.0.0.1アクセスした際と同様にIt works!が表示されればiPhoneからMacbookのApacheへのアクセスは成功しています
  • 表示されない、タイムアウトしてしまう、などの場合には、IPアドレスでのアクセスを図ります。iPhoneの「設定」→「Wi-Fi」から接続したMacbookのWifiネットワークを選択します。表示された画面を下へスクロールし、「IPアドレス」や「ルーター」などに表示されるアドレスを確認します

IMG_0555.jpg

  • ここで表示されている192.168.2.2がiPhoneのIPアドレス、192.168.2.2がMacbookのIPアドレス(である可能性が高い)です
  • Macbookでターミナルを開きます(Finder⇢アプリケーション⇢ユーティリティーで見つかります)
  • ターミナルでifconfigと入力します
  • 表示される出力結果のうち、bridge100で表示されるアドレスがiPhoneとの接続で使われるIPアドレスです。上記と同じ192.168.2.1となっていることを確認します
mbp2:~ tohru$ ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
 :
bridge100: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=3<RXCSUM,TXCSUM>
    ether de:a9:04:39:3c:64 
    inet 192.168.2.1 netmask 0xffffff00 broadcast 192.168.2.255
 :
  • iPhoneのブラウザ(Safari、Chromeなど)を開き、URLに下記を指定してアクセスしてみます
http://192.168.2.1

IMG_0554.jpg

  • It works!が表示されればiPhoneからMacbookのApacheへのアクセスは成功しています