2011-08-09 16 views
5

पर चल रहे AdMob को प्राप्त न करें मैं केवल यहां से अलग "काम करने वाले" कोड उदाहरणों को चलाने और परीक्षण करने का प्रयास कर रहा हूं। उनमें से कोई भी काम नहीं करता है।एमुलेटर (एंड्रॉइड 2.2)

गतिविधि में मेरे पास है:

OnCreate()

AdView ad = (AdView) findViewById(R.id.ad); 
    AdRequest r = new AdRequest(); 
    r.addTestDevice("X3XFX518X7DE1FD879XA5XXAX1AX8BXX"); //no clue why this string 
    ad.loadAd(r); 

मैं डाला है दृश्य परिभाषा में निम्नलिखित (और myPubID के बजाय हाँ वहाँ है वास्तव में मेरा असली PUB आईडी):

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

मुझे केवल 1 सेकंड के लिए एक ब्लैक स्क्रीन मिलती है।

के बाद लॉग (logcat) निष्पादन

08-09 10:45:03.527: INFO/ActivityManager(59): Start proc de.syrtec.android.bogloid for activity de.syrtec.android.bogloid/.StartSeite: pid=4402 uid=10043 gids={3003} 
08-09 10:45:04.887: ERROR/Ads(4402): Could not get currentAdManager. 
08-09 10:45:05.397: WARN/InputManagerService(59): Window already focused, ignoring focus gain of: [email protected] 
08-09 10:45:05.567: INFO/Ads(4402): To get test ads on this device, call adRequest.addTestDevice(AdRequest.TEST_EMULATOR); 
08-09 10:45:06.159: INFO/Ads(4402): adRequestUrlHtml: <html><head><script src="http://www.gstatic.com/afma/sdk-core-v40.js"></script><script>AFMA_buildAdURL({"preqs":0,"u_sd":1.5,"slotname":"********;</script></head><body></body></html> 
08-09 10:45:07.528: WARN/webcore(4402): Can't get the viewWidth after the first layout 
08-09 10:45:07.848: INFO/Ads(4402): Received ad url: <"url": "http://r.admob.com:80/ad_source.php?preqs=0&u_sd=1.5&slotname=*****: "null"> 
08-09 10:45:08.809: DEBUG/webviewglue(4402): nativeDestroy view: 0x2bbb30 
08-09 10:45:08.818: INFO/Ads(4402): onFailedToReceiveAd(Ad request successful, but no ad returned due to lack of ad inventory.) 
08-09 10:45:11.168: DEBUG/dalvikvm(3148): GC_EXPLICIT freed 32 objects/1640 bytes in 131ms 
08-09 10:45:16.237: DEBUG/dalvikvm(272): GC_EXPLICIT freed 195 objects/12168 bytes in 137ms 

मैं उपयोग GoogleAdMobAdsSdk-4.1.1.jar और एम्युलेटर पर Android 2.2 के दौरान छपा है।

मेरे व्यवस्थापक खाते में कोई फ़िल्टर नहीं है और ऐडसेंस सक्रिय है।

मैं भी adview instanciating और साथ rootlayout में जोड़कर इसे करने की कोशिश: (http://code.google.com/mobile/ads/docs/android/fundamentals.html की चर्चा करते हुए)

AdView adView = new AdView(this, AdSize.BANNER, "PUB_ID"); 
LinearLayout layout = (LinearLayout)findViewById(R.id.mainLayout); 
layout.addView(adView); 
adView.loadAd(new AdRequest()); 

और निम्न लॉग के साथ समान व्यवहार हो गया है:

08-09 10:49:18.367: INFO/ActivityManager(59): Start proc de.syrtec.android.bogloid for activity de.syrtec.android.bogloid/.StartSeite: pid=4543 uid=10043 gids={3003} 
08-09 10:49:19.297: ERROR/Ads(4543): Could not get currentAdManager. 
08-09 10:49:19.797: WARN/ActivityManager(59): Activity pause timeout for HistoryRecord{44fe4350 de.syrtec.android.bogloid/.StartSeite} 
08-09 10:49:20.067: INFO/Ads(4543): To get test ads on this device, call adRequest.addTestDevice(AdRequest.TEST_EMULATOR); 
08-09 10:49:20.379: INFO/Ads(4543): adRequestUrlHtml: <html><head><script src="http://www.gstatic.com/afma/sdk-core-v40.js"></script*****;</script></head><body></body></html> 
08-09 10:49:20.397: WARN/InputManagerService(59): Window already focused, ignoring focus gain of: [email protected] 
08-09 10:49:22.737: WARN/webcore(4543): Can't get the viewWidth after the first layout 
08-09 10:49:22.957: INFO/Ads(4543): Received ad url: <"url": "http://r.admob.com:80/ad_source.php?preqs=0&u_sd=1.5&slotname=***** "null"> 
08-09 10:49:24.038: DEBUG/dalvikvm(4543): GC_FOR_MALLOC freed 3826 objects/234984 bytes in 154ms 
08-09 10:49:24.058: DEBUG/webviewglue(4543): nativeDestroy view: 0x2c5320 
08-09 10:49:24.058: INFO/Ads(4543): onFailedToReceiveAd(Ad request successful, but no ad returned due to lack of ad inventory.) 
08-09 10:49:24.078: DEBUG/webviewglue(4543): nativeDestroy view: 0x2b81d0 

क्या कोई सुराग है?

उत्तर

5

मैं सुझाव ट्यूटोरियल (blog.kerul.net/2011/05/)

में की तरह करने की कोशिश की, लेकिन मैं केवल एक पल के लिए एक काला दृश्य प्राप्त और फिर एंड्रॉयड "डेस्कटॉप" पर लौटने था चूक:

स्रोत इस तरह अब लग रहा है:

गतिविधि वर्ग:

class StartActivity extends AdActivity{ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    setContentView(R.layout.main); 

    AdView adview = (AdView)findViewById(R.id.adView1); 
    AdRequest re = new AdRequest(); 
    re.addTestDevice(AdRequest.TEST_EMULATOR); 
    re.setTesting(true); 
    adview.loadAd(re); 
} 
... 
} 

दृश्य:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads" 
android:orientation="vertical" android:layout_width="fill_parent" 
android:layout_height="fill_parent"> 

    <com.google.ads.AdView 
     xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads" 
     android:id="@+id/adView1" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     ads:adSize="BANNER" 
     ads:adUnitId="MY_PUB_ID" /> 

</LinearLayout> 

और हाँ मैं अपने वास्तविक प्रकाशक आईडी

साथ MY_PUB_ID प्रतिस्थापित क्या याद आ रही है? एंड्रॉइड रनटाइम के साथ आप किस एमुलेटर का उपयोग करते हैं?

+0

हम्म ... बहुत रोचक। क्या यह आपकी सभी परियोजना है, या अधिक कोड हैं? सबसे पहले अपने re.addTestDevice (Adrequest.TEST_EMULATOR) को हटाएं; यदि आप re.setTesting (true) पंक्ति का उपयोग करते हैं, तो इसकी आवश्यकता नहीं है। क्या आपने एक्लिप्स में भी एक और परियोजना बनाने की कोशिश की, या यह पहला है? शायद, समस्या, ग्रहण के साथ कोड के साथ नहीं है। – Zwiebel

+0

धन्यवाद :-) .. अब परीक्षण-विज्ञापन प्रिंटिंग प्रदर्शित होता है "सफलता! अब आप ऐप गैलेक्सी से यात्रा करने के लिए तैयार हैं" तो असली विज्ञापनों के साथ कैसे आगे बढ़ें? अभी भी 1. हटाने re.setTesting (सही) 2. एप्लिकेशन की वास्तविक वास्तविक बाजार यूआरएल को admob में 3. लिंक एप्लिकेशन को एप्लिकेशन बाजार पर अपना ऐप प्रकाशित करते है वहाँ: मैं इस तरह करना होगा कुछ गुम या गलत है? –

+0

अंत में: डी समस्या क्या थी? क्या आपने केवल re.addTestDevice को हटा दिया था? हां सबसे पहले आपको अपनी प्रोजेक्ट से re.setTesting (true) पंक्ति को हटाना होगा, फिर इसे प्रकाशित करें। मुझे लगता है कि आपको वास्तविक वास्तविक बाजार यूआरएल की आवश्यकता नहीं है, आपको केवल एडोब की साइट पर जो दिखाया गया था, उस उदाहरण के लिए अपना पैकेज नाम लिखना होगा। मुझे खुशी है कि मैं आपकी मदद कर सकता हूं;) – Zwiebel

