しまくろねこさん>
ご報告ありがとうございます。ひとまずは大丈夫そうですね。
Android6.0〜Android8.0 のどれがいいかですが、
7.0か8.0をおすすめします。できれば8.0にしておけば間違いは無いと思います。
理由としましては、HSP3Dishのデフォ状態ですと AdMob が7.0以降で
上に表示されるという問題(Gravity.BOTTOM が無効)がありまして、
対応するには HspActivity.java の該当部分を書き換える必要があります。
この部分のテストのためにも7.0以上をおすすめします。
いちおう、うちでは対策して下に表示されるようにしています。
以下のように書き換えています。やや余裕をもって画面の高さの10分の1にしています。
この方法のメリットはHSP側からもAdMobの領域が確定できるという点です。
popUpを透明にすることで、広告の背景もHSP側から自由に描画できます。
ご参考までにどうぞ。
WindowManager windowmanager = (WindowManager)getSystemService(WINDOW_SERVICE);
Display disp = windowmanager.getDefaultDisplay();
disp_width = disp.getWidth();
disp_height = disp.getHeight();
ad_height = disp.getHeight()/10; // 独自追加(画面の高さの10分の1)
(略)
if(_adView!=null) {
Log.i("HspActivity","callAdMob.");
_instance.runOnUiThread(new Runnable() {
@Override
public void run() {
adsinited = true;
// Out popup window
popUp = new PopupWindow(_instance);
popUp.setBackgroundDrawable(null); // 独自追加(popUp透明化)
// This is the minimum size for AdMob, we need to set this in case our target device run at 320x480 resolution (Otherwise no ad will be shown, see the padding kill below)
popUp.setWidth(disp_width+10);
popUp.setHeight(ad_height);
popUp.setClippingEnabled(false);
MarginLayoutParams params = new MarginLayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
params.setMargins(0, 0, 0, 0);
layout.addView(_adView, params);
popUp.setContentView(layout);
_instance.setContentView(mainLayout, params);
Log.i("HspActivity","loadAd.");
popUp.showAtLocation(mainLayout, Gravity.NO_GRAVITY, -5, disp_height-ad_height+4);
popUp.update();
bShow = true;
}
});