Androidアプリ開発 AREarthroidのAdMob広告に位置情報を通知する [Androidアプリ AREarthroid]
AREarthroidの無料版には、広告が付いている。この広告、画面の向きが変わると表示されなくなってしまうことに気付いた。Android 3.2のA100なら画面向きが変わってもそのまま表示される。Android 2.3のXperiaでAREarthroidを動かしていると、画面向きが変わったときに、広告が消えてしまう。
Androidのバージョンのせいなのか、機種のせいなのかはよくわからないが、多分、バージョンのせいであろう。
で、AdMobの説明をよくよんでみることにした。
Google AdMob Ads SDK
https://developers.google.com/mobile-ads-sdk/docs/android/fundamentals?hl=ja
それらしいことは書いてないなぁ。
中級のページに進んでいく。
タブレット用に大きめのバナーもあるのか、こっちにしてみようかなぁ...
でもタブレットはちゃんと表示されているから、いじりたくないかも。
次は、テスト用の端末の設定について書かれている。
テスト用デバイスの設定は、エミュレータは追加している。AdMobは基本、自分で広告をクリックしてはいけない。テスト用の携帯電話のIDも入れておけば、クリックじゃなくてタップしてもいいのか?
過去に、間違えてタップしちゃったことがあるもんなぁ。自分の端末のIDを入れておくか。端末のIDはどうやったら取得できるの?
しかし、わかりにくい訳だこと。訳じゃなくてもともと親切に書いてないのか。
一度、リクエスト飛ばすのか。その時に、LogCatに表示されるのね。
やってみる。
出た。
To get test ads on this device, call adRequest.addTestDevice("D63B365C832......");
これをコピーしてくればOKか。
しかし、テスト用に設定しても消えてしまうことにはかわりないであろう。
次は、なにが書いてあるかというと、ターゲットの指定か。
男性、女性向けの指定ができるわけね。
位置情報を指定できるのか。近所のお店みたいな感じで広告が表示できるようになるのであろう。これはやっておいた方がいいか。
誕生日は、年齢の指定か。端末からユーザの誕生日って取ってこれるものなのか?連絡帳から取ってこれそうな感じではあるが、めんどうなのでパス。
位置情報が確定した際に、AdRequestを飛ばしてみる。
これで、ちょっとテスト。
テスト用の広告が表示されるようになった。
なんだ、そういうことか。エミュレータと同じ扱いになるだけなのか。普通に広告が表示されて、タップしてもカウントされないっていうことじゃないのね。
GPS測位に成功すると広告が表示された。
広告の内容が、テスト用のまま変化しないので、位置情報がちゃんと渡ったのかどうかはわからない。テスト端末の設定を削除するか。
ん、ちょっと待てよ。adView.loadAdすれば広告が再表示できるのか。
向きの変更時に同じことをやってやればOKか。
画面の向きの変更時のイベントっていうのは特にないのか。onSurfaceChangedでやるか。
直接呼び出すとスレッドが異なるので、例外を吐く。フラグのフィールドを作って...
できた。
画面の向きが変更された場合は、位置情報が渡らないが、とりあえずは、いいか。これで、アップデートするのである。
えーと、ついでなので報告、今回のバージョンアップで「街の灯り」が表示されるようになった。夜の部分がかっこよくなったのである。難読化も有効になっている。
関連記事
サイト内を検索
Androidのバージョンのせいなのか、機種のせいなのかはよくわからないが、多分、バージョンのせいであろう。
で、AdMobの説明をよくよんでみることにした。
Google AdMob Ads SDK
https://developers.google.com/mobile-ads-sdk/docs/android/fundamentals?hl=ja
それらしいことは書いてないなぁ。
中級のページに進んでいく。
タブレット用に大きめのバナーもあるのか、こっちにしてみようかなぁ...
でもタブレットはちゃんと表示されているから、いじりたくないかも。
次は、テスト用の端末の設定について書かれている。
テスト用デバイスの設定は、エミュレータは追加している。AdMobは基本、自分で広告をクリックしてはいけない。テスト用の携帯電話のIDも入れておけば、クリックじゃなくてタップしてもいいのか?
過去に、間違えてタップしちゃったことがあるもんなぁ。自分の端末のIDを入れておくか。端末のIDはどうやったら取得できるの?
しかし、わかりにくい訳だこと。訳じゃなくてもともと親切に書いてないのか。
一度、リクエスト飛ばすのか。その時に、LogCatに表示されるのね。
やってみる。
出た。
To get test ads on this device, call adRequest.addTestDevice("D63B365C832......");
これをコピーしてくればOKか。
しかし、テスト用に設定しても消えてしまうことにはかわりないであろう。
次は、なにが書いてあるかというと、ターゲットの指定か。
男性、女性向けの指定ができるわけね。
位置情報を指定できるのか。近所のお店みたいな感じで広告が表示できるようになるのであろう。これはやっておいた方がいいか。
誕生日は、年齢の指定か。端末からユーザの誕生日って取ってこれるものなのか?連絡帳から取ってこれそうな感じではあるが、めんどうなのでパス。
位置情報が確定した際に、AdRequestを飛ばしてみる。
AdRequest adRequest = new AdRequest(); adRequest.addTestDevice(AdRequest.TEST_EMULATOR); adRequest.addTestDevice("D63B365C832....."); adRequest.setLocation(location); adView.loadAd(adRequest);
これで、ちょっとテスト。
テスト用の広告が表示されるようになった。
なんだ、そういうことか。エミュレータと同じ扱いになるだけなのか。普通に広告が表示されて、タップしてもカウントされないっていうことじゃないのね。
GPS測位に成功すると広告が表示された。
広告の内容が、テスト用のまま変化しないので、位置情報がちゃんと渡ったのかどうかはわからない。テスト端末の設定を削除するか。
ん、ちょっと待てよ。adView.loadAdすれば広告が再表示できるのか。
向きの変更時に同じことをやってやればOKか。
画面の向きの変更時のイベントっていうのは特にないのか。onSurfaceChangedでやるか。
直接呼び出すとスレッドが異なるので、例外を吐く。フラグのフィールドを作って...
できた。
画面の向きが変更された場合は、位置情報が渡らないが、とりあえずは、いいか。これで、アップデートするのである。
えーと、ついでなので報告、今回のバージョンアップで「街の灯り」が表示されるようになった。夜の部分がかっこよくなったのである。難読化も有効になっている。
関連記事
サイト内を検索
2012-05-16 15:20
nice!(0)
コメント(0)
Copyright Atsushi Asai Google+朝井淳
[データベースの気持ちがわかる]SQLはじめの一歩 (WEB+DB PRESS plus)
- 作者: 朝井 淳
- 出版社/メーカー: 技術評論社
- 発売日: 2015/03/03
- メディア: 単行本(ソフトカバー)
Access クエリ 徹底活用ガイド ~仕事の現場で即使える
- 作者: 朝井 淳
- 出版社/メーカー: 技術評論社
- 発売日: 2018/05/25
- メディア: 大型本
コメント 0