AdMob のメモ

AdMobについて
iPhone ではゲームプロモーションは
数多くリリースしてトラフィックを徐々に増やし
効率よく宣伝し
なにかのきっかけでアプリが爆発リリースすることを狙う手法
これをAndroid でやるには
adMob を使う
ただし、アプリを作っておかないとダメ
支払い情報でお勧めは paypal
アプリの種類は
Android アプリ
パッケージ名はあとで変更できるので深く考えなくてもOK
登録官僚すると
AdMob Android SDK がダウンロードできるおで
これを使って広告を組み込む
広告を組み込むアプリプロジェクトを
Eclipse で開いて
AdMob Android SDK を解凍して
libs へドラッグ&ドロップする
そして、AndroidManifest.xml を編集する
<uses-permission android:name=”android.permission.INTERNET”/>
<uses-permission android:name=”androd.permission.Aaccess*network_state”/>
これでパーミッションの追加
あと、Activity の登録も必要
<activity android:name=”com.google.ads.AdActivity”
android.configChanges=”keyboard|keyboardHidden|orientation| screenLayout|uiMode|screenSize|smallesScreenSize”/>
以上が広告の為の
permission
Activity
となる
ここまでいったら、広告用スペースを確保
MultoSceneActivity の親クラスである
SimpleLayoutgameActvity クラスは
標準のAndroid アプリの中にゲームのためのView をセットしているクラスなので、
普通のAndroid アプリと同じ方法で
View を使える
アプリが広告を取得するには
そのアプリ専用の広告コードが必要
これは バリューコマースとかのあふぃりIDと同じ感じ
ということで
AdMob サイトでコードを取得する
コード取得できたら
activitymain.xml を編集
Relativelayout から
FrameLayout へ変更
また、必要名コードを追記
xmlns:ads=”http://chemas.android.com/apk/lib/com.google.ads”
xmlns;tools=”http://schemas.android.com/tools”
これはGoogle Map と同じかも
そして、map のときみたいにAdMob コードも追加
<com.google.ads.AdVew
android:id=”@+id/oadview”
android:layout_width=”wrap_content”
android;layout_height=”wrap_content”
android:layout_gravity=”bottom”
ads.adUnitId=”アフィリID”
ads.adSize=”BANNER”
ads.testDevices=”TEST_EMILATOR”
ads:loadAdOnCreate=”true” />
FlameLayout を使うことで
全画面のゲームの上に重ねるような形で
広告用のスペースを追加
ads;testDevices にはテスト用の端末を指定
テストはエミュレータでもできる模様
ただし、注意点として
デバッグのためでも
自分の広告をクリックすると
アカウント抹消のリスクがあるので注意
今回も参考書籍は

Androidアプリへの広告

広告の実装について
書籍によれば
良かった広告サービス提供開始は
AdMob
http://www.google.co.jp/ads/admob
i-mobile
http://i-mobile.co.jp
AmoAd
http://www.amoad.com
Adiantis
http://www.adlantis.jp
この中で
Adiantis のみ、自社広告
つまり。自分のアプリとか、HPへのリンク広告はできないらしい
この自社広告を使う意味は
じぶんが今アピールしたいアプリや
新しくリリースするアプリとかゲームへユーザを
導入するという仕組み
ただ、アフィリエイトと同じように
広告もメンテは必要
安定して収益がでるようになったら
SSPなどを使うとよいらしい
日本で有名なのは
Ad-stir
http://ja.ad-stir.com
今回の参考書籍

オンラインランキングサービス

オンラインランキングは
ユーザp0のスコアを自動的にサーバー上に登録し
上位から順に並べた表を表示する
オンラインランキング機能を実装すると
ユーザと競い合うことができるようになる
オンラインランキングには
オンラインランキングサービスというものがあり
書籍によれば
Rank Park というものがある
参考書籍は
AndEngineでつくるAndroid 2Dゲーム (SMART GAME DEVELOPER)
地峡されるランキングサービスは
ユーザに
メールアドレス
パスワード
を求めずに
使うのは
端末のID
RankPark 上に表示される任意のニックネーム
iOS では
Game Center という
オンライン裸キングのSDKがあるらしい
RankPark のURLは
http://rank-park.com

Androidミラーリング表示(Ubuntu)

