繁体   English   中英

整个应用中有一个非页内广告

[英]One Interstitial ad through whole App

我有一个大约有四个片段的活动,这些片段有子片段。 我在Mainactivity中有一个带有静态InterstitialAd的静态计数器,该计数器通过片段调用,但是这会导致内存泄漏。 有更好的做法吗?

内部主

static int clicksCount,newsCount;
private static InterstitialAd mInterstitialAd;

public static void interstitalAd() {
    clicksCount++;
    if (clicksCount % 3 == 0) {
        if (mInterstitialAd.isLoaded()) {
            mInterstitialAd.show();
        }
    }
}

每当我需要从片段中调用它时

MainActivity.interstitalAd();

InterstitialAd本身描述为静态成员可能没有必要或不明智,因为它随后将保留无限期创建的上下文。

最好做:

static int clicksCount,newsCount;
private InterstitialAd mInterstitialAd;

public void interstitalAd() {
    clicksCount++;
    if (clicksCount % 3 == 0) {
        if (mInterstitialAd.isLoaded()) {
            mInterstitialAd.show();
        }
    }
}

然后在您的Fragment

MainActivity mainActivity = (MainActivity)getActivity();
mainActivity.interstitialAd();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM