<?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>The Geek Blog &#187; xcode</title>
	<atom:link href="http://www.artin.org/geekblog/tag/xcode/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.artin.org/geekblog</link>
	<description>A place to write down the crap from my brain</description>
	<lastBuildDate>Mon, 16 Jan 2012 14:45:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>iTunes Connect &#8211; Invalid Binary</title>
		<link>http://www.artin.org/geekblog/2011/05/itunes-connect-invalid-binary/</link>
		<comments>http://www.artin.org/geekblog/2011/05/itunes-connect-invalid-binary/#comments</comments>
		<pubDate>Thu, 26 May 2011 13:11:51 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[ios]]></category>
		<category><![CDATA[iTunes Connect]]></category>
		<category><![CDATA[xcode]]></category>

		<guid isPermaLink="false">http://www.artin.org/geekblog/?p=142</guid>
		<description><![CDATA[I spent the past week pulling out my hair trying to submit an update for Centare&#8217;s EyeOnWeather application to iTunes Connect.  I kept getting a reject from the system and all I got for an error message was &#8220;Invalid Binary.&#8221;  THANKS, THAT&#8217;S SOOPER. Eventually I ended up attempting to contact iTunes Connect Support for further [...]]]></description>
			<content:encoded><![CDATA[<p>I spent the past week pulling out my hair trying to submit an update for Centare&#8217;s EyeOnWeather application to iTunes Connect.  I kept getting a reject from the system and all I got for an error message was &#8220;Invalid Binary.&#8221;  THANKS, THAT&#8217;S SOOPER.</p>
<p>Eventually I ended up attempting to contact iTunes Connect Support for further details.  I thought it might have been missing icons, malformed Info.plist, something.  I haven&#8217;t changed anything in the project drastically with how it builds, so I was at a loss.  Turns out, I was picking the wrong provisioning profile in my setup.  Man I felt stupid.  Ends up that I&#8217;m not crazy &#8211; Apple&#8217;s documentation on how to set up your project for building still only references Xcode 3.  Awesome for the rest of the world using Xcode 4.  Here are some tips I got from Apple iTunes Connect support for pulling in information to submit to their developer team:</p>
<pre>(replace 'path/to/myapp.app" with the actual path to your application):

codesign --verify -vvvv -R='anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.1] exists and certificate leaf[field.1.2.840.113635.100.6.1.4] exists' /path/to/myapp.app

codesign -dvv /path/to/myapp.app

- This command is useful to see what certificate was used to sign your app. If under the section labeled "Authority" it says iPhone Developer, this means that your app was signed with your Developer Certificate. If it says iPhone Distribution, this means that it was signed with your Distribution Certificate.

codesign -d --entitlements - /path/to/myapp.app</pre>
<p>I ended up pulling the EyeOnWeather.app file out of my archive bundle to be sure I was testing what I sent up to iTunes Connect.  You can also just do a &#8220;Build for Archive&#8221; and then right click your .app in Xcode under Product and &#8220;Show In Finder&#8221;.  Drag that file into Terminal and it&#8217;ll paste the full path &amp; filename.</p>
<p>Running those commands gave me confirmation of this &#8211; I was code signing with my developer profile.  Even though you pick the Distribution certificate in the submission window for uploading, it doesn&#8217;t change the signature of the app.  The solution was to go into my setup for the build and change the Code Signing Identity for the &#8220;Release&#8221; configuration to the Distribution profile.  I deleted the old &#8220;Distribution&#8221; build configuration that I had created back in the Xcode 3 days as it&#8217;s no longer appropriate.</p>
<p>This link is the defacto WTF help me document for code signing in Xcode 4:<br />
<a title="Technical Note TN2250 - Understanding and Resolving Code Signing Issues" href="http://developer.apple.com/library/ios/#technotes/tn2250/_index.html" target="_blank"></a><a href="http://developer.apple.com/library/ios/#technotes/tn2250/_index.html" target="_blank">Technical Note TN2250 &#8211; Understanding and Resolving Code Signing Issues</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.artin.org/geekblog/2011/05/itunes-connect-invalid-binary/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Xcode WTF are you doing?!</title>
		<link>http://www.artin.org/geekblog/2009/11/xcode-wtf-are-you-doing/</link>
		<comments>http://www.artin.org/geekblog/2009/11/xcode-wtf-are-you-doing/#comments</comments>
		<pubDate>Mon, 16 Nov 2009 14:36:02 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[xcode]]></category>

		<guid isPermaLink="false">http://www.artin.org/geekblog/?p=59</guid>
		<description><![CDATA[I didn&#8217;t start developing in Xcode &#8220;for real&#8221; until this year but I&#8217;ve played around with Xcode for a number of years.  Over that time, I&#8217;ve screwed around with settings and changed defaults.  It got to the point where following screen shot examples weren&#8217;t matching up, #pramga marks in my code weren&#8217;t showing up correctly [...]]]></description>
			<content:encoded><![CDATA[<p>I didn&#8217;t start developing in Xcode &#8220;for real&#8221; until this year but I&#8217;ve played around with Xcode for a number of years.  Over that time, I&#8217;ve screwed around with settings and changed defaults.  It got to the point where following screen shot examples weren&#8217;t matching up, #pramga marks in my code weren&#8217;t showing up correctly in the code editor method drop down list and on and on.  Perusing through Xcode Workspace Guide, I found this handy little suggestion from Apple:<br />
To reset Xcode to its factory settings for the logged-in user, run these commands in Terminal:</p>
<pre>&gt; defaults delete com.apple.Xcode</pre>
<pre>&gt; rm -rf ~/Library/Application\ Support/Xcode</pre>
<p>After doing this, I had to re-add my Subversion repository, move my build folder to the /tmp directory, and pick my text editor color scheme again.  However, I now have a functioning Xcode and things seems happier again.  Yippy skippy!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.artin.org/geekblog/2009/11/xcode-wtf-are-you-doing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Xcode 3.2.1</title>
		<link>http://www.artin.org/geekblog/2009/10/xcode-3-2-1/</link>
		<comments>http://www.artin.org/geekblog/2009/10/xcode-3-2-1/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 01:41:59 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[xcode]]></category>

		<guid isPermaLink="false">http://www.artin.org/geekblog/2009/10/xcode-3-2-1/</guid>
		<description><![CDATA[Xcode 3.2.1 was released today and is available for download with iPhone SDK 3.1.2. This release is mainly a bug fix release and I&#8217;ve confirmed it does fix the Unit Testing issue I reported earlier.]]></description>
			<content:encoded><![CDATA[<p>Xcode 3.2.1 was released today and is available for download with iPhone SDK 3.1.2.  This release is mainly a bug fix release and I&#8217;ve confirmed it does fix the Unit Testing issue I reported earlier.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.artin.org/geekblog/2009/10/xcode-3-2-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Xcode &amp; Snow Leopard &#8211; Logical unit tests hanging</title>
		<link>http://www.artin.org/geekblog/2009/09/xcode-snow-leopard-logical-unit-tests-hanging/</link>
		<comments>http://www.artin.org/geekblog/2009/09/xcode-snow-leopard-logical-unit-tests-hanging/#comments</comments>
		<pubDate>Sat, 19 Sep 2009 01:41:17 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[test-driven development]]></category>
		<category><![CDATA[xcode]]></category>

		<guid isPermaLink="false">http://www.artin.org/geekblog/?p=48</guid>
		<description><![CDATA[I haven&#8217;t written unit tests before in Xcode.  I started to read Apple&#8217;s article on unit testing with iPhone development because I wanted to follow sound development principles with an agile approach.  Not long into the guide, I got stuck.  Literally.  Using Xcode 3.2 on Snow Leopard caused Xcode to lock/hang during the build of [...]]]></description>
			<content:encoded><![CDATA[<p>I haven&#8217;t written unit tests before in Xcode.  I started to read Apple&#8217;s article on unit testing with iPhone development because I wanted to follow sound development principles with an agile approach.  Not long into the guide, I got stuck.  Literally.  Using Xcode 3.2 on Snow Leopard caused Xcode to lock/hang during the build of the logical unit test.  Same results after iPhone SDK 3.1 came out.  I couldn&#8217;t find anything online either except a few people experiencing the same issue.  In the system console (not Xcode console) I was seeing:</p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">9/18/09 8:35:29 PM<span style="white-space: pre;"> </span>Xcode[669]<span style="white-space: pre;"> </span>-[XCBuildLogCommandInvocationSection setTestsPassedString:]: unrecognized selector sent to instance 0x2009b7620</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">9/18/09 8:35:29 PM<span style="white-space: pre;"> </span>Xcode[669]<span style="white-space: pre;"> </span>-runOperationInBackground raised an exception: -[XCBuildLogCommandInvocationSection setTestsPassedString:]: unrecognized selector sent to instance 0x2009b7620</div>
<p>Xcode[669]<span style="white-space: pre;"> </span>-[XCBuildLogCommandInvocationSection setTestsPassedString:]: unrecognized selector sent to instance 0x2009b7620</p>
<p>Xcode[669]<span style="white-space: pre;"> </span>-runOperationInBackground raised an exception: -[XCBuildLogCommandInvocationSection setTestsPassedString:]: unrecognized selector sent to instance 0x2009b7620</p>
<p>Needless to say, I was losing my mind.  Finally, a user in the Apple Developer forums, &#8220;cde&#8221;, posted the following gem:</p>
<p><span style="font-family: 'Lucida Grande', Arial; line-height: 18px; color: #333333; font-size: 12px;"> </span></p>
<blockquote><p><span style="font-family: 'Lucida Grande', Arial; line-height: 18px; color: #333333; font-size: 12px;"></p>
<p style="outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 12px; font-family: 'Lucida Grande', Arial; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: transparent; min-height: 8pt; background-position: initial initial; padding: 0px; margin: 0px; border: 0px initial initial;">We have recently discovered the root cause of this problem.</p>
<p style="outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 12px; font-family: 'Lucida Grande', Arial; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: transparent; min-height: 8pt; height: 8pt; background-position: initial initial; padding: 0px; margin: 0px; border: 0px initial initial;">
<p style="outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 12px; font-family: 'Lucida Grande', Arial; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: transparent; min-height: 8pt; background-position: initial initial; padding: 0px; margin: 0px; border: 0px initial initial;">People who are affected can work around it by (I hope you&#8217;re ready for this)&#8230;</p>
<p style="outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 12px; font-family: 'Lucida Grande', Arial; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: transparent; min-height: 8pt; height: 8pt; background-position: initial initial; padding: 0px; margin: 0px; border: 0px initial initial;">
<p style="outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 12px; font-family: 'Lucida Grande', Arial; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: transparent; min-height: 8pt; background-position: initial initial; padding: 0px; margin: 0px; border: 0px initial initial;">&#8230;changing the Time Zone on your Build machine away from Central Daylight Time.  (In six weeks you can change it back, and people in Mountain Standard TIme will be affected.)</p>
<p style="outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 12px; font-family: 'Lucida Grande', Arial; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: transparent; min-height: 8pt; height: 8pt; background-position: initial initial; padding: 0px; margin: 0px; border: 0px initial initial;">
<p></span></p>
<p style="outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 12px; font-family: 'Lucida Grande', Arial; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: transparent; min-height: 8pt; background-position: initial initial; padding: 0px; margin: 0px; border: 0px initial initial;"><span style="line-height: 18px; color: #333333;">No, seriously.  Give it a try.</span></p>
<p style="outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 12px; font-family: 'Lucida Grande', Arial; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: transparent; min-height: 8pt; background-position: initial initial; padding: 0px; margin: 0px; border: 0px initial initial;">
<p style="outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 12px; font-family: 'Lucida Grande', Arial; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: transparent; min-height: 8pt; background-position: initial initial; padding: 0px; margin: 0px; border: 0px initial initial;">The problem is a single-character typo in a regular expression that parses the date stamp of the unit test. It causes it to miss the beginning of unit tests that are executed at -0500 or +0500 relative to GMT, so the end of those unit tests is unexpected, and it causes the build log parsing logic to initially hang and eventually crash.</p>
<p style="outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 12px; font-family: 'Lucida Grande', Arial; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: transparent; min-height: 8pt; height: 8pt; background-position: initial initial; padding: 0px; margin: 0px; border: 0px initial initial;">
<p style="outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 12px; font-family: 'Lucida Grande', Arial; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: transparent; min-height: 8pt; background-position: initial initial; padding: 0px; margin: 0px; border: 0px initial initial;">As has been said, &#8220;Then I decided to use regular expressions, and I had <em>two</em> problems&#8230;&#8221;</p>
</blockquote>
<p>So until it&#8217;s fixed, change your timezone to Pacific time.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.artin.org/geekblog/2009/09/xcode-snow-leopard-logical-unit-tests-hanging/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Xcode SCM &amp; build directory</title>
		<link>http://www.artin.org/geekblog/2009/08/xcode-scm-build-directory/</link>
		<comments>http://www.artin.org/geekblog/2009/08/xcode-scm-build-directory/#comments</comments>
		<pubDate>Mon, 03 Aug 2009 22:23:25 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[xcode]]></category>

		<guid isPermaLink="false">http://www.artin.org/geekblog/?p=43</guid>
		<description><![CDATA[Xcode has a build directory inside of your project, which you shouldn&#8217;t be including in your source code management repository.  Simply said, those files change so much and are &#8220;discardable&#8221;.  There is no way to easily exclude this directory from your repository.  The accepted way to fix this (after some digging) is to simply move [...]]]></description>
			<content:encoded><![CDATA[<p>Xcode has a build directory inside of your project, which you shouldn&#8217;t be including in your source code management repository.  Simply said, those files change so much and are &#8220;discardable&#8221;.  There is no way to easily exclude this directory from your repository.  The accepted way to fix this (after some digging) is to simply move the build directory for Xcode to a temporary folder.</p>
<p>To move the build directory, click on the Xcode menu in your menu bar, and click on Preferences.  Change the folder under &#8220;Building&#8221; to a temporary folder.  I created a tmp directory in my user folder.</p>
<p style="text-align: center;"><a href="http://www.artin.org/geekblog/wp-content/uploads/2009/08/Picture-1.png"><img class="size-medium wp-image-44 aligncenter" title="Xcode Preferences Build" src="http://www.artin.org/geekblog/wp-content/uploads/2009/08/Picture-1-300x286.png" alt="Xcode Preferences Build" width="300" height="286" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.artin.org/geekblog/2009/08/xcode-scm-build-directory/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

