Swift3.0を使って簡単なiPhoneアプリを作ってみます
(初心者向け)Swift3.0で初アプリ - CocoaPods, Carthagoを使ってみるでAlamoFireを使えるようにしました
自分で自由に使える外部ウェブサイトなどをお持ちでないかたへ、iPhoneから自分のMacbookへアクセスしてアプリ開発の練習をできるようにしたいと思います。
#1. Macbookでapacheを起動しておきます
- iPhoneからMacbookへアクセスできることを確認するために、Apacheを使用します。いったんiPhoneからMacbookへアクセスできるようになったら、その後はApacheを使う必要はありません
- iPhoneからMacbookへアクセスできたことを確認するために、あらかじめ自分のMacbookでapacheを起動しておきます。Apacheは世間で一般的に使われているウェブサーバーでMacbookにははじめから入っています。Apacheについてはこちらをどうぞ。
- 下記コマンドでApacheを起動します
sudo apachectl start
MacBookPro2:~ tohru$ sudo apachectl start
Password:
/System/Library/LaunchDaemons/org.apache.httpd.plist: service already loaded
MacBookPro2:~ tohru$
起動したらブラウザでhttp://127.0.0.1
を開いてみます。下記のように表示されていればApacheの起動はうまくいっています
#2. iPhoneからMacbookへつなぎます(方法1)
- iPhoneをMacbookへUSB接続します
- Macbookの「システム環境設定」(画面左上の🍎メニューなどから開きます)の「ネットワーク」メニューを開きます
- 接続しているネットワーク(「Wifi」など)を選択し、画面右下の「詳細」を選択します
- 表示される画面の左上から「TCP/IP」を選択し、現在使用している「IPv4アドレス」(下記の例では「192.168.11.39」)を入手します
- このIPv4アドレスを使ってiPhoneからMacbookへアクセスします
- iPhoneのブラウザ(Safari、Chromeなど)を開き、URLに下記を指定してアクセスしてみます
http://192.168.2.1
-
It works!
が表示されればiPhoneからMacbookのApacheへのアクセスは成功しています
#3. iPhoneからMacbookへつなぎます(方法2)
- iPhoneをMacbookへUSB接続します
- Macbookの「システム環境設定」(画面左上の🍎メニューなどから開きます)の「共有」メニューを開きます
- 「コンピュータ名」の下の「ローカルネットワーク上のコンピュータから、次のアドレスでこのコンピュータにアクセスできます: xxxxx.local」と表示されているローカル名(文字列)を控えます
- 同じ「共有」メニューの下のほうで、「インターネット共有」を選びます。右側の「共有する接続経路」は「iPhone USB」を、その下の「相手のコンピュータでのポート」は「Wifi」を選択します。その下の「Wifiオプション」を押し、「インターネット共有ネットワークを構成します」のメニューでネットワーク名を確認します。必要に応じセキュリティのオプションで「WPA2パーソナル」などを選択し、パスワードを設定します
- 「インターネット共有」をクリック(「インターネット共有」の左側のチェックボックスにチェックを入れます)し、「インターネット共有機能を開始してもよろしいですか?」のプロンプトに「開始」を選択します。
- Macbook画面右上のWifiのアイコンが真ん中に上向き矢印を表示するように変化します
-
iPhoneの「設定」→「Wi-Fi」を選択します。前項で設定した(Macbookの)Wifiネットワークを選択して接続します(パスワードを設定した場合はここで入力します)
-
セキュリティソフトなどでファイアウォールの設定をされている場合は、ローカル接続での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アドレス」や「ルーター」などに表示されるアドレスを確認します
- ここで表示されている
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
-
It works!
が表示されればiPhoneからMacbookのApacheへのアクセスは成功しています