2014-01-31 4 views
6

그래서 admob에서 Google Play 서비스, https://developers.google.com/mobile-ads-sdk/docs/admob/fundamentals#play 으로이 가이드를 읽었습니다. 문제가 발생했습니다. 웹 사이트에서 제공 한 코드가 작동하지 않습니다. 오류가 발생했습니다.내 앱에 광고를 추가 할 수 없습니다.

package puske.com; 

import com.google.android.gms.ads.*; 
import com.google.ads.AdSize; 
import com.google.ads.AdView; 

import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 
import android.widget.RelativeLayout; 

public class Menu extends Activity { 
private AdView adView; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.menu); 
    // Create the adView. 
    adView = new AdView(this); 
    adView.setAdUnitId(MY_AD_UNIT_ID); 
    adView.setAdSize(AdSize.BANNER); 

    // Lookup your LinearLayout assuming it's been given 
    // the attribute android:id="@+id/mainLayout". 
    RelativeLayout layout = (RelativeLayout)findViewById(R.id.menuz); 

    // Add the adView to it. 
    layout.addView(adView); 

    // Initiate a generic request. 
    AdRequest adRequest = new AdRequest.Builder().build(); 

    // Load the adView with the ad request. 
    adView.loadAd(adRequest); 

나는 adView = new AdView(this);에 오류를 생성자에서 AdView (메뉴)를 정의한다 얻을.

adView.setAdSize(AdSize.BANNER); the Method setAdSize is undefined for the type AdView 

그리고 adView.loadAd(adRequest); 은 형에서 AdView의 방법 load.ad (되는 AdRequest)는 작동하지 않습니다 여전히 가이드에 말했듯이 나는 https://developers.google.com/mobile-ads-sdk/docs/?hl=en_US를 추가 인수 (되는 AdRequest)

적용되지 않습니다합니다. http://prntscr.com/2o6vo4

답변

2

당신은 당신의 추가를 보여 레이아웃을 사용할 수 있습니다) (

setContentView(R.layout.menu); 

이 loadAd에 뒤에 추가 제거합니다. 화면에 넣으려는 레이아웃에 코드 아래에 넣으십시오.

 <com.google.ads.AdView 
      android:id="@+id/ad" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      ads:adSize="SMART_BANNER" 
      ads:adUnitId="Your AddMob ID" 
      ads:loadAdOnCreate="true" 
      ads:testDevices="TEST_EMULATOR,TEST_DEVICE_ID_GOES_HERE" /> 
    </RelativeLayout> 

당신은 당신 libs와 폴더의 최신 GoogleAdmobSdk.jar이 있어야합니다. 이것은 나를 위해 일하고있다. 당신이 기존 라이브러리를 제거하는 것을 잊지 돈`t 사용 addMob의 새로운 방법으로 마이그레이션하는 경우

+0

을 추가하므로 java 파일에서이 xml add 요소를 참조해야합니까? @Deeepak Jangir –

+0

이것을 레이아웃 XML 파일에 추가하기 만하면됩니다. –

+0

Google Play 서비스의 구현이 다르며 –

0

사용

AdRequest.Builder adRequestBuilder = new AdRequest.Builder(); 
adView.loadAd(adRequestBuilder.build()); 

편집 :

setContentView(layout); 
+0

난 아직도 형식에서 AdView의 방법 load.ad (되는 AdRequest를) 오류 얻을 작동

<com.google.ads.AdView android:id="@+id/ad" android:layout_width="wrap_content" android:layout_height="wrap_content" ads:adSize="SMART_BANNER" ads:adUnitId="Your AddMob ID" ads:loadAdOnCreate="true" ads:testDevices="TEST_EMULATOR,TEST_DEVICE_ID_GOES_HERE" /> 

는 인수 적용 할 수 없습니다 (AdRequests) –

+0

코드를 확인하여 – Nfear

2

봅니다 가져 오기 영역에서 직접 다음 행

import com.google.android.gms.ads.AdRequest; 
import com.google.android.gms.ads.AdSize; 
import com.google.android.gms.ads.AdView; 

를 추가 할 수 있습니다.

0

다른 광고 SDK (내 경우에는 adfonic)가 프로젝트에서 제거되었으므로 충돌이 일어나서 시도하십시오. 해피 :)

0
import com.google.android.gms.ads.AdRequest; 
import com.google.android.gms.ads.AdSize; 
import com.google.android.gms.ads.AdView; 

코딩 및 추가 레이아웃에 다음

+0

에 대한로드를 지원하지 않습니다. 코드를 설명해주세요. –

관련 문제