1

आपको // कोई संकेत नहीं है कि यह आपके टेस्ट डिवाइस का कोड क्यों स्ट्रिंग करता है। मैं परीक्षण करते समय सेटटेस्टिंग (सत्य) का उपयोग करना पसंद करता हूं, लेकिन आप जानते हैं। समस्या यह हो सकती है।

ओह और मैं देख रहा हूँ अपने कार्यक्रम विज्ञापन विज्ञापन वस्तु-सूची की गलती की वजह से com.google.ads.adView अनुभाग में अपने लेआउट में इस जगह प्राप्त नहीं कर सकता है कि: xmlns: विज्ञापन = "http://schemas.android.com/apk/lib/com.google.ads "

और अपने मैनिफेस्ट में इंटरनेट अनुमति लेने के लिए मत भूलना।

उम्मीद है कि यह मदद करता है।

संपादित करें: मुझे यकीन नहीं है कि यह आपकी समस्या है, लेकिन मुझे लगता है कि इससे मदद मिल सकती है।

+0

मैं r.addTestdevice (phoneID) के साथ परीक्षण उपकरण स्थापित करने के लिए भी है, तो मेरी देव फोन परीक्षण विज्ञापन प्राप्त करता है पसंद करते हैं, और मैं (setTesting वापस लौटने की जरूरत नहीं है) जब मैं रिलीज करता हूं तो झूठी होती है। इसके अलावा यदि आप कई देव फोन और सिमुलेटर का उपयोग करते हैं, तो आप बस अपनी आईडी का विज्ञापन करते हैं, और यह हो जाता है। "// कोई सुराग ..." के रूप में, इस पंक्ति के साथ कोई समस्या नहीं है :-) – Smugrik

