webviewアプリにインタースティシャル広告を表示し、広告を通常の移行ポイントに表示するようにadmobポリシーが言ったように、ページ(記事)を開いた直後に広告を開きたいとします。webviewアプリにインタースティシャル広告を表示するにはどうすればよいですか?
どうすればいいですか?
また、ユーザーがリンクを開くたびに広告を表示しないように広告の外観を制御する方法も知りたいですか?
webviewアプリにインタースティシャル広告を表示し、広告を通常の移行ポイントに表示するようにadmobポリシーが言ったように、ページ(記事)を開いた直後に広告を開きたいとします。webviewアプリにインタースティシャル広告を表示するにはどうすればよいですか?
どうすればいいですか?
また、ユーザーがリンクを開くたびに広告を表示しないように広告の外観を制御する方法も知りたいですか?
あなたはコルドバ/ PhoneGapの/イオンのようなフレームワークを使用している場合は、あなたの最高のチャンスはプラグインを使用することです:https://github.com/appfeel/admob-google-cordova/
そうでなければ、あなたがプラグインを取得し、コルドバの依存関係を削除しようとして呼び出し可能であることを、それをリファクタリングすることができますあなたのJavaScriptのフックが、それは痛みになります!
How to call admob Interstitial ad from android webview JavascriptInterface 私はアンドロイドwebviewからadmobインタースティシャルを表示するためのソリューションを提供しました。
例:
public class MainActivity extends AppCompatActivity {
WebView myWevView;
public InterstitialAd mInterstitialAd;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getSupportActionBar().hide();
setContentView(R.layout.activity_main);
myWevView =(WebView)findViewById(R.id.myWevView);
WebSettings ws= myWevView.getSettings();
ws.setJavaScriptEnabled(true);
ws.setDomStorageEnabled(true);
myWevView.getSettings().setUseWideViewPort(true);
myWevView.addJavascriptInterface(new WebAppInterface(this), "Android");
myWevView.setWebViewClient(new WebViewClient());
myWevView.setWebChromeClient(new WebChromeClient());
myWevView.getSettings().setBuiltInZoomControls(true);
myWevView.loadUrl("file:///android_asset/index.html");
mInterstitialAd = new InterstitialAd(this);
mInterstitialAd.setAdUnitId("ca-app-pub-3940256099942544/1033173712");
mInterstitialAd.loadAd(new AdRequest.Builder().build());
mInterstitialAd.setAdListener(new AdListener(){
@Override
public void onAdLoaded(){
}
@Override
public void onAdClosed() {
// Load the next interstitial.
mInterstitialAd.loadAd(new AdRequest.Builder().build());
}
});
}
public void displayLoadedAd(){
runOnUiThread(new Runnable() {
public void run() {
if (mInterstitialAd.isLoaded()) {
mInterstitialAd.show();
mInterstitialAd.loadAd(new AdRequest.Builder().build());
}
else
Toast.makeText(getApplicationContext(), "Ad not loded", Toast.LENGTH_SHORT).show();
}
});
}
public class WebAppInterface {
Context mContext;
/** Instantiate the interface and set the context */
WebAppInterface(Context c) {
mContext = c;
}
@JavascriptInterface
public void showAdFromJs(){
Toast.makeText(mContext, "Loading Ad", Toast.LENGTH_SHORT).show();
displayLoadedAd();
}
}
//Controlling navigation
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (event.getAction() == KeyEvent.ACTION_DOWN) {
switch (keyCode) {
case KeyEvent.KEYCODE_BACK:
if (myWevView.canGoBack()) {
myWevView.goBack();
}
else {
finish();
}
return true;
}
}
return super.onKeyDown(keyCode, event);
}
}
JavaScriptから呼び出す
$("#btn1").click(function(){
Android.showAdFromJs();
});