スマートデバイスプログラミング 第5回

事前準備

・授業前にダウンロードしてもらうもの一覧

[全員] Java Dvelopment Kit

厳密にはコマンドプロンプト(win)またはターミナル(mac)を開いて
「java -version」と打ち込んで、javaのバージョンが表示されなかった人

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

 約200メガあります。
 「Accept License Agreement」をチェックすれば規約に同意したことになり、
 ダウンロードできます。
 使っているPCの対象OSに合ったファイルをDLしてください。
  Windows(64bit版)の人:jdk-8u65-windows-x64.exe
  Windows(32bit版)の人:jdk-8u65-windows-i586.exe
 ※64ビットか32ビットかは、システムのプロパティーを開くと
  「システムの種類」の欄に書いてあります)
  (インストールには別途0.5ギガの空き容量が必要です)

[全員] Android SDK

http://developer.android.com/intl/ja/sdk/index.html#Other

 約150メガ(解凍後のファイルは200メガ)あります。
 使っているPCの対象OSに合ったファイルをDLしてください。
  MacOSの人:android-sdk_r24.3.4-macosx.zip 
  Windowsの人:android-sdk_r24.3.4-windows.zip 
 ※AndroidStudio入りの物ではなく、「SDK Tools Only」の方をDLします。

[iOS端末を持っているMacユーザー] Xcode 7.1
http://itunes.apple.com/us/app/xcode/id497799835?ls=1&mt=12

 約4.3ギガあります。

課題について(予定)

(1)PC用の実行ファイルを作ってみましょう。
(2)Android端末用の実行ファイル(apk)を作ってみましょう。
(3)端末を繋いでunityRemoteを試したり、(macの方は)xcodeでビルドして実機で動かしたりしてみましょう。
(4)更に余力がある人は、PlayerSettingの設定を変えて、色々試してみましょう。
SFSには何ができたたか(できなかった物があれば、どこまでできたか、どこで詰まったかなども)記載して、投稿してください。
今回UnityRemoteやapk作りに断念した人も、次回使えるよう頑張ってください。
(でないと最終課題が作れません)
ClickGameをUnityRemote等を用いてスマートデバイス上で起動できた人は、
実機で出したハイスコアも書いておいてください。
(buttonやtoggleの位置は、押しやすい配置に調整して構いません。
文字色を明るい色にすると、スコアが見やすくなります)

[Windows] 環境変数PATHの設定

注意:Pathの設定は慎重に行いましょう。変更前に内容のバックアップを取ることをおすすめします。(自信の無い人はzipファイルではなくinstaller_r24.2-windows.exeをDLしても良いでしょう)

1. 「スタートボタン」(画面左下のWindowsアイコン)を右クリックして「システム」を押します

Windows8以外の人:
スタートボタンを押すと表示される「コンピュータ」を右クリックし、「プロパティ」を押します

2. 開いたウィンドウの左側にある「システムの詳細設定」を押します

3. さらに開いたウィンドウから、「詳細設定」タブを開いた状態で右下にある「環境変数」を押します

4. 画面下側の「システム環境変数」グループの中から「Path」項目を選択した状態で、「編集」を推します

5. 「システム変数の編集」というウィンドウが表示されたら、ここの変数値の末尾に、セミコロン区切りでjdkとadbのインストール先を記述します。
  おそらく「;C:\Program Files\Java\jdk****\;C:\android-sdk」を末尾に追加することになるかと思います。
  ※ ****はバージョン番号が入ります。インストールした時期によって異なるので、エクスプローラから確認してください

6. 再起動します

7. 復帰後、コマンドプロンプトに「adb version」と入力して、「Android Debug Bridge version *****」と表示されるか確認してください

表示されない:
PATHが通っていないか、インストールに失敗しています。SAが対応するので呼んでください

8. C:\android-sdk\toolsにあるandroid.batをダブルクリックして、Android SDK Managerを起動します

9. Toolsフォルダの
  「Android SDK Tools」
  「Android SDK Platform-tools」
  「Android SDK Build-tools(最新のものだけ)」
  と、下の方にあるExtrasフォルダの
  「Google USB Driver」
  「Google Web Driver」
  にチェックを入れます
  【それ以外の項目はチェックを外してください】
  さもなくばインストール終わらない地獄に突入します
  
10. ウィンドウ右下の「Install 5 packages」をクリックします

11. ライセンスの同意画面が表示されるので、右下に小さくある「Accept Licenses」を押してから、右下の「Install」ボタンを押します

12. ダウンロードとインストールが行われます。だいたい10分弱かかります
  終わったら、USBドライバのインストールに進んでください
        

[Windows] 開発用USBドライバのインストール

1. Android端末をデバッグモードにする。設定→開発者向けオプション→USBデバッグにチェックを入れる。

そんな項目は無い:
AndroidのOSが古いと思われます。個別に対応しますので挙手して下さい

2. PCにAndroid端末をUSB接続します

ケーブルが無い:
まわりの人に貸してもらうか、SAが用意したのを貸します

刺したら勝手にドライバのインストールが始まった:
「ドライバのインストールが出来ませんでした」となるまで待って、画面を閉じてください

3. コンピューター→システムのプロパティ→デバイスマネージャを押します

そんなのない:
よく探してください。またはコントロールパネル→ハードウェアとサウンド→デバイスマネージャでも起動できます

4. ほかのデバイスにぶら下がっている!マークのアイコンがついてる「Android ADB Interface」を探してください

そんなのない:
「SAMUSUNG DEBUG」とか「不明なデバイス」とか違う名前になっているかも知れません

