<?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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>OpenOvo's Blog</title>
	<atom:link href="http://openovo.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://openovo.wordpress.com</link>
	<description>gang of four reloaded...</description>
	<lastBuildDate>Tue, 28 Jul 2009 16:57:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='openovo.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>OpenOvo's Blog</title>
		<link>http://openovo.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://openovo.wordpress.com/osd.xml" title="OpenOvo&#039;s Blog" />
	<atom:link rel='hub' href='http://openovo.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Linking Private Framework</title>
		<link>http://openovo.wordpress.com/2008/12/15/linking-private-framework/</link>
		<comments>http://openovo.wordpress.com/2008/12/15/linking-private-framework/#comments</comments>
		<pubDate>Mon, 15 Dec 2008 02:15:54 +0000</pubDate>
		<dc:creator>openovo</dc:creator>
				<category><![CDATA[iphone-dev]]></category>
		<category><![CDATA[wireless finder apple80211 dlopen private framework]]></category>

		<guid isPermaLink="false">http://openovo.wordpress.com/?p=12</guid>
		<description><![CDATA[wireless finder apple80211 dlopen private framework<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=openovo.wordpress.com&amp;blog=5851878&amp;post=12&amp;subd=openovo&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Using Private Framework is banned by Apple. It&#8217;s the biggest violation to Apple&#8217;s sdk agrement. But who cares, that doesn&#8217;t mean we can try and experiment what we can really do with an iphone. I&#8217;ll show you here in few lines how to link at runtime your application with a private framework. In this case I will use Apple80211.</p>
<blockquote><p>void *libHandle;<br />
void *airportHandle;<br />
int (*open)(void *);<br />
int (*bind)(void *, NSString *);<br />
int (*close)(void *);<br />
int (*associate)(void *, NSDictionary*, NSString*);<br />
int (*scan)(void *, NSArray **, void *);</p>
<p>libHandle = dlopen(&#8220;/System/Library/PrivateFrameworks/Apple80211.framework/Apple80211&#8243;, RTLD_LAZY);<br />
open  = dlsym(libHandle, &#8220;Apple80211Open&#8221;);<br />
bind  = dlsym(libHandle, &#8220;Apple80211BindToInterface&#8221;);<br />
close = dlsym(libHandle, &#8220;Apple80211Close&#8221;);<br />
associate = dlsym(libHandle, &#8220;Apple80211Associate&#8221;);<br />
scan  = dlsym(libHandle, &#8220;Apple80211Scan&#8221;);</p></blockquote>
<p>The real drawback of this approach is that the framework absolute path is hardcoded in our call to dlopen, which means Apple is able, with a real small change to the OS, to breaks our app. For completeness, the last framework organization change happened with the big step between firmware 1.x and 2.x.</p>
<p>This code is a fragment of a wifi finder project recently implemented by myself. You can download it from <a href="http://code.openovo.com/public/wifi.tar" target="_blank">here</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/openovo.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/openovo.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/openovo.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/openovo.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/openovo.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/openovo.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/openovo.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/openovo.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/openovo.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/openovo.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/openovo.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/openovo.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/openovo.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/openovo.wordpress.com/12/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=openovo.wordpress.com&amp;blog=5851878&amp;post=12&amp;subd=openovo&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://openovo.wordpress.com/2008/12/15/linking-private-framework/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/88f0fb46a6f858a4274bf685594dcc25?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">openovo</media:title>
		</media:content>
	</item>
		<item>
		<title>Dynamic Splash</title>
		<link>http://openovo.wordpress.com/2008/12/15/dynamic-splash/</link>
		<comments>http://openovo.wordpress.com/2008/12/15/dynamic-splash/#comments</comments>
		<pubDate>Mon, 15 Dec 2008 01:48:37 +0000</pubDate>
		<dc:creator>openovo</dc:creator>
				<category><![CDATA[iphone-dev]]></category>
		<category><![CDATA[dynamic default image]]></category>

		<guid isPermaLink="false">http://openovo.wordpress.com/?p=8</guid>
		<description><![CDATA[dynamic default image<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=openovo.wordpress.com&amp;blog=5851878&amp;post=8&amp;subd=openovo&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>iPhone apps take few seconds to launch (also more, depends on how bad is the programmer). Developers can anyway add a splash screen to their application, an image displayed for few seconds while the app is till loading. iPhone OS will always load an image named &#8220;Default.png&#8221; from inside your application bundle as a splash screen. Apple apps can replace the image &#8220;Default.png&#8221; inside the application bundle every time the application terminates, creating the nice/cool/useless effect of having a different splash screen at each startup, usually displaying the last screen of the app before closing it. The bad news for simple developer is that application bundles are cryptographically signed, you can’t modify the contents of the application bundle (by, in this case, changing the default.png resource file) without breaking the digital signature.</p>
<p>Seems like we are stuck with one splash screen for each application, but there is a nice workaround, from Patrick Collison:</p>
<p><a href="http://collison.ie/blog/2008/11/dynamic-defaultpng-files-on-the-iphone" target="_blank">http://collison.ie/blog/2008/11/dynamic-defaultpng-files-on-the-iphone</a></p>
<p>The simple trick is to put a symbolic link called &#8220;Default.png&#8221; in our application bundle, pointing to an accessible location on the device. In this way, our app can create different &#8220;real&#8221; splash screen at runtime.</p>
<p>Here a good comment from John Gruber (<a href="http://daringfireball.net/" target="_blank">http://daringfireball.net/</a>),</p>
<blockquote><p>But I don’t think these dynamic default.png files are a good idea in the first place. I fully realize that the user’s <em>perception</em> of performance is often more important than actual measured-by-a-stopwatch performance, but in the case of dynamic default.png files, I think it goes too far. It is frustrating to see a complete UI that looks usable but isn’t. Dynamic default.png files make application launch times <em>look</em> faster, but they don’t make them <em>feel</em> faster. I feel like a dolt every time I get tricked into uselessly tapping UI elements on a default.png screen.</p></blockquote>
<p>Well, probably John is right, and the dynamic default splash screen is useless, but trying to do what Apple tries to prevent us to do, is sooo good!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/openovo.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/openovo.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/openovo.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/openovo.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/openovo.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/openovo.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/openovo.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/openovo.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/openovo.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/openovo.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/openovo.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/openovo.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/openovo.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/openovo.wordpress.com/8/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=openovo.wordpress.com&amp;blog=5851878&amp;post=8&amp;subd=openovo&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://openovo.wordpress.com/2008/12/15/dynamic-splash/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/88f0fb46a6f858a4274bf685594dcc25?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">openovo</media:title>
		</media:content>
	</item>
		<item>
		<title>Fast Scrolling</title>
		<link>http://openovo.wordpress.com/2008/12/15/fast-scrolling/</link>
		<comments>http://openovo.wordpress.com/2008/12/15/fast-scrolling/#comments</comments>
		<pubDate>Mon, 15 Dec 2008 01:08:57 +0000</pubDate>
		<dc:creator>openovo</dc:creator>
				<category><![CDATA[iphone-dev]]></category>
		<category><![CDATA[iphone scrolling faster uitableview]]></category>

		<guid isPermaLink="false">http://openovo.wordpress.com/?p=5</guid>
		<description><![CDATA[iphone uitableview scrolling faster<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=openovo.wordpress.com&amp;blog=5851878&amp;post=5&amp;subd=openovo&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Apple&#8217;s applications scroll faster!</p>
<p>have you ever compared the scrolling of emails or contacts with table scrolling in most third-party apps? well, Apple&#8217;s apps are way faster. It&#8217;s way faster also compared to the sample code posted by Apple for scrolling table. But in this case, there is no private API, private framework or sort of magic trick available to someone but not to everybody. The authors of Tweetie come up with the solution to the problem, and they also posted the code:</p>
<p><a href="http://blog.atebits.com/2008/12/fast-scrolling-in-tweetie-with-uitableview/" target="_blank">http://blog.atebits.com/2008/12/fast-scrolling-in-tweetie-with-uitableview/</a></p>
<p>We could discuss if having a table scrolling so fast that it&#8217;s impossible to read is good or bad. Personally I like it. I would like to see how it performs in case of table cell more complicated, with some images for instance. Probably I’ll do some experiment about that in the future.</p>
<p>In the meantime, update your app and start scrolling faster!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/openovo.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/openovo.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/openovo.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/openovo.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/openovo.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/openovo.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/openovo.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/openovo.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/openovo.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/openovo.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/openovo.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/openovo.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/openovo.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/openovo.wordpress.com/5/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=openovo.wordpress.com&amp;blog=5851878&amp;post=5&amp;subd=openovo&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://openovo.wordpress.com/2008/12/15/fast-scrolling/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/88f0fb46a6f858a4274bf685594dcc25?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">openovo</media:title>
		</media:content>
	</item>
	</channel>
</rss>
