Unity Ads はじめての組み込み
Unity Adsを組み込んで、AndroidとiOS上での動作確認を行います。 組み込んで、動作を確認するまでのステップは次のとおりです。
この組み込み手順は以下のUnityバージョン以上を対象としています。
- Unity 5.2以上
1. UnityAdsページで、新しいプロジェクトの追加
Unity Adsのページを開きます。ログインしていない場合は、ログインを行ってください。
2. 新しいプロジェクトの追加
「新しいプロジェクトの追加
」ボタンを押して、新しいプロジェクトを作成するページに遷移します。
下記情報を入力し、「続ける
」を押します。組み込み手順ページに遷移します。
- プロジェクト名
- プラットフォームの選択(公開をまだしていない場合でも選択できます)
- COPPA遵守の明示
3. Unityへの組み込み
組み込み手順ページに従って、UnityへUnity Adsを組み込みます。
新規プロジェクトを作成して組み込み、表示するまでの手順を説明します。
3-1. 新規プロジェクトの作成
通常どおり、Unityの新規プロジェクトを作成します。 適当な名前を入力し作成してください。
3-2. エディターでUnityAdsを有効化します。
1. メニューバーのWindow -> Services -> Ads の順に選び、Ads configuration ウィンドウを開きます。
Serviceの一覧が表示されるので、その中の「Ads
」を選択します。
2. 下記情報を切り替えます。
- 「
Monetize your games
」のトグルをオンにします。 - 「
Platform
」で使用するプラットフォームのチェックボックスにチェックを付けます。 - 「
Test mode
」は、開発時には常にチェックを付けておいてください。リリースする際はチェックを外してください。- テストモードを開発時に使用すべき理由は公式ドキュメントを参照してください。
- 「
Advanced
」を開きiOS、AndroidのGameIDを入力してください。それぞれのGameIDはプロジェクトを追加した際に発行されているので、そちらを参照してください。
3. SETTINGS
からCODE SAMPLES
に切り替えます。
コードサンプルが表示されています。今回は「Simple
」を選択し、「Copy to Clipboard
」をクリックし、コピーしてください。そのコピーは次のスクリプトで使用します。
3-3. Unity Ads用のスクリプトを作成
1. 「Project
」ビューの「Assets
」フォルダの下に「UnityAdsExample.cs
」を作成します。このファイル名は、CODE SAMPLES
でコピーした際のクラス名にしてください。
2. 作成した「UnityAds
」を開き、CODE SAMPLES
でコピーしたものを追加し、下記のようにして保存してください。
※ 「using UnityEngine.Advertisements;
」はUnity Adsが使用できるプラットフォームの状態のみ使用できます。エラーが出ている場合は、Build Settings -> Platform でiOS
またはAndroid
を選択し、「Switch Platform
」を押し、切り替えてください。
using UnityEngine; using UnityEngine.Advertisements; public class UnityAdsExample : MonoBehaviour { void Update() { ShowAd(); } bool isShowed = false; public void ShowAd() { if (Advertisement.IsReady() && !isShowed) { Advertisement.Show(); isShowed = true; } } }
3-4. 作成したスクリプトをオブジェクトのコンポーネントへ追加
追加するオブジェクトは何でも構いません。この例ではわかりやすいように、「Main Cmaera
」に追加します。
4. AndroidもしくはiOSで実行
AndroidもしくはiOSの実機、またはエミュレータでビルドし、動作を確認してください。
数秒待つと動画が再生されます。
今回の例では1度実行されたら動画広告を表示しないようにしていますが、本実装では、公式ドキュメントを参考に動画広告を呼び出したいタイミングでスクリプトを実行するように変更などをしてください。
Androidのビルド方法は下記記事を参考にしてください。
iOSのビルド方法は下記記事を参考にしてください。
Unity iOSアプリをビルドする
UnityでiOSアプリをビルドする際に、必要な初期設定を行っていきます。
1. Xcodeのインストール
Xcodeをインストールしてください。Xcodeのインストール方法はこの記事では記載しません。
AppStoreなどから各環境に合わせてインストールをお願いします。
2. Platformの選択
1. メニューバーのFile -> Build Settingsを開きます。
2. PlatformからiOSを選択し、「Switch Platform
」を押してください。
3. Bundle Identifierの設定
Player Settings -> Other Settings -> Identification -> Bundle Identifierを入力してください。
4. Target SDKの設定
実機での実行環境を構築するか、シミュレータでの実行環境を構築するかを選択できます。
Player Settings -> Other Settings -> Configuration -> TargetSDKに構築したいSDKを選択してください。
5. ビルド
Build Settings の「Build
」を押し、xcodeのプロジェクトを作成します。
6. Xcodeで実行
作成されたxcodeプロジェクトをXcodeで開き、実行ボタンを押し、実行してください 。
リリース作業などは通常のXcodeでのアプリ作成と同じ手順で、作成することができます。
Androidビルド方法
Androidのビルド方法については、下記記事を参照してください。
Unity Androidアプリをビルドする
UnityでAndroidアプリをビルドする際に、必要な初期設定を行っていきます。
1. Android Studioのインストール
Android SDKを使用するために、Android Studioをインストールします。
公式ページからAndroid Studioをインストールしてください。
2. JDKのインストール
Oracleの公式ページよりJDKをインストールしてください。
3. UnityでAndroid SDKとJDKのパスを設定
1. Unityでプロジェクトを開きます。メニューバーの Unity -> Preferences を選択します。
2. External Toolsを開き、Android -> SDKの「Browse
」を選択します。Android SDKが入っている場所を選択してください。
(例)/Users/ユーザー名/Library/Android/sdk
3. Android -> JDKの「Browse
」を選択します。JDKが入っている場所を選択してください。
(例)/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home
4. Platformの選択
1. メニューバーのFile -> Build Settingsを開きます。
2. PlatformからAndroidを選択し、「Switch Platform
」を押してください。
3. Player Settingsを押し、Other Settings -> Identification -> Bundle Identifierにパッケージ名を入力してください。
5. APKの作成
5-1. 実機をPCに認識済みもしくは、エミュレータを立ち上げ済みの場合
Build Settingsの「Build And Run
」を押し、ファイル名を入力して保存すると、APKが作成されるのと同時に実機もしくはエミュレータにAPKがインストールされます。
5-2. APKのみの作成
「Build
」を押し、ファイル名を入力し、保存するとAPKが作成できます。
※ビルド時に「Unable to list target platforms. Please make sure the android sdk path is correct.」のエラーが出た場合
5-3. Android Studio用のプロジェクトをエクスポートする方法
BuildSettingsの
1. 「Build System
」から「Gradle
」を選択
1. 「Export Project
」にチェックをつける
1. 「Export
」ボタンを押し、エクスポート場所を選んで保存する
iOSのビルド方法
iOSのビルド方法は下記記事を参照してください。
新潟のB級グルメ「ぽっぽ焼き」を食す
Vimでクリップボードにコピー&ペースト
Vimでファイルを編集している時のコピー方法としては、
v
またはV
で選択範囲して、y
でコピー。
ペーストはp
です。
しかし、GUIで他の場所からマウスで選択して、クリップボードにコピーし、
vimにペーストをした時にペースト出来ないことがあります。
確実にVimの内容をクリップボードにコピーし、 またクリップボードの内容を確実にVimにペーストする方法を書きます。
Vimのテキストをクリップボードにコピー
選択範囲をクリップボードにコピー
v
もしくはV
を使用し、コピーする範囲を選択します。- 選択した状態で、
:w !pbcopy
と入力しEnterを押して下さい。
これでクリップボードにコピーされました。
ファイル全体をクリップボードにコピー
:%w !pbcopy
と入力し、Enterを押して下さい。
これでファイル全体がクリップボードにコピーされました。
Vimにクリップボードの内容をペーストする
- カーソルを使い、他のエディタもしくはWebなどから普通にコピーします。
- Vimで対象のファイルを開きます。
- ペーストしたいところまでいき、
:r !pbpaste
と入力します。
もしくは
v
かV
を入力し、ビジュアルモードにします。:!pbpaste
を入力し、Enterを押して下さい。
他のサイトにも色々なやり方が書いてありますが、vimでヤンクして、他でクリップボードにコピーしてなどを繰り返しているとコピペが出来ないことがありました。
今回紹介した方法はいつでもコピペができるので、困ったときは試してみてください。
追記
もう一つのコピー&ペーストの方法があります。
- GUIで他の場所からマウスで選択して、クリップボードにコピー
- Vim上で
:a!
を入力し、enter - Vim上で、
command + c
(Macの場合) - ペースト内容が表示されるので、キーボードの
esc
を押し、テキストを反映
こちらのやり方のほうが、単純かつ簡単でよいかもしれません。 最近はこちらの方法でコピペを私はしています。
ダメになるソファを1年使ってダメになったのか
最初の1週間目
1ヶ月経過
半年経過
1年経過
1年半経過
結論
Vagrantでネットワークエラーになる。git clone, pushが出来ない時
Vagrantにvagrant ssh
でログインして、作業をし、git pushをしようとしました。
しかし、下記のようなエラーが出ました。
ssh: Could not resolve hostname github.com: Temporary failure in name resolution fatal: The remote end hung up unexpectedly
pingコマンドを試した所
$ ping www.yahoo.co.jp ping: unknown host www.yahoo.co.jp
unknownと言われる始末。。。
vagrantを再起動した所、正常に動作しました。
多分、PCをスリープ状態にしたためにnetworkがstopしたのではないかと思います。
ただ、スリープをしても起きないこともよくあるので、どの時に起こるのかは突き止められていません。
networkのエラーが出た場合は、再起動
もしくは/etc/init.d/network restart
をして、networkを起動させて下さい。