我的AdMob广告既没有出现在USB调试设备的屏幕上也没有出现在logcat中。作为广告单元ID,我从https://developers.google.com/admob/android/test-ads设置了一个遵守AdMob政策。真实广告也没有显示(我在通过Google Play下载我的应用时发现了它)。在logcat中,这两个日志都没有显示哪个真的令人困惑。也许我应该在由这个Activity处理的Fragments中实现该广告(我的意思是HomeFragment和CameraFragment)。我没有获得任何AdMob帐户暂停,因为我在检查AdMob控制台时没有收到任何通知。这是我的代码:
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.support.annotation.NonNull;
import android.support.design.widget.TabLayout;
import android.support.v4.app.FragmentTransaction;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.RelativeLayout;
import android.widget.TabHost;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.InterstitialAd;
import com.google.android.gms.ads.MobileAds;
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.auth.FirebaseUser;
import com.ittianyu.bottomnavigationviewex.BottomNavigationViewEx;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.stek.ca_ltd.memestackupdating.Login.LoginActivity;
import com.stek.ca_ltd.memestackupdating.R;
import com.stek.ca_ltd.memestackupdating.Utils.BottomNavigationViewHelper;
import com.stek.ca_ltd.memestackupdating.Utils.MainfeedListAdapter;
import com.stek.ca_ltd.memestackupdating.Utils.SectionsPagerAdapter;
import com.stek.ca_ltd.memestackupdating.Utils.UniversalImageLoader;
import com.stek.ca_ltd.memestackupdating.Utils.ViewCommentsFragment;
import com.stek.ca_ltd.memestackupdating.models.Photo;
import static java.security.AccessController.getContext;
public class HomeActivity extends AppCompatActivity implements
MainfeedListAdapter.OnLoadMoreItemsListener{
@Override
public void onLoadMoreItems() {
Log.d(TAG, "onLoadMoreItems: displaying more photos");
HomeFragment fragment = (HomeFragment)getSupportFragmentManager()
//CameraFragment fragment2 = (CameraFragment)getSupportFragmentManager()
.findFragmentByTag("android:switcher:" + R.id.viewpager_container + ":" + mViewPager);
CameraFragment fragment2 = (CameraFragment)getSupportFragmentManager()
.findFragmentByTag("android:switcher:" + R.id.viewpager_container + ":" + mViewPager);
if(fragment != null){
fragment.displayMorePhotos();}
if(fragment2 != null){
fragment2.displayMorePhotos();}
}
private static final String TAG = "HomeActivity";
private static final int ACTIVITY_NUM = 0;
private static final int HOME_FRAGMENT = 1;
private Context mContext = HomeActivity.this;
//firebase
private FirebaseAuth mAuth;
private FirebaseAuth.AuthStateListener mAuthListener;
//widgets
private ViewPager mViewPager;
private FrameLayout mFrameLayout;
private RelativeLayout mRelativeLayout;
public InterstitialAd Stack2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
Stack2 = new InterstitialAd(mContext);
// Stack2.setAdUnitId("ca-app-pub-8090166845540486/6763106401"); //real
Stack2.setAdUnitId("ca-app-pub-3940256099942544/1033173712"); //fake
MobileAds.initialize(mContext, "ca-app-pub-8090166845540486~5792871752");
Stack2.loadAd(new AdRequest.Builder().build());
Log.d(TAG, "onCreate: starting.");
mViewPager = (ViewPager) findViewById(R.id.viewpager_container);
mFrameLayout = (FrameLayout) findViewById(R.id.container);
mRelativeLayout = (RelativeLayout) findViewById(R.id.relLayoutParent);
setupFirebaseAuth();
initImageLoader();
setupBottomNavigationView();
setupViewPager();
if (Stack2.isLoaded()) {
Log.d("TAG", "The interstitial is loaded.");
Stack2.show();
} else {
Log.d("TAG", "The interstitial wasn't loaded yet.");
}
}
public void onCommentThreadSelected(Photo photo, String callingActivity){
Log.d(TAG, "onCommentThreadSelected: selected a coemment thread");
ViewCommentsFragment fragment = new ViewCommentsFragment();
Bundle args = new Bundle();
args.putParcelable(getString(R.string.photo), photo);
args.putString(getString(R.string.home_activity), getString(R.string.home_activity));
fragment.setArguments(args);
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
transaction.replace(R.id.container, fragment);
transaction.addToBackStack(getString(R.string.view_comments_fragment));
transaction.commit();
}
public void hideLayout(){
Log.d(TAG, "hideLayout: hiding layout");
mRelativeLayout.setVisibility(View.GONE);
mFrameLayout.setVisibility(View.VISIBLE);
}
public void showLayout(){
Log.d(TAG, "hideLayout: showing layout");
mRelativeLayout.setVisibility(View.VISIBLE);
mFrameLayout.setVisibility(View.GONE);
}
@Override
public void onBackPressed() {
super.onBackPressed();
if(mFrameLayout.getVisibility() == View.VISIBLE){
showLayout();
}
}
private void initImageLoader(){
UniversalImageLoader universalImageLoader = new UniversalImageLoader(mContext);
ImageLoader.getInstance().init(universalImageLoader.getConfig());
}
/**
* Responsible for adding the 3 tabs: Camera, Home, Messages
*/
private void setupViewPager(){
SectionsPagerAdapter adapter = new SectionsPagerAdapter(getSupportFragmentManager());
adapter.addFragment(new HomeFragment());//index 1
adapter.addFragment(new CameraFragment());
mViewPager.setAdapter(adapter);
TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(mViewPager);
// tabLayout.getTabAt(0).setIcon(R.drawable.ic_camera);
tabLayout.getTabAt(0).setIcon(R.drawable.followoo);
tabLayout.getTabAt(1).setIcon(R.drawable.main);
}
/**
* BottomNavigationView setup
*/
private void setupBottomNavigationView(){
Log.d(TAG, "setupBottomNavigationView: setting up BottomNavigationView");
BottomNavigationViewEx bottomNavigationViewEx = (BottomNavigationViewEx) findViewById(R.id.bottomNavViewBar);
BottomNavigationViewHelper.setupBottomNavigationView(bottomNavigationViewEx);
BottomNavigationViewHelper.enableNavigation(mContext, this,bottomNavigationViewEx);
Menu menu = bottomNavigationViewEx.getMenu();
MenuItem menuItem = menu.getItem(ACTIVITY_NUM);
menuItem.setChecked(true);
}
/*
------------------------------------ Firebase ---------------------------------------------
*/
/**
* checks to see if the @param 'user' is logged in
* @param user
*/
private void checkCurrentUser(FirebaseUser user){
Log.d(TAG, "checkCurrentUser: checking if user is logged in.");
if(user == null){
Intent intent = new Intent(mContext, LoginActivity.class);
startActivity(intent);
}
}
/**
* Setup the firebase auth object
*/
private void setupFirebaseAuth(){
Log.d(TAG, "setupFirebaseAuth: setting up firebase auth.");
mAuth = FirebaseAuth.getInstance();
mAuthListener = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
FirebaseUser user = firebaseAuth.getCurrentUser();
//check if the user is logged in
checkCurrentUser(user);
if (user != null) {
// User is signed in
Log.d(TAG, "onAuthStateChanged:signed_in:" + user.getUid());
} else {
// User is signed out
Log.d(TAG, "onAuthStateChanged:signed_out");
}
// ...
}
};
}
@Override
public void onStart() {
super.onStart();
mAuth.addAuthStateListener(mAuthListener);
mViewPager.setCurrentItem(HOME_FRAGMENT);
checkCurrentUser(mAuth.getCurrentUser());
}
@Override
public void onStop() {
super.onStop();
if (mAuthListener != null) {
mAuth.removeAuthStateListener(mAuthListener);
}
}
}
答案 0 :(得分:0)
如果您的广告是插页式广告,请使用此广告:
private InterstitialAd mInterstitialAd;
mInterstitialAd = new InterstitialAd(this);
mInterstitialAd.setAdUnitId("ca-app-pub-8090166845540486/6763106401");
如果是横幅广告,则:
AdView adView = new AdView(this);
adView.setAdSize(AdSize.BANNER);
adView.setAdUnitId("ca-app-pub-8090166845540486/6763106401");