Javascript Admob显示测试广告,但我的广告不显示
我使用Admob显示Android广告。我的真实广告不会显示,但当我尝试测试代码时,它会工作。 我在另一个游戏中尝试了我的广告,效果很好。我用buildbox创建了这个游戏Javascript Admob显示测试广告,但我的广告不显示,javascript,android,eclipse,testing,admob,Javascript,Android,Eclipse,Testing,Admob,我使用Admob显示Android广告。我的真实广告不会显示,但当我尝试测试代码时,它会工作。 我在另一个游戏中尝试了我的广告,效果很好。我用buildbox创建了这个游戏 private static AdRequest getAdRequest(){ // Create an ad request. Check your logcat output for the hashed device ID to // get test ads on a physical device
private static AdRequest getAdRequest(){
// Create an ad request. Check your logcat output for the hashed device ID to
// get test ads on a physical device. e.g.
// "Use AdRequest.Builder.addTestDevice("ABCDEF012345") to get test ads on this device."
AdRequest adRequest = new AdRequest.Builder()
// uncomment to get test ads
//.addTestDevice("YOUR_DEVICE_ID")
.build();
return adRequest;
package com.secrethq.ads;
导入java.lang.ref.WeakReference;
导入org.cocos2dx.lib.cocos2dx活动;
导入android.util.Log;
导入android.view.view;
导入android.widget.FrameLayout;
导入android.widget.LinearLayout;
导入android.widget.RelativeLayout;
导入com.google.android.gms.ads.*;
公共级PTADAMOBridge{
私有静态最终字符串TAG=“PTAdAdMobBridge”;
私有静态Cocos2dxActivity活动;
私人静态WeakReference s_活动;
私有静态AdView AdView;
私人静态间质;
专用静态线性布局;
私有静态本机字符串bannerId();
私有静态本机字符串alid();
私有静态本机void interstitutionalIDFail();
私有静态本机void bannerdifail();
私有静态布尔值isBannerScheduledForShow=false;
私有静态布尔值IsInterstitualScheduledForShow=false;
公共静态void initBridge(Cocos2dxActivity活动){
Log.v(标记“PTAdAdMobBridge--INIT”);
PTAdAdMobBridge.s_活动=新的WeakReference(活动);
ptadadmobridge.activity=活动;
初始化(PTAdAdMobBridge.activity,PTAdAdMobBridge.bannerId());
PTAdAdMobBridge.initBanner();
PTAdAdMobBridge.initinterstitual();
}
公共静态void initBanner(){
Log.v(标签“PTAdAdMobBridge--initBanner”);
PTAdAdMobBridge.s_activity.get().runOnUiThread(new Runnable()){
公开募捐{
if(PTAdAdMobBridge.adView!=null){
返回;
}
FrameLayout=(FrameLayout)PTAdAdMobBridge.activity.findviewbyd(android.R.id.content);
RelativeLayout布局=新的RelativeLayout(ptadadmobridge.activity);
frameLayout.addView(布局);
RelativeLayout.LayoutParams adViewParams=新的RelativeLayout.LayoutParams(
AdView.LayoutParams.WRAP_内容,
AdView.LayoutParams.WRAP_内容);
adViewParams.addRule(RelativeLayout.ALIGN\u PARENT\u BOTTOM);
adViewParams.addRule(父项中的RelativeLayout.CENTER,RelativeLayout.TRUE);
PTAdAdMobBridge.adView=新adView(PTAdAdMobBridge.activity);
PTAdAdMobBridge.adView.setAdSize(AdSize.SMART_BANNER);
PTAdAdMobBridge.adView.setAdUnitId(PTAdAdMobBridge.bannerId());
layout.addView(PTAdAdMobBridge.adView,adViewParams);
PTAdAdMobBridge.adView.setVisibility(View.INVISIBLE);
AdRequest AdRequest=getAdRequest();
PTAdAdMobBridge.adView.loadAd(adRequest);
}
});
}
公共静态布尔值isBannerVisible(){
if(PTAdAdMobBridge.adView==null){
返回false;
}
否则{
if(PTAdAdMobBridge.adView.getVisibility()==View.VISIBLE){
返回true;
}
否则{
返回false;
}
}
}
公共静态void initial(){
Log.v(标签“PTAdAdMobBridge--initinterstitual”);
PTAdAdMobBridge.s_activity.get().runOnUiThread(new Runnable()){
公开募捐{
if(PTAdAdMobBridge.interstitual!=null){
返回;
}
AdRequest AdRequest=getAdRequest();
ptadadmobridge.interstival=新的interstitalad(ptadadmobridge.activity);
ptadadmobridge.interstitual.setAdUnitId(ptadadmobridge.interstitualid());
PTAdAdMobBridge.interstitual.setAdListener(新的AdListener(){
@凌驾
已加载的公共无效(){
if(PTAdAdMobBridge.isInterstitualScheduledForShow){
PTAdAdMobBridge.showFullScreen();
}
}
@凌驾
已关闭的()上的公共无效{
AdRequest AdRequest=新建AdRequest.Builder().build();
PTAdAdMobBridge。间质。负荷(adRequest);
}
@凌驾
在失败的TOLOAD上公开无效(int错误代码){
如果(!IsInterstitualScheduledForShow)
返回;
ptadadmobridge.interstituraldifail();
}
});
PTAdAdMobBridge。间质。负荷(adRequest);
}
});
}
公共静态无效显示全屏(){
Log.v(标签“showFullScreen”);
IsInterstitualScheduledForShow=true;
if(PTAdAdMobBridge.interstitual!=null){
PTAdAdMobBridge.s_activity.get().runOnUiThread(new Runnable()){
公开募捐{
if(PTAdAdMobBridge.interstitual.isLoaded()){
PTAdAdMobBridge.interstitual.show();
ptadadmobridge.isInterstitualScheduledForShow=false;
}
否则{
PTAdAdMobBridge.isiinterntentialScheduleForShow=true;
}
}
});
}
}
公共静态void showBannerAd(){
Log.v(标签“showBannerAd”);
isBannerScheduledForShow=true;
if(PTAdAdMobBridge.adView!=null){
PTAdAdMobBridge.s_activity.get().runOnUiThread(new Runnable()){
公开募捐{
AdRequest AdRequest=getAdRequest();
PTAdAdMobBridge.adView.loadAd(adRequest);
普塔达
package com.secrethq.ads;
import java.lang.ref.WeakReference;
import org.cocos2dx.lib.Cocos2dxActivity;
import android.util.Log;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import com.google.android.gms.ads.*;
public class PTAdAdMobBridge {
private static final String TAG = "PTAdAdMobBridge";
private static Cocos2dxActivity activity;
private static WeakReference<Cocos2dxActivity> s_activity;
private static AdView adView;
private static InterstitialAd interstitial;
private static LinearLayout layout;
private static native String bannerId();
private static native String interstitialId();
private static native void interstitialDidFail();
private static native void bannerDidFail();
private static boolean isBannerScheduledForShow = false;
private static boolean isInterstitialScheduledForShow = false;
public static void initBridge(Cocos2dxActivity activity){
Log.v(TAG, "PTAdAdMobBridge -- INIT");
PTAdAdMobBridge.s_activity = new WeakReference<Cocos2dxActivity>(activity);
PTAdAdMobBridge.activity = activity;
MobileAds.initialize(PTAdAdMobBridge.activity, PTAdAdMobBridge.bannerId());
PTAdAdMobBridge.initBanner();
PTAdAdMobBridge.initInterstitial();
}
public static void initBanner(){
Log.v(TAG, "PTAdAdMobBridge -- initBanner");
PTAdAdMobBridge.s_activity.get().runOnUiThread( new Runnable() {
public void run() {
if(PTAdAdMobBridge.adView != null){
return;
}
FrameLayout frameLayout = (FrameLayout)PTAdAdMobBridge.activity.findViewById(android.R.id.content);
RelativeLayout layout = new RelativeLayout( PTAdAdMobBridge.activity );
frameLayout.addView( layout );
RelativeLayout.LayoutParams adViewParams = new RelativeLayout.LayoutParams(
AdView.LayoutParams.WRAP_CONTENT,
AdView.LayoutParams.WRAP_CONTENT);
adViewParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
adViewParams.addRule(RelativeLayout.CENTER_IN_PARENT, RelativeLayout.TRUE);
PTAdAdMobBridge.adView = new AdView( PTAdAdMobBridge.activity );
PTAdAdMobBridge.adView.setAdSize(AdSize.SMART_BANNER);
PTAdAdMobBridge.adView.setAdUnitId( PTAdAdMobBridge.bannerId() );
layout.addView(PTAdAdMobBridge.adView, adViewParams);
PTAdAdMobBridge.adView.setVisibility( View.INVISIBLE );
AdRequest adRequest = getAdRequest();
PTAdAdMobBridge.adView.loadAd( adRequest );
}
});
}
public static boolean isBannerVisible(){
if(PTAdAdMobBridge.adView == null){
return false;
}
else{
if(PTAdAdMobBridge.adView.getVisibility() == View.VISIBLE){
return true;
}
else{
return false;
}
}
}
public static void initInterstitial(){
Log.v(TAG, "PTAdAdMobBridge -- initInterstitial");
PTAdAdMobBridge.s_activity.get().runOnUiThread( new Runnable() {
public void run() {
if(PTAdAdMobBridge.interstitial != null){
return;
}
AdRequest adRequest = getAdRequest();
PTAdAdMobBridge.interstitial = new InterstitialAd( PTAdAdMobBridge.activity );
PTAdAdMobBridge.interstitial.setAdUnitId( PTAdAdMobBridge.interstitialId() );
PTAdAdMobBridge.interstitial.setAdListener(new AdListener() {
@Override
public void onAdLoaded() {
if(PTAdAdMobBridge.isInterstitialScheduledForShow){
PTAdAdMobBridge.showFullScreen();
}
}
@Override
public void onAdClosed() {
AdRequest adRequest = new AdRequest.Builder().build();
PTAdAdMobBridge.interstitial.loadAd(adRequest);
}
@Override
public void onAdFailedToLoad(int errorCode) {
if ( !isInterstitialScheduledForShow )
return;
PTAdAdMobBridge.interstitialDidFail();
}
});
PTAdAdMobBridge.interstitial.loadAd(adRequest);
}
});
}
public static void showFullScreen(){
Log.v(TAG, "showFullScreen");
isInterstitialScheduledForShow = true;
if(PTAdAdMobBridge.interstitial != null){
PTAdAdMobBridge.s_activity.get().runOnUiThread( new Runnable() {
public void run() {
if(PTAdAdMobBridge.interstitial.isLoaded()){
PTAdAdMobBridge.interstitial.show();
PTAdAdMobBridge.isInterstitialScheduledForShow = false;
}
else{
PTAdAdMobBridge.isInterstitialScheduledForShow = true;
}
}
});
}
}
public static void showBannerAd(){
Log.v(TAG, "showBannerAd");
isBannerScheduledForShow = true;
if(PTAdAdMobBridge.adView != null){
PTAdAdMobBridge.s_activity.get().runOnUiThread( new Runnable() {
public void run() {
AdRequest adRequest = getAdRequest();
PTAdAdMobBridge.adView.loadAd(adRequest);
PTAdAdMobBridge.adView.setAdListener(new AdListener() {
@Override
public void onAdFailedToLoad(int errorCode) {
if ( !isBannerScheduledForShow )
return;
Log.v(TAG, "Banner Ad Failed To Load");
PTAdAdMobBridge.bannerDidFail();
}
@Override
public void onAdLoaded() {
Log.v(TAG, "Banner Ad Loaded");
PTAdAdMobBridge.adView.setVisibility( isBannerScheduledForShow ? View.VISIBLE : View.INVISIBLE );
}
});
PTAdAdMobBridge.adView.setVisibility( View.VISIBLE );
}
});
}
}
public static void hideBannerAd(){
Log.v(TAG, "hideBannerAd");
isBannerScheduledForShow = false;
if(PTAdAdMobBridge.adView != null){
PTAdAdMobBridge.s_activity.get().runOnUiThread( new Runnable() {
public void run() {
PTAdAdMobBridge.adView.setVisibility( View.INVISIBLE );
}
});
}
}
private static AdRequest getAdRequest(){
// Create an ad request. Check your logcat output for the hashed device ID to
// get test ads on a physical device. e.g.
// "Use AdRequest.Builder.addTestDevice("ABCDEF012345") to get test ads on this device."
AdRequest adRequest = new AdRequest.Builder()
// uncomment to get test ads
//.addTestDevice("YOUR_DEVICE_ID")
.build();
return adRequest;
}
}