+0

उत्तर के लिए धन्यवाद..मैंने इसे आपके जैसा सुझाव दिया..और वही व्यवहार और मेरा दूसरा लॉग आउट मिला प्रारंभिक पोस्ट –

+0

शायद यह मदद करेगा: http://blog.kerul.net/2011/05/installing-google-admob-into-android.html कम से कम मुझे उम्मीद है :) – Zwiebel

0

सूची की कमी का मतलब है कि AdMob के पास कोई विज्ञापन नहीं है, यह सामान्य है कि आपका खाता नया है, थोड़ी देर बाद आपकी भरने की दर बढ़ेगी और अधिक विज्ञापन प्रदर्शित किए जाएंगे। यदि आपको अपने AdMob साइट्स/ऐप पेज में हरे रंग की स्थिति की रोशनी दिखाई देती है, तो आपको चिंता नहीं करनी चाहिए, अपनी भर-दर Enabling Google AdSense Ads in Your Applications बढ़ाने के लिए ऐडसेंस जोड़ने का प्रयास करें।

संपादित करें: आप पहले से ही ऐडसेंस सक्षम

+0

मुझे नोटिस के साथ हरा स्थिति मिली: सक्रिय: आपकी वेबसाइट वर्तमान में AdMob को दृश्य अनुरोध भेज रही है। (मुझे नहीं पता कि मेरी साइट admob से बात क्यों कर रही है ...) क्या मैं भरने की दर बढ़ाने के लिए कुछ भी कर सकता हूं .. एक विज्ञापन प्रदर्शित करने के लिए ... ... वास्तव में मेरी वेबसाइट के लिए क्या कनेक्शन है मेरे ऐप के साथ इसका कोई लेना-देना नहीं है? –

+0

आपकी साइट आपके प्रकाशन, ऐप्स मोबाइल वेबसाइट इत्यादि के लिए एक सामान्य शब्द admob उपयोग है ... तो इसका मतलब है कि आपका ऐप admob – Smugrik

+0

के साथ संचार कर रहा है, इसलिए मेरी साइट का यूआरएल केवल मेरे ऐप के लिए पहचानकर्ता के रूप में उपयोग किया जाता है? –

0

मेरे पास इस तरह के संदेशों को क्रैश करने और प्रदर्शित करने का अनुभव है - "कक्षा com.admob.ads.AdView को बढ़ाने में त्रुटि"। कुछ शोध और परीक्षण करने से मैंने विज्ञापन दृश्य को प्रदर्शित करने के लिए निम्न XML विशेषता निष्कर्ष निकाला;

`<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="wrap_content" 
android:layout_height="match_parent" 
android:background="@drawable/bg1" 
android:orientation="vertical" > 

<TableRow 
    android:id="@+id/tableRow2" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" > 
    <com.google.ads.AdView 
     xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads" 
     android:id="@+id/ad" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     ads:adSize="SMART_BANNER" 
     ads:adUnitId="738a44d913034b9f" 
     /> 
</TableRow> 

<TableRow 
    android:id="@+id/tableRow3" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" > 

    <EditText 
     android:id="@+id/txtsearch" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:inputType="textMultiLine" 
     android:maxLines="3" 
     android:minLines="1" 
     android:scrollbarStyle="outsideOverlay" 
     android:scrollbars="vertical" /> 

</TableRow> 

<TableRow 
    android:id="@+id/tableRow1" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" > 







    <Button 
     android:id="@+id/btnkamus" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:drawableRight="@drawable/search" /> 




    <Button 
     android:id="@+id/btnsearch" 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:layout_weight="1" 
     android:text="Kesan" /> 


    <Button 
     android:id="@+id/btncadang" 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:layout_weight="1" 
     android:text="Cadang" /> 

</TableRow> 


<WebView 
    android:id="@+id/webView1" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" /> 

</LinearLayout>` 

पूरा ट्यूटोरियल यहाँ है - http://blog.kerul.net/2012/08/example-how-to-install-google-admob-6x.html

संबंधित मुद्दे