Загрузить рекламу на заставке?


9

У меня есть несколько объявлений, которые загружаются очень долго. Мне было интересно, что их можно загрузить, пока они были на заставке. Я посмотрел на этот ответ:

/programming/5133342/how-can-i-make-my-ads-appear-faster-in-my-android-app

И ответ предлагает использовать заставку для загрузки рекламы. Как я могу узнать, когда реклама загружена, чтобы перейти к моей следующей деятельности? Что произойдет, если пользователь находится в режиме полета, застрянет ли он на заставке? Я видел, как admob добавляет слушателя, но для этого нужен просмотр, но мой просмотр в следующем упражнении? Как мне решить эту проблему?

Кроме того, когда я пытаюсь сделать это:

 AdView.setAdListener(new AdListener() {
     // Implement AdListener
 });

Я получил:

На нестатический метод нельзя ссылаться из статического контекста. Дело в том, что я пытаюсь увидеть, когда добавление, которое находится в следующем действии, будет загружено.


Ваша статическая проблема связана с тем, что вы пытаетесь обработать метод экземпляра, как если бы он был статическим. возможно, часть вашей реализации пытается использовать нестатический метод, как если бы он был статическим, ИЛИ одна из ваших реализованных функций должна быть статической ...
Troyseph

Также я бы посоветовал не заставлять игрока ждать пока загружается реклама. Загрузите его в фоновом режиме, затем при необходимости покажите. Ожидание загрузки рекламы ощущается как наказание для игрока и может отложить его от игры.
Тройсеф

@Troyseph И как бы я это сделал? Спасибо
NullPointerException

попробуйте это bfy.tw/39nB
Тройсеф

Ответы:


1

Ошибка в стеке связана с тем, что AdView - это тип, а не экземпляр. Например, допустим, у вас есть следующий класс:

package simulator;

import java.awt.Color;

public class Dog {

public Color coatColor;
public static boolean mans_best_friend;

}

потому что все собаки являются лучшим другом человека, заявление

Dog.mans_best_friend = true;

является допустимым оператором, потому что статический модификатор позволяет вам использовать тип для установки переменной. Кроме того, вы не можете иметь утверждение

Dog.coatColor = Color.BROWN;

потому что «собака» не относится к конкретному объекту собаки.

-

Это означает, что вы должны получить

new AdView();

Возражать как-то. Если вы читаете документацию, обычно есть 2 способа получить объект.

1) конструктор: это простое выделение новой памяти на компьютере для хранения всех содержащихся в ней переменных, обычно быстрых, но неэффективных для многократного выполнения. это дает вам свежий объект

2) метод GetInstance (): это скорее обходной путь, чем метод, он позволяет создать один объект и обеспечивает максимальную эффективность кода с абсолютной минимальной настройкой.

Желаем удачи в поиске способа получить объект AdView!

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.