2013-08-13 4 views
0

Я хочу проверить adView в моем приложении. Таким образом, я объявил View следующим образом:Как я могу протестировать объявление?

 <com.google.ads.AdView 
     android:id="@+id/ad" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     ads:adSize="BANNER" 
     ads:adUnitId="12345" 
     ads:loadAdOnCreate="true" 
     /> 

я сослаться на него в моем фрагменте:

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
     Bundle savedInstanceState) { 
    View rootView = inflater.inflate(R.layout.main_fragment, container, 
      false); 
    ListView lv = (ListView) rootView.findViewById(R.id.lv_frag_list); 
    final TelephonyManager tm = (TelephonyManager) getActivity() 
      .getBaseContext().getSystemService(Context.TELEPHONY_SERVICE); 

    String deviceid = tm.getDeviceId(); 
    AdRequest adReq = new AdRequest(); 
    adReq.addTestDevice(deviceid); 
    AdView adview = (AdView) rootView.findViewById(R.id.ad); 
    adview.loadAd(adReq); 

      ................................ //some code 

    return rootView; 
} 

adView остается пустым, и я получаю ошибку onFailedToReceiveAd. Думаю, это потому, что у меня нет действующего AdUnitId. Как я могу заставить его работать в тестовых целях?

+0

Просто введите идентификатор рекламного блока, зарегистрировав приложение, оно должно работать тогда. – tiguchi

+0

Хорошо, что приложение находится на ранней стадии разработки, у меня около 30% выполненной работы, наверняка он нигде не публикуется. Могу ли я тестировать рекламу на этом этапе? – Droidman

+0

Это не должно быть проблемой, вы можете настроить свое приложение, даже если оно еще находится на стадии разработки и еще не опубликовано (пока новый интерфейс AdMob не изменит правила к настоящему времени). Просто используйте AdMob в режиме отладки. Если вы хотите увидеть его в режиме производства, не нажимайте никаких объявлений :-) – tiguchi

ответ

0

Вы можете использовать это:

AdRequest adRequest = new AdRequest(); 
adRequest.setTesting(true); 

, но так как он устарел, вы должны использовать этот метод:

переменная
adRequest.setTestDevices(Set<String> testDevices) 

testDevices содержит идентификаторы устройств, на которых вы собираетесь тестировать.

+0

Set devs = new HashSet (); \t \t devs.add (tm.getDeviceId()); все еще получая сообщение об ошибке: 08-13 20: 13: 32.763: I/Ads (9187): AdLoader истекает через 60000 мс при получении URL-адреса. 08-13 20: 13: 32.763: I/Ads (9187): onFailedToReceiveAd (произошла сетевая ошибка.) – Droidman

+1

60000ms? сообщение появляется сразу же после запуска приложения, разрешено подключение к сети INTERNET – Droidman

+0

Пробовали ли вы искать в своем журнале идентификатор устройства? Проверьте эту строку в logcat: Чтобы получить тестовые объявления на этом устройстве, вызовите adRequest.addTestDevice («7AFF7E88C3968AA19FE6AC26C435B0CA»); – Koc

Смежные вопросы