سؤال

لديّ تطبيق يحتوي على إعلانات ADMOB ، لكنني أجد أنه عندما أستخدمه ، لا يتم تحديث الإعلان أبدًا لأنني لا أقوم بتغيير الأنشطة ، وبدلاً من ذلك أقوم بتحديث عرض نص عند الضغط على الأزرار. لقد حاولت البحث عن هذا على Google ولكن استمر في القضاء على القدر القصير.

أرغب في إخبار التطبيق بتحديث الإضافة من حين لآخر ، مثل بعد نقرات الزر أو شيء من هذا القبيل. هل يعرف أي شخص كيفية القيام بذلك وربما يكون لديه بعض رمز العينة لذلك؟

هل كانت مفيدة؟

المحلول

مع SDK الجديد الآن هو:

AdView.loadAd(new AdRequest());

نصائح أخرى

إصدار API القديم:

AddView.requestFreshAd()

إصدار API جديد:

AdView.loadAd(new AdRequest())

أيضًا ، يمكنك ببساطة ضبط فاصل تحديث مع refreshInterval سمة على عنصر adview في ملف XML تخطيطك. أو يمكنك تعيين RefreshInterval للإعلانات في تطبيقك عبر إعدادات حسابك على موقع Admob.

توثيق:http://code.google.com/mobile/ads/docs/android/intermediate.html#adrefresh

كبديل ، يمكنك أيضًا الحصول على إعلانات ADMOB لتحديث لك على فترات زمنية تحددها. في Admob ، انتقل إلى "المواقع والتطبيقات" ، ثم انقر فوق "إدارة الإعدادات" للتطبيق الذي تريده. ثم انقر فوق "إعدادات التطبيق". هناك ضمن "تحديث تلقائي" ، يمكنك تغيير معدل التحديث للإعلانات في تطبيقك.

تحرير: مع واجهة ADMOB الجديدة ، يكون ذلك ضمن اسم التطبيق> اسم التطبيق الخاص بي

على إصدار API جديد AdRequest() الحكام خاص. عليك أن تستخدم AdRequest.Builder صف دراسي:

mAdView.loadAd(new AdRequest.Builder().build())

إعلان Adview في النشاط كعضو بيانات ، ثم قم بإنشاء Timer Task كملاحظة في مُنشرك النشاط

adView = (AdView) findViewById(R.id.adView);
        TimerTask tt = new TimerTask() {

            @Override
            public void run() {
            MainActivity.this.runOnUiThread(new Runnable() {
                public void run() {
                    adView.loadAd(new AdRequest());
                }
            });

        }
    };

    Timer t = new Timer();
    t.scheduleAtFixedRate(tt, 0, 1000 * 60);
    //New AdRequest 

    ScheduledExecutorService scheduleTaskExecutor = Executors.newScheduledThreadPool(5);


scheduleTaskExecutor.scheduleAtFixedRate(new Runnable() {
  public void run() {
        runOnUiThread(new Runnable() {
            public void run() {
                 AdRequest adRequest = new AdRequest.Builder().build();
                adView.loadAd(adRequest);
            }
        });
    }

}, 0, 30, TimeUnit.SECONDS);
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top