本日、初めてandroidアプリを公開しました!

アプリ名は「いろはにほへと!」です!あ、リンクしてますので良かったらやってみて下さいね(^-^)/

どどーん!
HIGHCOMMU-いろは
要は、「いろは歌」を使って、画面に表示されたひらがなを順番にタッチしていくゲームです。


公開に至るまでにいろいろとつまずいた点があったので、今後のブログでも書いていこうと思うのですが、今回は特に引っかかった広告の挿入について書いてみようと思います。


広告を挿入する場合、私はadmobでやりましたが
1.admob等への登録
2.admobでの報酬を受け取るためにPayPalの登録
3.admobからSDKのダウンロード
4.SDKを使って広告を挿入


1~3の手順については、こちらのブログに書かれています。このブログには大変お世話になりました。
で、4.について説明します。


2012年11月2日現在では、admobのSDKのバージョンは6.2.1です。
このバージョンが問題でした。


1.admobのSDKのパスを通す
 1.1.プロジェクトのルートフォルダ直下にlibsフォルダを作成
 1.2.libsフォルダにGoogleAdMobAdsSdk-6.2.1.jarを配置
 1.3.GoogleAdMobAdsSdk-6.2.1.jarにパスを通す
  1.3.1.プロジェクトのルートフォルダを右クリック
  1.3.2.ビルド・パスを選択
  1.3.3.ライブラリーのタブからJarの追加を選択
  1.3.4.上記1.2.のファイルを選択してOK

2.AndroidManifest.xmlへの追記
 2.1.applicationタグの中にactivityタグとして以下を追加
<application>
 ・・・いろいろ・・・

 <activity android:name="com.google.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" />
</application>
 2.2.manifestタグの中の一番下に以下を追加
 ・・・いろいろ・・・
  < uses-permission android:name="android.permission.INTERNET" />
  < uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
</manifest>

3.layoutフォルダのxmlファイルに広告のレイアウトを追記
 3.1.作成されているレイアウトの中にLinerLayoutを追加
  例えば、RelativeLayoutとして画面を作っていれば、そのタグ中に以下のようなLinerLayoutタグを追加
 ・・・いろいろ・・・
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:myapp="http://schemas.android.com/apk/res/自分のアプリ名"
  android:id="@+id/linearLayout"
  android:orientation="vertical"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent" >
 </LinearLayout>
</RelativeLayout>

4.レイアウトに対するJavaファイルにadmobを表示するようコーディングする
 4.1.以下のようにLinerLayoutに対して呼び出す
  setContentView()を行った後にコーディングする
  LinearLayout layout = (LinearLayout)findViewById(R.id.linearLayout);
  // adView を作成する
  adView = new AdView(this, AdSize.BANNER, "ADMOB_PUBLISHER_ID");
  layout.addView(adView);
  AdRequest request = new AdRequest();
  // adViewの呼び出し
  adView.loadAd(request);

 ※ADMOB_PUBLISHER_IDはadmobで設定したIDを入れます。


以上です。
上記で引っかかっていたのが、1.admobのSDKにパスを通すこと。古いバージョンのSDKの場合は、libsに置かなくても良かったのですが、仕様が変わった模様。
いろいろ調べていたら、valuesフォルダの中に、attrs.xmlを追加するとか、values.xmlを追加するとか書いてありましたが、6.2.1のバージョンでは不要なようでした。


次回の記事では、プログラミング的な内容を書こうと思います。