2013-06-24 3 views
0

초보자인데, 내 앱에서 admob add를 설정하려고합니다.하지만 관리 할 수없는 오류가 있습니다.안드로이드에 admob이 나타나지 않는다

XMLFILE

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
tools:context=".MainActivity" > 

<com.google.ads.AdView android:id="@+id/main" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
ads:adUnitId="MY_AD_UNIT_ID" 
ads:adSize="BANNER" 
ads:testDevices="TEST_EMULATOR, TEST_DEVICE_ID" 
ads:loadAdOnCreate="true"/> 
</RelativeLayout> 

매니페스트 파일.

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.example.admob" 
android:versionCode="1" 
android:versionName="1.0" > 
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="17" /> 

<application 
    android:allowBackup="true" android:icon="@drawable/ic_launcher"  android:label="@string/app_name" android:theme="@style/AppTheme" > 

<activity 
android:name="com.example.admob.MainActivity" 
android:label="@string/app_name" > 
<intent-filter> 
<action android:name="android.intent.action.MAIN" /> 
<category android:name="android.intent.category.LAUNCHER" /> 
</intent-filter> 
     </activity> 
     <activity 
      android:name="com.google.ads.AdActivity"    
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|scre enSize|smallestScreenSize" /> 

</application> 
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 
</manifest> 

자바 코드 : 이러한 유형의 오류가 onFailedToReceivedAd(InvalidAdRequest) 발생

package com.example.admob; 

import com.google.ads.AdRequest; 
import com.google.ads.AdSize; 
import com.google.ads.AdView; 
import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 
import android.widget.LinearLayout; 
import android.widget.RelativeLayout; 

public class MainActivity extends Activity 
{ 
private static final String MY_AD_UNIT_ID = null; 
private AdView adView; 

@Override 
protected void onCreate(Bundle savedInstanceState) 
{ 
super.onCreate(savedInstanceState); 
setContentView(R.layout.activity_main); 
adView = new AdView(this, AdSize.BANNER, MY_AD_UNIT_ID); 
RelativeLayout main = (RelativeLayout)findViewById(R.id.main); 
main.addView(adView); 
adView.loadAd(new AdRequest()); 
AdRequest adRequest = new AdRequest(); 
adRequest.addTestDevice(AdRequest.TEST_EMULATOR);    
adRequest.addTestDevice("TEST_DEVICE_ID"); 
} 

@Override 
public void onDestroy() { 
adView.destroy(); 
super.onDestroy(); 
} 
} 

활동을 시작할 때.
나는 무엇이 문제인지 모른다.

답변

0

테스트 장치가 등록 된 AdRequest을로드하지 않습니다. 코드를 다음으로 변경하십시오.

//.... 
main.addView(adView); 

AdRequest adRequest = new AdRequest(); 
adRequest.addTestDevice(AdRequest.TEST_EMULATOR);    
adRequest.addTestDevice("TEST_DEVICE_ID"); 
adView.loadAd(adRequest); 
+0

남자는 도움이되지 않는다./나는 미쳐 가고, 나는 무엇을해야할지 모른다. – Whady

0

adview가 포함 된 상대 채널에는 adview 이후에 콘텐츠 레이아웃을 추가하고 있습니까? 그렇다면 android : layout_width 및 android : layout_height 값은 무엇입니까? 두 가지 모두에 fill_parent/match_parent를 사용하면 광고 뷰가 표시되지 않습니다.

트릭은 relativelayout을 linearlayout으로 변경하는 것입니다. 그런 다음이 선형 레이아웃 내의 내용 레이아웃에 대해 android : layout_width = "fill_parent"및 android : layout_height = "0dp"를 설정하십시오. 콘텐츠 레이아웃에 새 속성 android : layout_weight = "1"을 추가하십시오. adview가 자리를 잡은 후에 선형 레이아웃의 나머지 공간을 수용하도록 콘텐츠 레이아웃을 요청하는 것입니다. 희망이 도움이됩니다.

관련 문제