<?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/"
	>

<channel>
	<title>Codec &#187; iPhone</title>
	<atom:link href="http://www.trembl.org/codec/tag/iphone/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.trembl.org/codec</link>
	<description>A Personal Polylogic Code/Decode &#039;Zettelkasten&#039;</description>
	<lastBuildDate>Thu, 02 Feb 2012 03:38:01 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Fonts on the iPhone</title>
		<link>http://www.trembl.org/codec/591/</link>
		<comments>http://www.trembl.org/codec/591/#comments</comments>
		<pubDate>Mon, 17 May 2010 08:41:49 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[font]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[system]]></category>
		<category><![CDATA[UIFont]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/591/</guid>
		<description><![CDATA[I never seen to be able to remember the fonts available on the iPhone. Here&#8217;s the code to print out all font families and font styles. for &#40;NSString *familyName in &#91;UIFont familyNames&#93;&#41; &#123; NSLog&#40;@&#34;%@, %@&#34;, familyName, &#91;UIFont fontNamesForFamilyName:familyName&#93;&#41;; &#125; And here is the current result: 2010-05-17 17:38:05.931 fonts[20843:207] AppleGothic, ( AppleGothic ) 2010-05-17 17:38:05.932 fonts[20843:207] [...]]]></description>
			<content:encoded><![CDATA[<p>I never seen to be able to remember the fonts available on the iPhone. Here&#8217;s the code to print out all font families and font styles.</p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;"><span style="color: #a61390;">for</span> <span style="color: #002200;">&#40;</span><span style="color: #400080;">NSString</span> <span style="color: #002200;">*</span>familyName <span style="color: #a61390;">in</span> <span style="color: #002200;">&#91;</span>UIFont familyNames<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span> <span style="color: #002200;">&#123;</span>
	NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;%@, %@&quot;</span>, familyName, <span style="color: #002200;">&#91;</span>UIFont fontNamesForFamilyName<span style="color: #002200;">:</span>familyName<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;
<span style="color: #002200;">&#125;</span></pre></div></div>

<p>And here is the current result:</p>
<pre>
2010-05-17 17:38:05.931 fonts[20843:207] AppleGothic, (
    AppleGothic
)
2010-05-17 17:38:05.932 fonts[20843:207] Hiragino Kaku Gothic ProN, (
    "HiraKakuProN-W6",
    "HiraKakuProN-W3"
)
2010-05-17 17:38:05.932 fonts[20843:207] Arial Unicode MS, (
    ArialUnicodeMS
)
2010-05-17 17:38:05.932 fonts[20843:207] Heiti K, (
    "STHeitiK-Medium",
    "STHeitiK-Light"
)
2010-05-17 17:38:05.932 fonts[20843:207] DB LCD Temp, (
    DBLCDTempBlack
)
2010-05-17 17:38:05.932 fonts[20843:207] Helvetica, (
    "Helvetica-Oblique",
    "Helvetica-BoldOblique",
    Helvetica,
    "Helvetica-Bold"
)
2010-05-17 17:38:05.932 fonts[20843:207] Marker Felt, (
    "MarkerFelt-Thin"
)
2010-05-17 17:38:05.933 fonts[20843:207] Times New Roman, (
    TimesNewRomanPSMT,
    "TimesNewRomanPS-BoldMT",
    "TimesNewRomanPS-BoldItalicMT",
    "TimesNewRomanPS-ItalicMT"
)
2010-05-17 17:38:05.933 fonts[20843:207] Verdana, (
    "Verdana-Bold",
    "Verdana-BoldItalic",
    Verdana,
    "Verdana-Italic"
)
2010-05-17 17:38:05.933 fonts[20843:207] Georgia, (
    "Georgia-Bold",
    Georgia,
    "Georgia-BoldItalic",
    "Georgia-Italic"
)
2010-05-17 17:38:05.933 fonts[20843:207] Arial Rounded MT Bold, (
    ArialRoundedMTBold
)
2010-05-17 17:38:05.933 fonts[20843:207] Trebuchet MS, (
    "TrebuchetMS-Italic",
    TrebuchetMS,
    "Trebuchet-BoldItalic",
    "TrebuchetMS-Bold"
)
2010-05-17 17:38:05.933 fonts[20843:207] Heiti TC, (
    "STHeitiTC-Light",
    "STHeitiTC-Medium"
)
2010-05-17 17:38:05.933 fonts[20843:207] Geeza Pro, (
    "GeezaPro-Bold",
    GeezaPro
)
2010-05-17 17:38:05.934 fonts[20843:207] Courier, (
    Courier,
    "Courier-BoldOblique",
    "Courier-Oblique",
    "Courier-Bold"
)
2010-05-17 17:38:05.934 fonts[20843:207] Arial, (
    ArialMT,
    "Arial-BoldMT",
    "Arial-BoldItalicMT",
    "Arial-ItalicMT"
)
2010-05-17 17:38:05.934 fonts[20843:207] Heiti J, (
    "STHeitiJ-Medium",
    "STHeitiJ-Light"
)
2010-05-17 17:38:05.934 fonts[20843:207] Arial Hebrew, (
    ArialHebrew,
    "ArialHebrew-Bold"
)
2010-05-17 17:38:05.934 fonts[20843:207] Courier New, (
    "CourierNewPS-BoldMT",
    "CourierNewPS-ItalicMT",
    "CourierNewPS-BoldItalicMT",
    CourierNewPSMT
)
2010-05-17 17:38:05.934 fonts[20843:207] Zapfino, (
    Zapfino
)
2010-05-17 17:38:05.934 fonts[20843:207] American Typewriter, (
    AmericanTypewriter,
    "AmericanTypewriter-Bold"
)
2010-05-17 17:38:05.935 fonts[20843:207] Heiti SC, (
    "STHeitiSC-Medium",
    "STHeitiSC-Light"
)
2010-05-17 17:38:05.935 fonts[20843:207] Helvetica Neue, (
    HelveticaNeue,
    "HelveticaNeue-Bold"
)
2010-05-17 17:38:05.935 fonts[20843:207] Thonburi, (
    "Thonburi-Bold",
    Thonburi
)
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/591/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A bit about Frameworks and Static Libraries on the iPhone</title>
		<link>http://www.trembl.org/codec/519/</link>
		<comments>http://www.trembl.org/codec/519/#comments</comments>
		<pubDate>Fri, 09 Apr 2010 12:08:47 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Cooked]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[library]]></category>
		<category><![CDATA[package]]></category>
		<category><![CDATA[reuse]]></category>
		<category><![CDATA[static]]></category>
		<category><![CDATA[target]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=519</guid>
		<description><![CDATA[Frameworks are a way to share code and other resources between application. As sharing code between applications is not really possible on the iPhone (as is dynamic loading of libraries) it does not really make much sense to use Frameworks on the iPhone &#8211; except maybe for the nice handling of reusable code. Where with [...]]]></description>
			<content:encoded><![CDATA[<p>Frameworks are a way to share code and other resources between application. As sharing code between applications is not really possible on the iPhone (as is dynamic loading of libraries) it does not really make much sense to use Frameworks on the iPhone &#8211; except maybe for the nice handling of reusable code.</p>
<p>Where with Frameworks the specific files are accessable after the Framework is added to a project, working with Static Libraries is a bit more of an hussle. You not only need to add the library, but also need to make sure to set the right <code>Header Search Paths</code>, which can become troublesome when working with SVN&#8217;ed projects.</p>
<p>And because the architecture differs on the iPhone (ARM) and the Simulator (i386), having precompiled libraries is not the best solution. But adding a depended library project to your projects kind of negates the advantages of having reusable code by adding unnecessary complications.</p>
<p>Recommendation?<span class="helvetica bold"> Just add the desired files to your project. </span>And if you really mind, don&#8217;t copy, but only include by reference.</p>
<ul>
<li><a href="http://developer.apple.com/mac/library/documentation/MacOSX/Conceptual/BPFrameworks/Frameworks.html">Introduction to Framework Programming Guide (Mac OSX)</a></li>
<li><a href="http://hi.baidu.com/myguru/blog/item/0db546ee43ae23f2b2fb958b.html">Creating a static library for the iPhone<br />
</a></li>
<li><a href="http://sites.google.com/site/michaelsafyan/coding/resources/how-to-guides/cross-compile-for-the-iphone/how-to-construct-iphone-framework-bundles-for-cross-compiled-iphone-libraries">How-To Construct iPhone Framework Bundles For Cross-Compiled iPhone Libraries</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/519/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Target Conditionals</title>
		<link>http://www.trembl.org/codec/492/</link>
		<comments>http://www.trembl.org/codec/492/#comments</comments>
		<pubDate>Wed, 07 Apr 2010 10:06:08 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[condition]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Simulator]]></category>
		<category><![CDATA[target]]></category>
		<category><![CDATA[TargetConditionals.h]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=492</guid>
		<description><![CDATA[TargetConditionals.h #include &#60;TargetConditionals.h&#62;; &#160; // Gives you TARGET_IPHONE_SIMULATOR and TARGET_OS_IPHONE target conditionals. // Set hello to &#34;Hello, &#60;device or simulator&#62;&#34;! #if TARGET_IPHONE_SIMULATOR NSString *hello = @&#34;Hello, iPhone Simulator!&#34;; #else NSString *hello = @&#34;Hello, iPhone device!&#34;; #endif &#160; //Determining whether you’re compiling for the iPhone OS #if TARGET_OS_IPHONE #import &#60;UIKit/UIKit.h&#62; #else #import &#60;Cocoa/Cocoa.h&#62; #endif Conditionalizing Compilation [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.opensource.apple.com/source/CarbonHeaders/CarbonHeaders-18.1/TargetConditionals.h">TargetConditionals.h</a></p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;"><span style="color: #6e371a;">#include &lt;TargetConditionals.h&gt;;</span>
&nbsp;
<span style="color: #11740a; font-style: italic;">// Gives you TARGET_IPHONE_SIMULATOR and TARGET_OS_IPHONE target conditionals.</span>
<span style="color: #11740a; font-style: italic;">// Set hello to &quot;Hello, &lt;device or simulator&gt;&quot;!</span>
<span style="color: #6e371a;">#if TARGET_IPHONE_SIMULATOR</span>
   <span style="color: #400080;">NSString</span> <span style="color: #002200;">*</span>hello <span style="color: #002200;">=</span> <span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Hello, iPhone Simulator!&quot;</span>;
<span style="color: #6e371a;">#else</span>
   <span style="color: #400080;">NSString</span> <span style="color: #002200;">*</span>hello <span style="color: #002200;">=</span> <span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Hello, iPhone device!&quot;</span>;
<span style="color: #6e371a;">#endif</span>
&nbsp;
<span style="color: #11740a; font-style: italic;">//Determining whether you’re compiling for the iPhone OS</span>
<span style="color: #6e371a;">#if TARGET_OS_IPHONE</span>
   <span style="color: #6e371a;">#import &lt;UIKit/UIKit.h&gt;</span>
<span style="color: #6e371a;">#else</span>
   <span style="color: #6e371a;">#import &lt;Cocoa/Cocoa.h&gt;</span>
<span style="color: #6e371a;">#endif</span></pre></div></div>

<p><a href="http://developer.apple.com/iphone/library/DOCUMENTATION/Xcode/Conceptual/iphone_development/115-Configuring_Applications/configuring_applications.html#//apple_ref/doc/uid/TP40007959-CH19-SW7">Conditionalizing Compilation and Linking</a> from the Apple Dev Library.</p>
<p>I came across a simple and short IPHONE target conditional at some <a href="http://code.google.com/p/vvopensource/">framework</a>, but that did not seemed to do the trick. I am probably missing something there.</p>
<p>-</p>
<p>Update 1.<br />
<a href="http://developer.apple.com/mac/library/DOCUMENTATION/Darwin/Reference/ManPages/man1/tconf.1.html">tconf</a> might be a step into the right directions.</p>
<p>Just out of curiosity, here a incomplete list of available target conditionals:</p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;">TARGET_IPHONE_SIMULATOR
TARGET_CARBON
TARGET_OS_IPHONE
TARGET_CPU_PPC 
TARGET_CPU_PPC64
TARGET_CPU_68K
TARGET_API_MAC_OSX
PRAGMA_ALIGN_SUPPORTED
TARGET_OS_UNIX
TARGET_OS_EMBEDDED
TARGET_OS_MAC
TARGET_OS_WIN32
TARGET_OS_UNIX
TARGET_OS_EMBEDDED
TARGET_RT_MAC_CFM
TARGET_RT_MAC_MACHO
...</pre></div></div>

<p>Update 2.<br />
And that&#8217;s the <a href="http://www.opensource.apple.com/source/CarbonHeaders/CarbonHeaders-18.1/TargetConditionals.h">motherload</a>. Nice of Apple to open-source that.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/492/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8216;Initial interface orientation&#8217; setting in Info.plisy</title>
		<link>http://www.trembl.org/codec/490/</link>
		<comments>http://www.trembl.org/codec/490/#comments</comments>
		<pubDate>Tue, 06 Apr 2010 02:59:32 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[info]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[landscape]]></category>
		<category><![CDATA[orientation]]></category>
		<category><![CDATA[plist]]></category>
		<category><![CDATA[portrait]]></category>
		<category><![CDATA[setting]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=490</guid>
		<description><![CDATA[The Informatin Property List of iPhone Applications has the optional setting of Initial interface orientation. Is a NSString type, I was wondering, which values were supported, bzw required. Luckily, auto-complete is your friend. For completeness&#8217; sake, here are the accepted values: Portrait (top home button) Portrait (bottom home button) Landscape (left home button) Landscape (right [...]]]></description>
			<content:encoded><![CDATA[<p>The Informatin Property List of iPhone Applications has the optional setting of I<em>nitial interface orientation</em>. Is a NSString type, I was wondering, which values were supported, bzw required. Luckily, auto-complete is your friend.</p>
<p>For completeness&#8217; sake, here are the accepted values:</p>
<p><code>Portrait (top home button)<br />
Portrait (bottom home button)<br />
Landscape (left home button)<br />
Landscape (right home button)</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/490/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Realtime Video on the iPhone from a Local Server</title>
		<link>http://www.trembl.org/codec/389/</link>
		<comments>http://www.trembl.org/codec/389/#comments</comments>
		<pubDate>Fri, 19 Mar 2010 09:37:10 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Cooked]]></category>
		<category><![CDATA[dirty]]></category>
		<category><![CDATA[geostream]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[live]]></category>
		<category><![CDATA[quick]]></category>
		<category><![CDATA[real time]]></category>
		<category><![CDATA[simple]]></category>
		<category><![CDATA[stream]]></category>
		<category><![CDATA[streaming]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=389</guid>
		<description><![CDATA[Following Problem: How do stream video from a local machine to an iPhone OS device in real time? Real-time is an absolutely necessary. That basically rules out the HTTP Streaming Server (as described previously), as it&#8217;s capable of streaming to multiple clients, but has to sacrifice real time for that. I looked a bit into [...]]]></description>
			<content:encoded><![CDATA[<p>Following Problem: How do stream video from a local machine to an iPhone OS device in real time? Real-time is an absolutely necessary. That basically rules out the HTTP Streaming Server (<a href="http://www.trembl.org/codec/387/">as described previously</a>), as it&#8217;s capable of streaming to multiple clients, but has to sacrifice real time for that.</p>
<p>I looked a bit into sending the video packets via UDP, but that would create the challenge of having to know the IP address of the device. Not to mention the overhead of re-assembling the packets into video frames and keeping them somewhat synced. And althought the max. possible size of UDP datagramms is about 65K, the wireless router needs to be configures to handle jumbo-sized packets as well. Hmmm.</p>
<p>There must be a simpler way&#8230;</p>
<p>As this is only on a local network, and only intended for one recipent, I was wondering, whether the network speed would be high enough to deliver 25fps via a plan Apache server..?</p>
<p>I made a simple <a href="http://cycling74.com/">Max</a> patch, that would capture the video and write a jpeg image every 40ms, this should give us 25fps.<br />
Of course this can be done with any other software as well. If you think that might be to much strain on the harddisk, have a look on <a href="http://www.trembl.org/codec/391/">how to set up a RAM Disk on arbitraty mountpoin</a>t, for example in your local webserver directory.</p>
<p>So we have our webserver, our live-update image:<br />
<code>192.168.20.117/live.jpg</code></p>
<p>Viewing it in a browser an refreshing it should give you updated images. So far so good. (Of course, the address is my <em>local</em> address, yours might vary.)</p>
<p>Now, basically all we have to do is to make a simple iPhone Appli, ask it to reload the image periodically and display the image.</p>
<p>- create a NSURLConnection and point it to the image address</p>
<p>- collect the data, and display it once the download is completed</p>
<p>- download the image again after 40ms.</p>
<p>What can I see, I am surprised it works quite well. Clearly there are some troubles: about 1% of the returned images feature not data, which would result in a flicker on the iPhone&#8230; A simple test, whether the received <span class="helvetica bold">[data length] > 0</span> takes care of that problem.<br />
I am guessing, that this is caused by a collision of the write time of the max patch and the download time of the iPhone application, but I am not 100% sure. If anyone knows the answer, <a href="http://twitter.com/trembl">let me know</a>.</p>
<p>And, yeah, I should really make a videp demo-ing that&#8230;</p>
<p>Anywhere, here are the juicy bits of the code:</p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;"><span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>loadView <span style="color: #002200;">&#123;</span>
	<span style="color: #002200;">&#91;</span>super loadView<span style="color: #002200;">&#93;</span>;
	NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;start&quot;</span><span style="color: #002200;">&#41;</span>;
&nbsp;
	reloadImageView <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span>UIImageView alloc<span style="color: #002200;">&#93;</span> initWithFrame<span style="color: #002200;">:</span>CGRectMake<span style="color: #002200;">&#40;</span><span style="color: #2400d9;">0.0</span>, <span style="color: #2400d9;">0.0</span>, <span style="color: #2400d9;">480</span>, <span style="color: #2400d9;">320</span><span style="color: #002200;">&#41;</span><span style="color: #002200;">&#93;</span>;
	reloadImageView.center <span style="color: #002200;">=</span> CGPointMake<span style="color: #002200;">&#40;</span><span style="color: #2400d9;">160.0</span>, <span style="color: #2400d9;">240.0</span><span style="color: #002200;">&#41;</span>;
	reloadImageView.transform <span style="color: #002200;">=</span> CGAffineTransformMakeRotation<span style="color: #002200;">&#40;</span>M_PI<span style="color: #002200;">/</span><span style="color: #2400d9;">2</span><span style="color: #002200;">&#41;</span>;
&nbsp;
	<span style="color: #002200;">&#91;</span>self.view addSubview<span style="color: #002200;">:</span>reloadImageView<span style="color: #002200;">&#93;</span>;
&nbsp;
	self.view.backgroundColor <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>UIColor blueColor<span style="color: #002200;">&#93;</span>;
&nbsp;
	<span style="color: #002200;">&#91;</span>reloadImageView release<span style="color: #002200;">&#93;</span>;
&nbsp;
	<span style="color: #a61390;">struct</span> timeval tv;
	gettimeofday<span style="color: #002200;">&#40;</span><span style="color: #002200;">&amp;</span>tv, <span style="color: #a61390;">NULL</span><span style="color: #002200;">&#41;</span>;
	diff <span style="color: #002200;">=</span> tv.tv_sec;
&nbsp;
	<span style="color: #002200;">&#91;</span>self downloadImage<span style="color: #002200;">&#93;</span>;
<span style="color: #002200;">&#125;</span>
&nbsp;
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>downloadImage <span style="color: #002200;">&#123;</span>
	startTimestamp <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>self currentTime<span style="color: #002200;">&#93;</span>;
&nbsp;
	<span style="color: #400080;">NSString</span> <span style="color: #002200;">*</span>address <span style="color: #002200;">=</span> <span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;http://192.168.20.117/live.jpg&quot;</span>;
&nbsp;
	<span style="color: #400080;">NSURLRequest</span> <span style="color: #002200;">*</span>request <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #400080;">NSURLRequest</span> requestWithURL<span style="color: #002200;">:</span><span style="color: #002200;">&#91;</span><span style="color: #400080;">NSURL</span> URLWithString<span style="color: #002200;">:</span>address<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#93;</span>;
	<span style="color: #002200;">&#91;</span><span style="color: #400080;">NSURLConnection</span> connectionWithRequest<span style="color: #002200;">:</span>request delegate<span style="color: #002200;">:</span>self<span style="color: #002200;">&#93;</span>;
<span style="color: #002200;">&#125;</span>
&nbsp;
&nbsp;
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>connection<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span><span style="color: #400080;">NSURLConnection</span> <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>connection didFailWithError<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span><span style="color: #400080;">NSError</span> <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>error <span style="color: #002200;">&#123;</span>
	downloadErrors<span style="color: #002200;">++</span>;
	<span style="color: #002200;">&#91;</span>self downloadImage<span style="color: #002200;">&#93;</span>;
<span style="color: #002200;">&#125;</span>
&nbsp;
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>connection<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span><span style="color: #400080;">NSURLConnection</span> <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>connection didReceiveResponse<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span><span style="color: #400080;">NSURLResponse</span> <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>response <span style="color: #002200;">&#123;</span>
	<span style="color: #11740a; font-style: italic;">//NSLog(@&quot;didReceiveResponse&quot;);</span>
	data <span style="color: #002200;">=</span> <span style="color: #a61390;">nil</span>;													<span style="color: #11740a; font-style: italic;">// clear</span>
	<span style="color: #002200;">&#91;</span>data release<span style="color: #002200;">&#93;</span>;												<span style="color: #11740a; font-style: italic;">// release</span>
	data <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span><span style="color: #400080;">NSMutableData</span> alloc<span style="color: #002200;">&#93;</span> initWithCapacity<span style="color: #002200;">:</span><span style="color: #2400d9;">20000</span><span style="color: #002200;">&#93;</span>;		<span style="color: #11740a; font-style: italic;">// create &amp; retain</span>
&nbsp;
<span style="color: #002200;">&#125;</span>
&nbsp;
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>connection<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span><span style="color: #400080;">NSURLConnection</span> <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>connection didReceiveData<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span><span style="color: #400080;">NSData</span> <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>partialData <span style="color: #002200;">&#123;</span>
	<span style="color: #11740a; font-style: italic;">//NSLog(@&quot;didReceiveData&quot;);</span>
	<span style="color: #002200;">&#91;</span>data appendData<span style="color: #002200;">:</span> partialData<span style="color: #002200;">&#93;</span>;
<span style="color: #002200;">&#125;</span>
&nbsp;
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>connectionDidFinishLoading<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span><span style="color: #400080;">NSURLConnection</span> <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>connection <span style="color: #002200;">&#123;</span>
	<span style="color: #11740a; font-style: italic;">//NSLog(@&quot;connectionDidFinishLoading&quot;);</span>
&nbsp;
	<span style="color: #a61390;">float</span> difference <span style="color: #002200;">=</span> <span style="color: #002200;">&#40;</span><span style="color: #002200;">&#40;</span><span style="color: #002200;">&#91;</span>self currentTime<span style="color: #002200;">&#93;</span> <span style="color: #002200;">-</span> startTimestamp<span style="color: #002200;">&#41;</span> <span style="color: #002200;">-</span> <span style="color: #2400d9;">0.040</span><span style="color: #002200;">&#41;</span>;
	<span style="color: #a61390;">if</span> <span style="color: #002200;">&#40;</span><span style="color: #002200;">&#91;</span>data length<span style="color: #002200;">&#93;</span> &gt; <span style="color: #2400d9;">0</span><span style="color: #002200;">&#41;</span> <span style="color: #002200;">&#123;</span>
		<span style="color: #11740a; font-style: italic;">// check if data has content (displaying an empty data </span>
		<span style="color: #11740a; font-style: italic;">// images shows nothing, but flashes the background)</span>
		reloadImageView.image <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>UIImage imageWithData<span style="color: #002200;">:</span>data<span style="color: #002200;">&#93;</span>;
		imagesDownloaded<span style="color: #002200;">++</span>;
		totalBytes <span style="color: #002200;">+=</span> <span style="color: #002200;">&#91;</span>data length<span style="color: #002200;">&#93;</span>;
	<span style="color: #002200;">&#125;</span> <span style="color: #a61390;">else</span> <span style="color: #002200;">&#123;</span>
		zeroBytes<span style="color: #002200;">++</span>;
	<span style="color: #002200;">&#125;</span>
&nbsp;
	<span style="color: #a61390;">if</span> <span style="color: #002200;">&#40;</span>difference &lt; <span style="color: #2400d9;">0</span><span style="color: #002200;">&#41;</span> <span style="color: #002200;">&#123;</span>
		<span style="color: #002200;">&#91;</span>self performSelector<span style="color: #002200;">:</span><span style="color: #a61390;">@selector</span><span style="color: #002200;">&#40;</span>downloadImage<span style="color: #002200;">&#41;</span> withObject<span style="color: #002200;">:</span><span style="color: #a61390;">nil</span> afterDelay<span style="color: #002200;">:</span><span style="color: #a61390;">fabs</span><span style="color: #002200;">&#40;</span>difference<span style="color: #002200;">&#41;</span><span style="color: #002200;">&#93;</span>;
	<span style="color: #002200;">&#125;</span> <span style="color: #a61390;">else</span> <span style="color: #002200;">&#123;</span>
		<span style="color: #002200;">&#91;</span>self downloadImage<span style="color: #002200;">&#93;</span>; <span style="color: #11740a; font-style: italic;">// loop</span>
	<span style="color: #002200;">&#125;</span>
&nbsp;
<span style="color: #002200;">&#125;</span>
&nbsp;
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">float</span><span style="color: #002200;">&#41;</span>currentTime <span style="color: #002200;">&#123;</span>
	<span style="color: #a61390;">struct</span> timeval tv;
	gettimeofday<span style="color: #002200;">&#40;</span><span style="color: #002200;">&amp;</span>tv, <span style="color: #a61390;">NULL</span><span style="color: #002200;">&#41;</span>;
	<span style="color: #a61390;">float</span> msec <span style="color: #002200;">=</span> tv.tv_usec <span style="color: #002200;">/</span> <span style="color: #2400d9;">1000000.0</span>;
	<span style="color: #a61390;">float</span> current <span style="color: #002200;">=</span> <span style="color: #002200;">&#40;</span>tv.tv_sec <span style="color: #002200;">-</span> diff<span style="color: #002200;">&#41;</span> <span style="color: #002200;">+</span> msec;
	<span style="color: #a61390;">return</span> current;
<span style="color: #002200;">&#125;</span></pre></div></div>

<p>And here is the <a href="http://www.trembl.org/codec/wp-content/uploads/2010/03/Stream.zip">whole demo Xcode project</a>. Make sure to change the image address to your local image. I also include a simple Max-patch, that saves images from a camera to disk.</p>
<p><strong>Update</strong><br />
<em>Although the initial diff timer was in the sniplet here, it did not make it in the original Xcode project. Mistake corrected, now the Xcode project should reflect the code here. </em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/389/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>singleTap: and private API</title>
		<link>http://www.trembl.org/codec/303/</link>
		<comments>http://www.trembl.org/codec/303/#comments</comments>
		<pubDate>Mon, 07 Dec 2009 03:25:46 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[Apple Store]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[private]]></category>
		<category><![CDATA[rejection]]></category>
		<category><![CDATA[review]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=303</guid>
		<description><![CDATA[Very funny and strange case of rejection. I made a method called &#8216;singleTap&#8217;, that is &#8211; as the name suggests &#8211; receiving events after a single tap occurs. During the development process the function was not used and commented out, but an oversight let to the notification being left it. And then the message from [...]]]></description>
			<content:encoded><![CDATA[<p>Very funny and strange case of rejection. I made a method called &#8216;singleTap&#8217;, that is &#8211; as the name suggests &#8211;  receiving events after a single tap occurs.<br />
During the development process the function was not used and commented out, but an oversight let to the notification being left it. And then the message from Apple:</p>
<blockquote><p><em>&#8220;3.3.1 Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs.&#8221;</em></p>
<p>The following non-public API is included in your application:</p>
<p>singleTap:</p></blockquote>
<p>Hmm. Clearly I did not use a private API, apparently I just happened to call a function the same name as a private API function&#8230; Wondering if there is a list of reserved function names, which is triggered a rejection?</p>
<p>Solution? I commented out the superflicial notification AND renamed the function to &#8216;oneTap&#8217;. Just in case.</p>
<p>I am starting to believe the stories about the Apple store.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/303/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhone: Dynamic Table Heights</title>
		<link>http://www.trembl.org/codec/162/</link>
		<comments>http://www.trembl.org/codec/162/#comments</comments>
		<pubDate>Thu, 24 Sep 2009 04:00:51 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[@dynamic]]></category>
		<category><![CDATA[cell]]></category>
		<category><![CDATA[height]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[UITabeViewCell]]></category>
		<category><![CDATA[UITabeViewController]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=162</guid>
		<description><![CDATA[Nice blog from CIMGF on Dynamic Table Heights. http://www.cimgf.com/2009/09/23/uitableviewcell-dynamic-height/]]></description>
			<content:encoded><![CDATA[<p>Nice blog from CIMGF on Dynamic Table Heights.<br />
<a href="http://www.cimgf.com/2009/09/23/uitableviewcell-dynamic-height/">http://www.cimgf.com/2009/09/23/uitableviewcell-dynamic-height/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/162/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhone: Checking Network Availability</title>
		<link>http://www.trembl.org/codec/148/</link>
		<comments>http://www.trembl.org/codec/148/#comments</comments>
		<pubDate>Fri, 31 Jul 2009 03:20:36 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[checker]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[UIApplication]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=148</guid>
		<description><![CDATA[Checking whether network is present and active. By way of: http://70.40.216.232/forums/viewtopic.php?f=21&#038;t=425 UIApplication-Network.h &#160; // // UIApplication-Network.h // // SystemConfiguration.framework will need to be added to your project // // To use just call as a class function [UIApplication hasNetworkConnection] // &#160; #import &#60;Foundation/Foundation.h&#62; #import &#60;SystemConfiguration/SCNetworkReachability.h&#62; &#160; &#160; @interface UIApplication &#40;NetworkExtensions&#41; &#160; +&#40;BOOL&#41;hasActiveWiFiConnection; // fast wi-fi [...]]]></description>
			<content:encoded><![CDATA[<p>Checking whether network is present and active.<br />
By way of: <a href="http://70.40.216.232/forums/viewtopic.php?f=21&#038;t=425">http://70.40.216.232/forums/viewtopic.php?f=21&#038;t=425</a></p>
<p>UIApplication-Network.h</p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;">&nbsp;
<span style="color: #11740a; font-style: italic;">//</span>
<span style="color: #11740a; font-style: italic;">//  UIApplication-Network.h</span>
<span style="color: #11740a; font-style: italic;">//</span>
<span style="color: #11740a; font-style: italic;">//  SystemConfiguration.framework will need to be added to your project</span>
<span style="color: #11740a; font-style: italic;">//</span>
<span style="color: #11740a; font-style: italic;">//  To use just call as a class function [UIApplication hasNetworkConnection]</span>
<span style="color: #11740a; font-style: italic;">//</span>
&nbsp;
<span style="color: #6e371a;">#import &lt;Foundation/Foundation.h&gt;</span>
<span style="color: #6e371a;">#import &lt;SystemConfiguration/SCNetworkReachability.h&gt;</span>
&nbsp;
&nbsp;
<span style="color: #a61390;">@interface</span> UIApplication <span style="color: #002200;">&#40;</span>NetworkExtensions<span style="color: #002200;">&#41;</span>
&nbsp;
<span style="color: #002200;">+</span><span style="color: #002200;">&#40;</span><span style="color: #a61390;">BOOL</span><span style="color: #002200;">&#41;</span>hasActiveWiFiConnection;     <span style="color: #11740a; font-style: italic;">// fast wi-fi connection</span>
<span style="color: #002200;">+</span><span style="color: #002200;">&#40;</span><span style="color: #a61390;">BOOL</span><span style="color: #002200;">&#41;</span>hasNetworkConnection;     <span style="color: #11740a; font-style: italic;">// any type of internet connection (edge, 3g, wi-fi)</span>
&nbsp;
<span style="color: #a61390;">@end</span></pre></div></div>

<p>UIApplication-Network.m</p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;"><span style="color: #11740a; font-style: italic;">//</span>
<span style="color: #11740a; font-style: italic;">//  UIApplication-Network.m</span>
<span style="color: #11740a; font-style: italic;">//</span>
&nbsp;
<span style="color: #6e371a;">#import &quot;UIApplication-Network.h&quot;</span>
&nbsp;
&nbsp;
<span style="color: #a61390;">@implementation</span> UIApplication <span style="color: #002200;">&#40;</span>NetworkExtensions<span style="color: #002200;">&#41;</span>
&nbsp;
<span style="color: #6e371a;">#define ReachableViaWiFiNetwork          2</span>
<span style="color: #6e371a;">#define ReachableDirectWWAN               (1 &lt;&lt; 18)</span>
<span style="color: #11740a; font-style: italic;">// fast wi-fi connection</span>
<span style="color: #002200;">+</span><span style="color: #002200;">&#40;</span><span style="color: #a61390;">BOOL</span><span style="color: #002200;">&#41;</span>hasActiveWiFiConnection
<span style="color: #002200;">&#123;</span>
	SCNetworkReachabilityFlags     flags;
	SCNetworkReachabilityRef     reachabilityRef;
	<span style="color: #a61390;">BOOL</span>                              gotFlags;
&nbsp;
	reachabilityRef     <span style="color: #002200;">=</span> SCNetworkReachabilityCreateWithName<span style="color: #002200;">&#40;</span>CFAllocatorGetDefault<span style="color: #002200;">&#40;</span><span style="color: #002200;">&#41;</span>, <span style="color: #002200;">&#91;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;www.apple.com&quot;</span> UTF8String<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;
	gotFlags          <span style="color: #002200;">=</span> SCNetworkReachabilityGetFlags<span style="color: #002200;">&#40;</span>reachabilityRef, <span style="color: #002200;">&amp;</span>flags<span style="color: #002200;">&#41;</span>;
	CFRelease<span style="color: #002200;">&#40;</span>reachabilityRef<span style="color: #002200;">&#41;</span>;
&nbsp;
	<span style="color: #a61390;">if</span> <span style="color: #002200;">&#40;</span><span style="color: #002200;">!</span>gotFlags<span style="color: #002200;">&#41;</span>
	<span style="color: #002200;">&#123;</span>
		<span style="color: #a61390;">return</span> <span style="color: #a61390;">NO</span>;
	<span style="color: #002200;">&#125;</span>
&nbsp;
	<span style="color: #a61390;">if</span><span style="color: #002200;">&#40;</span> flags <span style="color: #002200;">&amp;</span> ReachableDirectWWAN <span style="color: #002200;">&#41;</span>
	<span style="color: #002200;">&#123;</span>
		<span style="color: #a61390;">return</span> <span style="color: #a61390;">NO</span>;
	<span style="color: #002200;">&#125;</span>
&nbsp;
	<span style="color: #a61390;">if</span><span style="color: #002200;">&#40;</span> flags <span style="color: #002200;">&amp;</span> ReachableViaWiFiNetwork <span style="color: #002200;">&#41;</span>
	<span style="color: #002200;">&#123;</span>
		<span style="color: #a61390;">return</span> <span style="color: #a61390;">YES</span>;
	<span style="color: #002200;">&#125;</span>
&nbsp;
	<span style="color: #a61390;">return</span> <span style="color: #a61390;">NO</span>;
<span style="color: #002200;">&#125;</span>
&nbsp;
<span style="color: #11740a; font-style: italic;">// any type of internet connection (edge, 3g, wi-fi)</span>
<span style="color: #002200;">+</span><span style="color: #002200;">&#40;</span><span style="color: #a61390;">BOOL</span><span style="color: #002200;">&#41;</span>hasNetworkConnection;
<span style="color: #002200;">&#123;</span>
    SCNetworkReachabilityFlags     flags;
    SCNetworkReachabilityRef     reachabilityRef;
    <span style="color: #a61390;">BOOL</span>                              gotFlags;
&nbsp;
    reachabilityRef     <span style="color: #002200;">=</span> SCNetworkReachabilityCreateWithName<span style="color: #002200;">&#40;</span>CFAllocatorGetDefault<span style="color: #002200;">&#40;</span><span style="color: #002200;">&#41;</span>, <span style="color: #002200;">&#91;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;www.apple.com&quot;</span> UTF8String<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;
    gotFlags          <span style="color: #002200;">=</span> SCNetworkReachabilityGetFlags<span style="color: #002200;">&#40;</span>reachabilityRef, <span style="color: #002200;">&amp;</span>flags<span style="color: #002200;">&#41;</span>;
    CFRelease<span style="color: #002200;">&#40;</span>reachabilityRef<span style="color: #002200;">&#41;</span>;
&nbsp;
    <span style="color: #a61390;">if</span> <span style="color: #002200;">&#40;</span><span style="color: #002200;">!</span>gotFlags || <span style="color: #002200;">&#40;</span>flags <span style="color: #002200;">==</span> <span style="color: #2400d9;">0</span><span style="color: #002200;">&#41;</span> <span style="color: #002200;">&#41;</span>
    <span style="color: #002200;">&#123;</span>
        <span style="color: #a61390;">return</span> <span style="color: #a61390;">NO</span>;
    <span style="color: #002200;">&#125;</span>
&nbsp;
    <span style="color: #a61390;">return</span> <span style="color: #a61390;">YES</span>;
<span style="color: #002200;">&#125;</span>
&nbsp;
<span style="color: #a61390;">@end</span></pre></div></div>

<p>Also, don&#8217;t forget to add the SystemConfiguration.framework to the Frameworks folder in your application.</p>
<p>In case you get errors like that:</p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;"><span style="color: #bf1d1a;">&quot;_SCNetworkReachabilityGetFlags&quot;</span>, referenced from<span style="color: #002200;">:</span>
		      <span style="color: #002200;">+</span><span style="color: #002200;">&#91;</span>UIApplication<span style="color: #002200;">&#40;</span>NetworkExtensions<span style="color: #002200;">&#41;</span> hasActiveWiFiConnection<span style="color: #002200;">&#93;</span> <span style="color: #a61390;">in</span> UIApplication<span style="color: #002200;">-</span>Network.o
		      <span style="color: #002200;">+</span><span style="color: #002200;">&#91;</span>UIApplication<span style="color: #002200;">&#40;</span>NetworkExtensions<span style="color: #002200;">&#41;</span> hasNetworkConnection<span style="color: #002200;">&#93;</span> <span style="color: #a61390;">in</span> UIApplication<span style="color: #002200;">-</span>Network.o
		  <span style="color: #bf1d1a;">&quot;_SCNetworkReachabilityCreateWithName&quot;</span>, referenced from<span style="color: #002200;">:</span>
		      <span style="color: #002200;">+</span><span style="color: #002200;">&#91;</span>UIApplication<span style="color: #002200;">&#40;</span>NetworkExtensions<span style="color: #002200;">&#41;</span> hasActiveWiFiConnection<span style="color: #002200;">&#93;</span> <span style="color: #a61390;">in</span> UIApplication<span style="color: #002200;">-</span>Network.o
		      <span style="color: #002200;">+</span><span style="color: #002200;">&#91;</span>UIApplication<span style="color: #002200;">&#40;</span>NetworkExtensions<span style="color: #002200;">&#41;</span> hasNetworkConnection<span style="color: #002200;">&#93;</span> <span style="color: #a61390;">in</span> UIApplication<span style="color: #002200;">-</span>Network.o
		ld<span style="color: #002200;">:</span> symbol<span style="color: #002200;">&#40;</span>s<span style="color: #002200;">&#41;</span> not found
		collect2<span style="color: #002200;">:</span> ld returned <span style="color: #2400d9;">1</span> <span style="color: #a61390;">exit</span> status
Build failed <span style="color: #002200;">&#40;</span><span style="color: #2400d9;">2</span> errors<span style="color: #002200;">&#41;</span></pre></div></div>

<p><img src="http://www.trembl.org/codec/wp-content/uploads/2009/07/Picture-4.png" alt="Picture 4" title="Picture 4" width="500" height="169" class="alignnone size-full wp-image-151" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/148/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Updating to OS 3.0 from beta 5</title>
		<link>http://www.trembl.org/codec/119/</link>
		<comments>http://www.trembl.org/codec/119/#comments</comments>
		<pubDate>Fri, 19 Jun 2009 12:56:31 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[os3.0]]></category>
		<category><![CDATA[update]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=119</guid>
		<description><![CDATA[Apparently has to be put into recovery mode. http://discussions.apple.com/thread.jspa?messageID=9651285 http://support.apple.com/kb/HT1808]]></description>
			<content:encoded><![CDATA[<p>Apparently has to be put into recovery mode.</p>
<p><a href="http://discussions.apple.com/thread.jspa?messageID=9651285">http://discussions.apple.com/thread.jspa?messageID=9651285</a><br />
<a href="http://support.apple.com/kb/HT1808">http://support.apple.com/kb/HT1808</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/119/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VVOSC &#8211; Objective C OSC wrapper</title>
		<link>http://www.trembl.org/codec/438/</link>
		<comments>http://www.trembl.org/codec/438/#comments</comments>
		<pubDate>Thu, 18 Jun 2009 11:16:57 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[OSC]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=438</guid>
		<description><![CDATA[source: http://github.com/mrRay/vvosc/tree/master docs: http://www.vidvox.net/rays_oddsnends/vvosc_doc/ after following the instructions in the docs, i get the following error (iPod Touch 2nd, OS3.0 beta 5) /Users/username/Desktop/Test/build/Debug-iphoneos/Test.app: object file format invalid or unsuitable After some googling, I came across this, and it seems to do the trick. add: $(SDKROOT)/ResourceRules.plist to the Code Signing Resource Path. Why exactly it&#8217;s working [...]]]></description>
			<content:encoded><![CDATA[<p>source: <a href="http://github.com/mrRay/vvosc/tree/master">http://github.com/mrRay/vvosc/tree/master</a><br />
docs: <a href="http://www.vidvox.net/rays_oddsnends/vvosc_doc/index.html">http://www.vidvox.net/rays_oddsnends/vvosc_doc/</a></p>
<p>after following the instructions in the docs, i get the following error (iPod Touch 2nd, OS3.0 beta 5)</p>
<blockquote><p>/Users/username/Desktop/Test/build/Debug-iphoneos/Test.app: object file format invalid or unsuitable</p></blockquote>
<p>After some googling, I came across <a href="http://www.stepcase.com/blog/2008/11/24/build-error-after-upgrading-to-iphone-sdk-22/">this</a>, and it seems to do the trick.</p>
<p>add:</p>
<p><strong><em>$(SDKROOT)/ResourceRules.plist</em></strong></p>
<p>to the Code Signing Resource Path. Why exactly it&#8217;s working is anybody&#8217;s guess.</p>
<p>~</p>
<p>This might also be worth a look:<br />
<a href="http://liblo.sourceforge.net/">liblo: Lightweight OSC implementation</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/438/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