そんなのもない:
正常にUSB接続が出来ていないかもしれません。繋ぎなおしてみて、それでもダメならSAを呼んでください

5. 先ほど見つけた項目を右クリック→ドライバーソフトウェアの更新を押します

6. コンピューターを参照して~の方をクリックします

7. 参照ボタンを押して、AndroidSDKに含まれるusb_driverフォルダを選択して下さい。人によってパスは異なりますが、大抵「C:\android-sdk\extras\google\usb_driver」あたりだと思います

usb_driverの場所が見つからない:
周りの人に聞いてください。誰もわからなければSAを呼んでください

8. 次へを押すと、ドライバーがインストールされるはずです

インストールに失敗した:
選択したデバイスが間違っているか、接続したAndroidとの相性問題です。SAを呼んでください

9. コマンドプロンプトを再度開き、「adb devices」と入力してください。接続した端末のIDらしきものが表示されれば成功です

「List of devices attached」と表示された:
端末が認識されていません。PCを一旦再起動して、再度「adb devices」コマンドを試してみてください

再起動しても変わらない:
SAを呼んでください
        

Androd版実行ファイルの作成

Build And Setteing窓で「Android」をクリックして選択したあと、「Build」ボタンを押してみましょう。
ファイル名を聞かれるので、Clickgameと入力してあげます。
途中でAndroid SDKのフォルダを聞かれます。
android_sdkを解凍して配置したフォルダを指定します。
再度ビルドが始まります。途中SDKをupdateするか聞かれるのでupdateします。
「Bundle Identifier(バンドル識別子)に問題がある」とエラーが出るので、設定してあげます。
Inspector窓のOther Settingsを選んで、Bundle Identifierの欄に
国.制作者.アプリ名を英小文字で指定。例:jp.wadari.clickgame
(Inspector窓に何も出ていない時は、build setting窓の左下の方にある「player setting」ボタンを押してください)

ビルドに成功するとapkが作成されたフォルダが開かれます。
Android端末をお持ちの方は、「Build and Run」ボタンを押すと
アプリをインストールできます。
web上にapkファイルを置いて端末にurlをメールし、端末のブラウザからアクセスする方法でもインストール可能です。(~が入ったURLを端末からうまく開けない場合は、~を%7Eに置き換えてみましょう)
(身元不明アプリをインストールできるよう、設定変更が必要です。この設定を変更すると後々ウイルス等の危険なアプリをインストールしてしまうリスクが上がりますので、ご注意ください。この授業が終わったら設定を元に戻しておくのが無難です。)

iOS端末を持っているMacユーザーは実機を繋いでxcodeでビルドしてみる。

こちらを読んで進めてみてください。
https://github.com/sfc-sdp/SDP-Textbook/blob/master/k05_develop_ios.md

Androd端末を持っている人は実機を繋いでunityリモートを使ってみる

Android端末にUnityRemote5をインストールしましょう。
以下のURLをAndroid端末で開くと、インストールできます。
(URLをコピペしてメールで送ると良いかと思います
https://play.google.com/store/apps/details?id=com.unity3d.genericremote&hl=ja
(windowsの人のみ)使っている端末のADB用USBドライバーをPCにインストールします。
(端末メーカーのサイトからDL、インストールできることが多いです、型番+USBドライバーで検索してみましょう)
(端末向けのユーティリティーツール等をインストールした覚えがあれば、既にドライバがインストールされているかもしれません)
端末の設定を変更して、USBデバッグできる状態にしましょう。
android端末にて、設定→アプリケーション→開発(一番下の方にあります)を選んで、USBデバッグのチェックをONにします。
USBケーブルで、端末とPCを繋ぎましょう。
(Macの人のみ)PC上でダイアログが出てUSBデバッグを許可するか聞かれるので、OKを選択してください。
Android端末上で、UnityRemote5を起動させましょう。
Unity画面でEdit→ProjectSetting→Editorを選んで、一番上の欄、UnityRemotoのDeviceの項目がNoneになっているのでAny Android Deviceに変更しします。
アプリをテスト実行すると、PC上だけでなく端末上でも実行されるようになります。
うまくいかない場合は、Unityを再起動したり、Android端末を再接続したり、unityRemote5を再起動したりなど、試してみてください。

iOS端末を持っているMacユーザーは実機を繋いでunityリモートを使ってみる

以下のURLをiOS端末(iPhone,iPad)で開くと、インストールできます。
(URLをコピペしてメールで送ると良いかと思います
https://itunes.apple.com/jp/app/unity-remote-4/id871767552?mt=8
(AppStoreでUnity Remote 5を検索する方が楽かもしれません)
USBケーブルで、端末とPCを繋ぎましょう。
iOS端末上で、UnityRemote5を起動させましょう。
Unity画面でEdit→ProjectSetting→Editorを選んで、一番上の欄、UnityRemotoのDeviceの項目がNoneになっているのでAny iOS Deviceに変更しします。
アプリをテスト実行すると、PC上だけでなく端末上でも実行されるようになります。
うまくいかない場合は、Unityを再起動したり、iOS端末を再接続したり、unityRemote4を再起動したりなど、試してみてください。

TIPS:縦横比についてなど

Game窓の左上の方に、Aspect比の設定があります。
(Build And Stteing画面でSwitchPlatFormを押すと、対象PlatFormが変わり、Game窓での選択肢も変わります)
Build And Stteing画面でPlayerSettingを押すと。Inspector窓にPlatForm毎の設定画面が出て来ますが、ここでも縦画面用か、横画面用か、回転したときどうするか、の設定を変更できるようになっています。