前回、Android 端末の画面をミラーリングして表示するため
ケーブルを買ったものの
OSがWindows 対応のみということで別の方法を使うことにしました
今回、使ったのは
Android Screen Monitor
http://www.adakoda.com/adakoda/android/asm/
からダウンロードし使わせてもらいました
今回、導入した環境は
Ubuntu 12.04LTS 64bit です
すでに、Android アプリ開発環境は構築済みで
実機検証もできる状態からの設定となります
それでは、以下が今回行った内容です
まず
Ver.2.40 [ASM_2_40.zip] (217,536 Bytes)
をダウンロードします
圧縮ファイルなので。これを解凍します
cd ダウンロード/
unzip ASM_2_40.zip
cp -p asm.jar ~/android-sdk-linux/platform-tools/

android-sdk-linux/platform-tools/
の下へコピーします
あとは端末で
java -jar asm.jar
を実行するだけです
Screenshot_from_2013-04-14 16:56:51
画面が小さいのは
私の使っているマシンが14インチワイドの画面のため
画像の大きさを100%にしてしまうと
Nexus 7 の画面の大きさでは入りきらないためです
今回は、画面の大きさを50%程度にしています
画像の大きさの変更をするには
転送されているスクリーンを右クリックし
Zoom で大きさを変更できます
メニューは英語ですが、慣れればなんとかなります
画面を保存するときのメニューが
Ubuntu が日本語になっているためか文字化けします
動きについては、リアルタイムでとまではいきませんが
作った作品の発表などにはつかえる速度です
いろいろと試しましたが
音声入力なども動作するので、期待依存のアプリの発表などにも使えます
今後、機会を見て
Ubuntu の動画画面キャプチャーをいれてみようと思います

センサー関連メモ

センサーマネージャをインスタンス化し
MainActicityをリスナーとして登録
センサ更新タイミングは
SensorManager.SENSOR_DELAY_GAME を設定する
これはゲーム用に最適化された感覚で
センサーの値が更新される
基本的には毎秒60回に近い回数で更新されるけど
端末のスペックで変わるので絶対じゃない
SensorEventListener インターフェースを実装するため
abstract な関数の
onAccuracyChanged と
onSensorChanged を追加
onSensorChanged() は
センサーが保持している値が変化したら呼び出され
onAccuracyChanged() は
センサーん制度が変更されたときに呼び出される
センサーを1種類しか使わないなら
onAccuracyChanged() は使わない
センサーのリスナーとして登録しているため
センサーの値に変化があったときにonSensorChangedが呼ばれる

Font クラスとTypefaceクラス

Fontクラスは
端末に搭載されているフォントを利用してインスタンス化し
描画に利用する
引数は
FontManagerクラスのインスタンス,
読み込み先のTexture ,
フォントの種類,
フォントのサイズ,
アンチエイリアスの有効/無効,

となる
アンチエイリアスは、緑の処理のこと
true にすると緑がなめらかに描画される
Typefaceクラスについて
Typeface クラスは
フォントの種類が定義されているクラス
Fontクラスに渡すときに変更することで
太字にしたり、イタリック体(右斜めに傾いたフォント)
にすることができる
CSSで設定するようなかんじ

イージングとアニメーション変化

イージングとは、
与えられた変化量と時間を各コマ均等に割り当てではなく
偏らせることでアニメーションに変化を付ける技術のこと
例えば1秒間に右へ10ピクセル移動するアニメーション
イージングなしだと移動するときには
1+1+1+1+1+1+1+1+….=10
というように
最初から最後まで
1フレームの移動量は変わらない
これをイージングを使うと
0.2+0.4+0.8 +1+1.2+…+2=10
というように移動量を多くすることで
段々加速する演出アニメーションができる
ボールのリバウンドとか
行きすぎたから戻るとかもイージングで実現できる

ビットマッブフォントと端末搭載フォント

ビットマッブフォントと端末搭載フォント
ビットマッブフォントは、影や色の
グラデーション
使えるフォントも自由なので
見た目はいいけど
使う文字を事前に用意しなければならないし、容量もかさむので
使いどころに注意
基本的に、日本語を利用するときには
端末搭載フォント
日本語を使わないときには
ビットマッブフォントを使う
規模の大きいゲームだと
1つのゲームの中でも
日本語を使うときには端末搭載フォント
英語部分は、ビットマッブフォント
を使うのがほとんど

Font クラスとTypefaceクラス

Fontクラスは
端末に搭載されているフォントを利用してインスタンス化し
描画に利用する
引数は
FontManagerクラスのインスタンス,
読み込み先のTexture ,
フォントの種類,
フォントのサイズ,
アンチエイリアスの有効/無効,

となる
アンチエイリアスは、緑の処理のこと
true にすると緑がなめらかに描画される
Typefaceクラスについて
Typeface クラスは
フォントの種類が定義されているクラス
Fontクラスに渡すときに変更することで
太字にしたり、イタリック体(右斜めに傾いたフォント)
にすることができる
CSSで設定するようなかんじ