<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>

<channel>
	<title>ClingMarks</title>
	<atom:link href="http://www.clingmarks.com/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.clingmarks.com</link>
	<description>Some slick marks we cling to</description>
	<pubDate>Sun, 01 Aug 2010 05:35:55 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Pair Up/Penguin Links Flash Game Screenshots</title>
		<link>http://www.clingmarks.com/?p=273</link>
		<comments>http://www.clingmarks.com/?p=273#comments</comments>
		<pubDate>Thu, 15 Jul 2010 07:09:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[pairup]]></category>

		<category><![CDATA[penguin links]]></category>

		<guid isPermaLink="false">http://www.clingmarks.com/?p=273</guid>
		<description><![CDATA[Challenge yourself on the full size Pair Up/Penguin Links game: http://www.penguinlinks.com


]]></description>
			<content:encoded><![CDATA[<p>Challenge yourself on the full size Pair Up/Penguin Links game: <a href="http://www.penguinlinks.com">http://www.penguinlinks.com</a></p>
<p><img src="http://www.clingmarks.com/wp-content/uploads/2010/07/menupage-300x210.jpg" alt="menupage" title="menupage" width="300" height="210" class="alignnone size-medium wp-image-274" /><br />
<img src="http://www.clingmarks.com/wp-content/uploads/2010/07/gamepage-300x210.jpg" alt="gamepage" title="gamepage" width="300" height="210" class="alignnone size-medium wp-image-275" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.clingmarks.com/?feed=rss2&amp;p=273</wfw:commentRss>
		</item>
		<item>
		<title>PenguinLinks/PairUp flash game launched</title>
		<link>http://www.clingmarks.com/?p=264</link>
		<comments>http://www.clingmarks.com/?p=264#comments</comments>
		<pubDate>Wed, 14 Jul 2010 19:06:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[pairup]]></category>

		<category><![CDATA[penguin links]]></category>

		<guid isPermaLink="false">http://www.clingmarks.com/?p=264</guid>
		<description><![CDATA[Ready for more PenguinLinks/PairUp challenges? Visit http://www.penguinlinks.com
Feature:

Flash game, open to all users!
More tiles: Elementary level - 6&#215;12; HighSchool - 7&#215;14; College - 8&#215;16.
Online scoreboard

Enjoy the game! As usual, write to us (support at clingmarks.com) for feedbacks! 
]]></description>
			<content:encoded><![CDATA[<p>Ready for more PenguinLinks/PairUp challenges? Visit <a href="http://www.penguinlinks.com">http://www.penguinlinks.com</a></p>
<p>Feature:</p>
<ul>
<li>Flash game, open to all users!</li>
<li>More tiles: Elementary level - 6&#215;12; HighSchool - 7&#215;14; College - 8&#215;16.</li>
<li>Online <a href="http://www.penguinlinks.com/scoreboard.php3">scoreboard</a></li>
</ul>
<p>Enjoy the game! As usual, write to us (support at clingmarks.com) for feedbacks! </p>
]]></content:encoded>
			<wfw:commentRss>http://www.clingmarks.com/?feed=rss2&amp;p=264</wfw:commentRss>
		</item>
		<item>
		<title>iPhone Game &#8220;Penguin Links&#8221; Available in Apps Store</title>
		<link>http://www.clingmarks.com/?p=240</link>
		<comments>http://www.clingmarks.com/?p=240#comments</comments>
		<pubDate>Sun, 20 Jun 2010 15:58:32 +0000</pubDate>
		<dc:creator>yuchen</dc:creator>
		
		<category><![CDATA[iphone programming]]></category>

		<category><![CDATA[penguin links]]></category>

		<category><![CDATA[iphone]]></category>

		<category><![CDATA[iphone apps]]></category>

		<guid isPermaLink="false">http://www.clingmarks.com/?p=240</guid>
		<description><![CDATA[Finally, this popular Android game (Pair Up) is available on iPhone apps store now. Since the name &#8220;Pair Up&#8221; already taken there, we have to use another name &#8220;Penguin Links&#8221; &#8212; we actually like this game a lot! Just search for &#8220;Penguin Links&#8221; and you will find it. Or follow direct links at:
Penguin Links: http://itunes.apple.com/us/app/penguin-links/id377343234?mt=8

Penguin Links [...]]]></description>
			<content:encoded><![CDATA[<p>Finally, this popular Android game (Pair Up) is available on iPhone apps store now. Since the name &#8220;Pair Up&#8221; already taken there, we have to use another name &#8220;Penguin Links&#8221; &#8212; we actually like this game a lot! Just search for &#8220;Penguin Links&#8221; and you will find it. Or follow direct links at:</p>
<div>Penguin Links: <a href="http://itunes.apple.com/us/app/penguin-links/id377343234?mt=8" target="_blank">http://itunes.apple.com/us/app/penguin-links/id377343234?mt=8</a></div>
<p>
<div>Penguin Links Free: <a href="http://itunes.apple.com/us/app/penguin-links-free/id377344958?mt=8" target="_blank">http://itunes.apple.com/us/app/penguin-links-free/id377344958?mt=8</a></div>
<p></p>
<p>It has been more than a year since the first version of Pair Up released on Android market. No, it&#8217;s not that we don&#8217;t love iphone, it&#8217;s just because we happen to know Java better &#8212; the primary programming language Android uses. Since the game was released, it has become such a success: hundreds of thousands downloads, thousands of reviews (you can find the reviews <a href="http://www.cyrket.com/p/android/com.clingmarks.pairup" target="_blank">here</a> ); we have to spent a lot time on fixing bugs, answering questions, adding new features, &#8230; But we have never forgotten the iphone users. And finally, it is here! We are confident you will like it; but if you have any question, feel free to write to us from the &#8220;Feedback&#8221; tab or directly at support@clingmarks.com.</p>
<p>Also, don&#8217;t forget to rate the game. We need your support!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.clingmarks.com/?feed=rss2&amp;p=240</wfw:commentRss>
		</item>
		<item>
		<title>Where is the mute button?</title>
		<link>http://www.clingmarks.com/?p=234</link>
		<comments>http://www.clingmarks.com/?p=234#comments</comments>
		<pubDate>Mon, 17 May 2010 07:51:43 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.clingmarks.com/?p=234</guid>
		<description><![CDATA[For the last 2 Pair Up releases, we took out the mute button from the game menu, and got some questions from our users as to how to mute the game sound. Here&#8217;s how: use your phone&#8217;s volume controller.
A bit more explanation as to why we made this change: the popup menu with 4 items [...]]]></description>
			<content:encoded><![CDATA[<p>For the last 2 Pair Up releases, we took out the mute button from the game menu, and got some questions from our users as to how to mute the game sound. Here&#8217;s how: use your phone&#8217;s volume controller.</p>
<p>A bit more explanation as to why we made this change: the popup menu with 4 items (hint, shuffle, pause, and mute) takes too much estate: almost 1/3 of the screen, which blocks too much of the board. Reducing it to 3 items will allow them to fit in one line and only take 1/6 of the screen. Plus, less items in the menu will make it easier and faster for users to locate and click on the intended item.</p>
<p>Let us know what you think: support@clingmarks.com</p>
]]></content:encoded>
			<wfw:commentRss>http://www.clingmarks.com/?feed=rss2&amp;p=234</wfw:commentRss>
		</item>
		<item>
		<title>Pair Up Bug Fixed</title>
		<link>http://www.clingmarks.com/?p=232</link>
		<comments>http://www.clingmarks.com/?p=232#comments</comments>
		<pubDate>Mon, 17 May 2010 07:38:54 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[pairup]]></category>

		<guid isPermaLink="false">http://www.clingmarks.com/?p=232</guid>
		<description><![CDATA[Thanks to our enthusiastic players: the bug during board shuffling is now fixed. Please download the latest Pair Up (free version 5.2, pro version 5.3) and give it a try!
Let us know if you have any feedback: write to us support@clingmarks.com or follow us on twitter: @clingmarks.
]]></description>
			<content:encoded><![CDATA[<p>Thanks to our enthusiastic players: the bug during board shuffling is now fixed. Please download the latest Pair Up (free version 5.2, pro version 5.3) and give it a try!</p>
<p>Let us know if you have any feedback: write to us support@clingmarks.com or follow us on twitter: @clingmarks.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.clingmarks.com/?feed=rss2&amp;p=232</wfw:commentRss>
		</item>
		<item>
		<title>We are on twitter now!</title>
		<link>http://www.clingmarks.com/?p=230</link>
		<comments>http://www.clingmarks.com/?p=230#comments</comments>
		<pubDate>Wed, 12 May 2010 06:16:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.clingmarks.com/?p=230</guid>
		<description><![CDATA[Follow us on twitter: @clingmarks
]]></description>
			<content:encoded><![CDATA[<p>Follow us on twitter: @clingmarks</p>
]]></content:encoded>
			<wfw:commentRss>http://www.clingmarks.com/?feed=rss2&amp;p=230</wfw:commentRss>
		</item>
		<item>
		<title>Pair Up Is Now Android 1.5 Compatible!</title>
		<link>http://www.clingmarks.com/?p=210</link>
		<comments>http://www.clingmarks.com/?p=210#comments</comments>
		<pubDate>Sun, 25 Apr 2010 23:36:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[pairup]]></category>

		<guid isPermaLink="false">http://www.clingmarks.com/?p=210</guid>
		<description><![CDATA[Good news to those android 1.5 device users (Sprint, etc.): Pair Up is now available on your android market! Go check it out! If you already have &#8220;Pair Up 1.5&#8243; installed, convert to Pair Up now which will be continuously supported.
Stay tuned: we have more features coming soon! Enjoy the game!
]]></description>
			<content:encoded><![CDATA[<p>Good news to those android 1.5 device users (Sprint, etc.): Pair Up is now available on your android market! Go check it out! If you already have &#8220;Pair Up 1.5&#8243; installed, convert to Pair Up now which will be continuously supported.</p>
<p>Stay tuned: we have more features coming soon! Enjoy the game!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.clingmarks.com/?feed=rss2&amp;p=210</wfw:commentRss>
		</item>
		<item>
		<title>New scoreboard for Pair Up game</title>
		<link>http://www.clingmarks.com/?p=202</link>
		<comments>http://www.clingmarks.com/?p=202#comments</comments>
		<pubDate>Wed, 24 Feb 2010 06:41:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.clingmarks.com/?p=202</guid>
		<description><![CDATA[As you might have noticed, we updated the Pair Up Scoreboard to reflect the last 30 days records. The old scoreboard is getting rather static these days: it becomes harder and harder to be in top 50. We hope this change will encourage you to play more SAT/GRE levels, and enjoy more of this game [...]]]></description>
			<content:encoded><![CDATA[<p>As you might have noticed, we updated the Pair Up Scoreboard to reflect the last 30 days records. The old scoreboard is getting rather static these days: it becomes harder and harder to be in top 50. We hope this change will encourage you to play more SAT/GRE levels, and enjoy more of this game from the competition of other players!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.clingmarks.com/?feed=rss2&amp;p=202</wfw:commentRss>
		</item>
		<item>
		<title>Ad Mixer (II) - How to mix Quattro Wireless Ads, AdMob Ads, and your own clickable Ads</title>
		<link>http://www.clingmarks.com/?p=186</link>
		<comments>http://www.clingmarks.com/?p=186#comments</comments>
		<pubDate>Mon, 01 Feb 2010 00:18:52 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Android Programming]]></category>

		<category><![CDATA[Java Programming]]></category>

		<category><![CDATA[ad mixer]]></category>

		<category><![CDATA[AdMob]]></category>

		<category><![CDATA[mobile ads]]></category>

		<category><![CDATA[quattro wireless]]></category>

		<guid isPermaLink="false">http://www.clingmarks.com/?p=186</guid>
		<description><![CDATA[What an impressive long blog title!
Quattro Wireless Ads has slightly better eCPM than AdMob, and it allows your to put a default image Ads (not clickable). However, its fillrate is unbearably low (50% ~ 90%, typically around 75%, according to my 2 week test). Here, I&#8217;m showing you a way to mix Ads from Quattro [...]]]></description>
			<content:encoded><![CDATA[<p>What an impressive long blog title!</p>
<p>Quattro Wireless Ads has slightly better eCPM than AdMob, and it allows your to put a default image Ads (not clickable). However, its fillrate is unbearably low (50% ~ 90%, typically around 75%, according to my 2 week test). Here, I&#8217;m showing you a way to mix Ads from Quattro Wireless, AdMob, and your own Ads.</p>
<p>For information about how to setup Ads on android apps using Quattro Wirelss, <a href="http://wiki.quattrowireless.com/index.php/Android_SDK">click here</a>.</p>
<p><strong>Step 1</strong>: Prepare your own banner ads.</p>
<p><strong>Setp 2</strong>: Add the following Ads banner in your layout xml:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
</pre></td><td class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;FrameLayout</span> <span style="color: #000066;">android:layout_width</span>=<span style="color: #ff0000;">&quot;fill_parent&quot;</span></span>
<span style="color: #009900;">    <span style="color: #000066;">android:layout_height</span>=<span style="color: #ff0000;">&quot;50dp&quot;</span> <span style="color: #000066;">android:gravity</span>=<span style="color: #ff0000;">&quot;top&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
&nbsp;
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ImageView</span> <span style="color: #000066;">android:id</span>=<span style="color: #ff0000;">&quot;@+id/ownads&quot;</span> <span style="color: #000066;">android:src</span>=<span style="color: #ff0000;">&quot;@drawable/banner_ad&quot;</span></span>
<span style="color: #009900;">        <span style="color: #000066;">android:layout_width</span>=<span style="color: #ff0000;">&quot;wrap_content&quot;</span> <span style="color: #000066;">android:layout_height</span>=<span style="color: #ff0000;">&quot;wrap_content&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
&nbsp;
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;com.admob.android.ads.AdView</span></span>
<span style="color: #009900;">        <span style="color: #000066;">android:id</span>=<span style="color: #ff0000;">&quot;@+id/adMob&quot;</span> <span style="color: #000066;">android:layout_width</span>=<span style="color: #ff0000;">&quot;fill_parent&quot;</span></span>
<span style="color: #009900;">	<span style="color: #000066;">android:layout_alignParentTop</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">android:layout_marginTop</span>=<span style="color: #ff0000;">&quot;10dp&quot;</span></span>
<span style="color: #009900;">	<span style="color: #000066;">android:layout_height</span>=<span style="color: #ff0000;">&quot;fill_parent&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
&nbsp;
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;com.qwapi.adclient.android.view.QWAdView</span></span>
<span style="color: #009900;">	<span style="color: #000066;">android:id</span>=<span style="color: #ff0000;">&quot;@+id/QWAd&quot;</span> <span style="color: #000066;">android:layout_width</span>=<span style="color: #ff0000;">&quot;fill_parent&quot;</span></span>
<span style="color: #009900;">	<span style="color: #000066;">android:layout_height</span>=<span style="color: #ff0000;">&quot;fill_parent&quot;</span> <span style="color: #000066;">qwad:siteId</span>=<span style="color: #ff0000;">&quot;xyz&quot;</span></span>
<span style="color: #009900;">	<span style="color: #000066;">qwad:publisherId</span>=<span style="color: #ff0000;">&quot;xyz&quot;</span> <span style="color: #000066;">qwad:mediaType</span>=<span style="color: #ff0000;">&quot;banner,text&quot;</span></span>
<span style="color: #009900;">	<span style="color: #000066;">qwad:displayMode</span>=<span style="color: #ff0000;">&quot;autoRotate&quot;</span> <span style="color: #000066;">qwad:placement</span>=<span style="color: #ff0000;">&quot;top&quot;</span></span>
<span style="color: #009900;">        <span style="color: #000066;">qwad:animation</span>=<span style="color: #ff0000;">&quot;fade&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/FrameLayout<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p><strong>Step 3</strong>: Implement Quattro&#8217;s AdEventsListener so that it always try Quattro&#8217;s ads first; if that fails, try Admob, which upon failure will display your own clickable Ads.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
</pre></td><td class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">android.content.Context</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">android.os.Handler</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">android.os.Message</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">android.view.View</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">com.admob.android.ads.AdView</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">com.qwapi.adclient.android.data.Ad</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">com.qwapi.adclient.android.data.Status</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">com.qwapi.adclient.android.requestparams.AdRequestParams</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">com.qwapi.adclient.android.view.AdEventsListener</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">com.qwapi.adclient.android.view.QWAdView</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> AdListener <span style="color: #000000; font-weight: bold;">implements</span> AdEventsListener <span style="color: #009900;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">private</span> QWAdView qwAdView<span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">private</span> AdView adMobView<span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">public</span> AdListener<span style="color: #009900;">&#40;</span>MainActivity context<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		qwAdView <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>QWAdView<span style="color: #009900;">&#41;</span> context.<span style="color: #006633;">findViewById</span><span style="color: #009900;">&#40;</span>R.<span style="color: #006633;">id</span>.<span style="color: #006633;">QWAd</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		adMobView <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>AdView<span style="color: #009900;">&#41;</span> context.<span style="color: #006633;">findViewById</span><span style="color: #009900;">&#40;</span>R.<span style="color: #006633;">id</span>.<span style="color: #006633;">adMob</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	@Override
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> onAdClick<span style="color: #009900;">&#40;</span><span style="color: #003399;">Context</span> arg0, Ad arg1<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	@Override
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> onAdRequest<span style="color: #009900;">&#40;</span><span style="color: #003399;">Context</span> arg0, AdRequestParams arg1<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	@Override
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> onAdRequestFailed<span style="color: #009900;">&#40;</span><span style="color: #003399;">Context</span> arg0, AdRequestParams arg1,
			Status arg2<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		Message.<span style="color: #006633;">obtain</span><span style="color: #009900;">&#40;</span>hideHandler, <span style="color: #339933;">-</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">sendToTarget</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
        <span style="color: #008000; font-style: italic; font-weight: bold;">/** Hide Quattro and request Ads from AdMob when Quattro returns no Ads. */</span>
	<span style="color: #000000; font-weight: bold;">protected</span> Handler hideHandler <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Handler<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		@Override
		<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> handleMessage<span style="color: #009900;">&#40;</span>Message msg<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			qwAdView.<span style="color: #006633;">setVisibility</span><span style="color: #009900;">&#40;</span><span style="color: #003399;">View</span>.<span style="color: #006633;">GONE</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			adMobView.<span style="color: #006633;">requestFreshAd</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
	<span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #008000; font-style: italic; font-weight: bold;">/** Display Quattro banner when it returns an Ads. */</span>
	<span style="color: #000000; font-weight: bold;">protected</span> Handler showHandler <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Handler<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		@Override
		<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> handleMessage<span style="color: #009900;">&#40;</span>Message msg<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			qwAdView.<span style="color: #006633;">setVisibility</span><span style="color: #009900;">&#40;</span><span style="color: #003399;">View</span>.<span style="color: #006633;">VISIBLE</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
	<span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>
&nbsp;
	@Override
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> onAdRequestSuccessful<span style="color: #009900;">&#40;</span><span style="color: #003399;">Context</span> arg0, AdRequestParams arg1,
			Ad arg2<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		Message.<span style="color: #006633;">obtain</span><span style="color: #009900;">&#40;</span>showHandler, <span style="color: #339933;">-</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">sendToTarget</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	@Override
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> onDisplayAd<span style="color: #009900;">&#40;</span><span style="color: #003399;">Context</span> arg0, Ad arg1<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p><strong>Setp 4</strong>: Change your activity to include this:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
</pre></td><td class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000000; font-weight: bold;">final</span> Uri SAME2D_URI <span style="color: #339933;">=</span>
        Uri.<span style="color: #006633;">parse</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;market://search?q=pname:com.clingmarks.same2dfree&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #008000; font-style: italic; font-weight: bold;">/** Called when the activity is first created. */</span>
@Override
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> onCreate<span style="color: #009900;">&#40;</span>Bundle savedInstanceState<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">super</span>.<span style="color: #006633;">onCreate</span><span style="color: #009900;">&#40;</span>savedInstanceState<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	setContentView<span style="color: #009900;">&#40;</span>R.<span style="color: #006633;">layout</span>.<span style="color: #006633;">main</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        ...
	<span style="color: #006633;">ImageView</span> pairupAds <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>ImageView<span style="color: #009900;">&#41;</span> findViewById<span style="color: #009900;">&#40;</span>R.<span style="color: #006633;">id</span>.<span style="color: #006633;">ownads</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	pairupAds.<span style="color: #006633;">setOnClickListener</span><span style="color: #009900;">&#40;</span>adsListener<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #666666; font-style: italic;">// Configures AdMob's Ads</span>
	AdView ad <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>AdView<span style="color: #009900;">&#41;</span> findViewById<span style="color: #009900;">&#40;</span>R.<span style="color: #006633;">id</span>.<span style="color: #006633;">ad</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>ad<span style="color: #339933;">!=</span><span style="color: #000066; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
                <span style="color: #666666; font-style: italic;">// Show own ads when there's no AdMob Ads.</span>
		ad.<span style="color: #006633;">setGoneWithoutAd</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                <span style="color: #666666; font-style: italic;">// Don't auto request Ads: only do so when Quattro failed.</span>
		ad.<span style="color: #006633;">setRequestInterval</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
        <span style="color: #666666; font-style: italic;">// Configures Quattro's Ads</span>
        AdListener adListener <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> AdListener<span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        QWAdView qwAdView <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>QWAdView<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">findViewById</span><span style="color: #009900;">&#40;</span>R.<span style="color: #006633;">id</span>.<span style="color: #006633;">QWAd</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        qwAdView.<span style="color: #006633;">setAdEventsListener</span><span style="color: #009900;">&#40;</span>adListener,
            <span style="color: #000066; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>  <span style="color: #666666; font-style: italic;">// whether the listener should run in UI thread.</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">//  Own ads click listener.</span>
<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #003399;">View</span>.<span style="color: #006633;">OnClickListener</span> adsListener <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">View</span>.<span style="color: #006633;">OnClickListener</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> onClick<span style="color: #009900;">&#40;</span><span style="color: #003399;">View</span> v<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		Intent intent <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Intent<span style="color: #009900;">&#40;</span>Intent.<span style="color: #006633;">ACTION_VIEW</span>, SAME2D_URI<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		startActivity<span style="color: #009900;">&#40;</span>intent<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Done!</p>
<p>p.s. After the initial post of this blog, Quattro contacted me about the misuse of second parameter in qwAdView.setAdEventsListener method (I was setting it as true which caused significant UI delaying). Thanks for that! I also hope Quattro can provide useful Javadoc as I can&#8217;t find them anywhere.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.clingmarks.com/?feed=rss2&amp;p=186</wfw:commentRss>
		</item>
		<item>
		<title>Ad Mixer (I) - How to mix AdMob Ads and your own clickable Ads</title>
		<link>http://www.clingmarks.com/?p=178</link>
		<comments>http://www.clingmarks.com/?p=178#comments</comments>
		<pubDate>Sun, 31 Jan 2010 23:10:38 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Android Programming]]></category>

		<category><![CDATA[Java Programming]]></category>

		<category><![CDATA[ad mixer]]></category>

		<category><![CDATA[AdMob]]></category>

		<category><![CDATA[quattro wireless]]></category>

		<guid isPermaLink="false">http://www.clingmarks.com/?p=178</guid>
		<description><![CDATA[If you are an AdMob publisher, you will know how fluctuating their fillrates are: mine varies from 40% to 100%. What&#8217;s even worse is that they don&#8217;t support default Ads. So I decide to mix in mine:
For information about how to setup Ads on android apps using AdMob, click here.
Step 1: Prepare your own banner [...]]]></description>
			<content:encoded><![CDATA[<p>If you are an AdMob publisher, you will know how fluctuating their fillrates are: mine varies from 40% to 100%. What&#8217;s even worse is that they don&#8217;t support default Ads. So I decide to mix in mine:</p>
<p>For information about how to setup Ads on android apps using AdMob, <a href="http://developer.admob.com/wiki/Android">click here</a>.</p>
<p><strong>Step 1</strong>: Prepare your own banner ads (320&#215;50 or 480&#215;50. Note AdMob&#8217;s ads has a fixed height of 50 pixels).</p>
<p><strong>Step 2</strong>: Replace your AdView with the following framelayout in your layout xml:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
</pre></td><td class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;FrameLayout</span> <span style="color: #000066;">android:layout_width</span>=<span style="color: #ff0000;">&quot;fill_parent&quot;</span></span>
<span style="color: #009900;">    <span style="color: #000066;">android:layout_height</span>=<span style="color: #ff0000;">&quot;wrap_content&quot;</span> <span style="color: #000066;">android:gravity</span>=<span style="color: #ff0000;">&quot;center_horizontal&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
&nbsp;
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ImageView</span> <span style="color: #000066;">android:id</span>=<span style="color: #ff0000;">&quot;@+id/ownads&quot;</span> <span style="color: #000066;">android:src</span>=<span style="color: #ff0000;">&quot;@drawable/banner_ad&quot;</span></span>
<span style="color: #009900;">	<span style="color: #000066;">android:layout_width</span>=<span style="color: #ff0000;">&quot;wrap_content&quot;</span></span>
<span style="color: #009900;">        <span style="color: #000066;">android:layout_height</span>=<span style="color: #ff0000;">&quot;wrap_content&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
&nbsp;
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;com.admob.android.ads.AdView</span> <span style="color: #000066;">android:id</span>=<span style="color: #ff0000;">&quot;@+id/ad&quot;</span></span>
<span style="color: #009900;">	<span style="color: #000066;">android:layout_width</span>=<span style="color: #ff0000;">&quot;fill_parent&quot;</span> <span style="color: #000066;">android:layout_height</span>=<span style="color: #ff0000;">&quot;50dp&quot;</span></span>
<span style="color: #009900;">	<span style="color: #000066;">android:layout_alignParentBottom</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">        <span style="color: #000066;">app:backgroundColor</span>=<span style="color: #ff0000;">&quot;#000000&quot;</span> <span style="color: #000066;">app:textColor</span>=<span style="color: #ff0000;">&quot;#FFFFFF&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/FrameLayout<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p><strong>Step 3</strong>: Change your activity to include this:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
</pre></td><td class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000000; font-weight: bold;">final</span> Uri SAME2D_URI <span style="color: #339933;">=</span>
        Uri.<span style="color: #006633;">parse</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;market://search?q=pname:com.clingmarks.same2dfree&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #008000; font-style: italic; font-weight: bold;">/** Called when the activity is first created. */</span>
@Override
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> onCreate<span style="color: #009900;">&#40;</span>Bundle savedInstanceState<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">super</span>.<span style="color: #006633;">onCreate</span><span style="color: #009900;">&#40;</span>savedInstanceState<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	setContentView<span style="color: #009900;">&#40;</span>R.<span style="color: #006633;">layout</span>.<span style="color: #006633;">main</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        ...
	<span style="color: #006633;">ImageView</span> pairupAds <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>ImageView<span style="color: #009900;">&#41;</span> findViewById<span style="color: #009900;">&#40;</span>R.<span style="color: #006633;">id</span>.<span style="color: #006633;">ownads</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	pairupAds.<span style="color: #006633;">setOnClickListener</span><span style="color: #009900;">&#40;</span>adsListener<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	AdView ad <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>AdView<span style="color: #009900;">&#41;</span> findViewById<span style="color: #009900;">&#40;</span>R.<span style="color: #006633;">id</span>.<span style="color: #006633;">ad</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>ad<span style="color: #339933;">!=</span><span style="color: #000066; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
                <span style="color: #666666; font-style: italic;">// Show own ads when there's no AdMob Ads.</span>
		ad.<span style="color: #006633;">setGoneWithoutAd</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		ad.<span style="color: #006633;">setRequestInterval</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">60</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #666666; font-style: italic;">// Make the ad disappear with the text or a new ad appear.</span>
		ad.<span style="color: #006633;">requestFreshAd</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #003399;">View</span>.<span style="color: #006633;">OnClickListener</span> adsListener <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">View</span>.<span style="color: #006633;">OnClickListener</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> onClick<span style="color: #009900;">&#40;</span><span style="color: #003399;">View</span> v<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		Intent intent <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Intent<span style="color: #009900;">&#40;</span>Intent.<span style="color: #006633;">ACTION_VIEW</span>, SAME2D_URI<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		startActivity<span style="color: #009900;">&#40;</span>intent<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Done!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.clingmarks.com/?feed=rss2&amp;p=178</wfw:commentRss>
		</item>
	</channel>
</rss>
