<?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 Official Joroto Blog &#187; xcode</title>
	<atom:link href="http://www.joroto.com/blog/tag/xcode/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.joroto.com/blog</link>
	<description>From the people at Joroto, Inc.</description>
	<lastBuildDate>Thu, 20 Oct 2011 21:10:33 +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>How to find your resources and how to generally find the directory layout</title>
		<link>http://www.joroto.com/blog/2011/08/14/how-to-find-your-resources-and-how-to-generally-find-the-directory-layout/</link>
		<comments>http://www.joroto.com/blog/2011/08/14/how-to-find-your-resources-and-how-to-generally-find-the-directory-layout/#comments</comments>
		<pubDate>Mon, 15 Aug 2011 03:24:41 +0000</pubDate>
		<dc:creator>Tom CTO</dc:creator>
				<category><![CDATA[iPod and Apple Platform]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[bundle]]></category>
		<category><![CDATA[compile]]></category>
		<category><![CDATA[compiled]]></category>
		<category><![CDATA[compiling]]></category>
		<category><![CDATA[directory]]></category>
		<category><![CDATA[file]]></category>
		<category><![CDATA[ios]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[iPlatform]]></category>
		<category><![CDATA[ipod]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[resource]]></category>
		<category><![CDATA[SDK]]></category>
		<category><![CDATA[xcode]]></category>

		<guid isPermaLink="false">http://www.joroto.com/blog/?p=612</guid>
		<description><![CDATA[To find the main download directory for when you are receiving files, put this snippet of code in a test project or your main project at the point of opening: NSArray *pathsForDownloadedFiles = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *pathMain = [pathsForDownloadedFiles &#8230; <a href="http://www.joroto.com/blog/2011/08/14/how-to-find-your-resources-and-how-to-generally-find-the-directory-layout/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>To find the main download directory for when you are receiving files, put this snippet of code in a test project or your main project at the point of opening:</p>
<pre> NSArray *pathsForDownloadedFiles = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
 NSString *pathMain = [pathsForDownloadedFiles objectAtIndex:0];
 NSLog(@"main download directory is [%s]", [pathMain UTF8String]);</pre>
<p>The first line lets you allow Apple to put the application download directory anywhere it likes. It will also be able to change it at will, without breaking your program.<br />
The second line means that there is only one directory you need to access and its the first one. Remember in C arrays are zero based which means the first element of the array is at index number zero not at index number one.<br />
NSLog will let you run the app in the simulator OR on your device and send logging information back to the debug console in XCode. Nice and integrated.</p>
<p>An alternative method:</p>
<pre> NSString *mainPath = [self getDataPath];</pre>
<p>Uhhhhh yeah a bit shorter. Its not deprecated from what I see so one can use this method also.</p>
<p>Finally lets see where our resource is. Again, if you use this method, then XCode will be able to re-layout the resource directory structure anyway it wants without breaking your program. You KNOW they&#8217;re going to do this someday and they won&#8217;t tell you until its been done. So lets Program Defensively. Just like you drive defensively.<br />
To find a specific resource that was compiled into your application:</p>
<pre> NSString *resourcePath = [[NSBundle mainBundle] pathForResource:@"mission1" ofType:@"jmf"];
 NSLog(@"Path for mission file is [%s]", [resourcePath UTF8String]);</pre>
<p>The AT (@) sign is the NSString constructor without declaring an NSString. In case you&#8217;re wondering.</p>
<p>Good Luck and God&#8217;s Speed to ya mates.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.joroto.com%2Fblog%2F2011%2F08%2F14%2Fhow-to-find-your-resources-and-how-to-generally-find-the-directory-layout%2F&amp;title=How%20to%20find%20your%20resources%20and%20how%20to%20generally%20find%20the%20directory%20layout" id="wpa2a_2"><img src="http://www.joroto.com/blog/wp-content/plugins/add-to-any/share_save_256_24.png" width="256" height="24" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.joroto.com/blog/2011/08/14/how-to-find-your-resources-and-how-to-generally-find-the-directory-layout/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gruber is not completely correct about Apple&#8217;s policy change</title>
		<link>http://www.joroto.com/blog/2010/04/11/gruber-is-not-completely-correct-about-apples-policy-change/</link>
		<comments>http://www.joroto.com/blog/2010/04/11/gruber-is-not-completely-correct-about-apples-policy-change/#comments</comments>
		<pubDate>Sun, 11 Apr 2010 18:19:44 +0000</pubDate>
		<dc:creator>Tom CTO</dc:creator>
				<category><![CDATA[iPod and Apple Platform]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[cross platform]]></category>
		<category><![CDATA[IDE]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[iPlatform]]></category>
		<category><![CDATA[ipod]]></category>
		<category><![CDATA[SDK 4.0]]></category>
		<category><![CDATA[steve jobs]]></category>
		<category><![CDATA[xcode]]></category>

		<guid isPermaLink="false">http://www.joroto.com/blog/?p=433</guid>
		<description><![CDATA[This post was sent to me about Gruber&#8217;s analysis of the new Apple policy (3.3.1) that stated that developers were not allowed to use third party development tools that could target multiple mobile phone platforms. We were looking into these &#8230; <a href="http://www.joroto.com/blog/2010/04/11/gruber-is-not-completely-correct-about-apples-policy-change/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.businessinsider.com/henry-blodget-steve-jobs-weighs-in-on-adobe-flash-furor-and-tells-you-to-read-john-grubers-post-about-it-2010-4">This post</a> was sent to me about <a href="http://daringfireball.net/2010/04/why_apple_changed_section_331">Gruber&#8217;s analysis</a> of the new Apple policy (3.3.1) that stated that developers were not allowed to use third party development tools that could target multiple mobile phone platforms. We were looking into these currently and I have to say I&#8217;m quite miffed.</p>
<p>Concerning Gruber, though, he had stated that for iPhone developers there will be &#8220;No change. If you’re a developer and you’ve been following Apple’s  advice, you will never even notice this rule.&#8221; This is quite myopic to me. This can only apply for indie developers who are supporting themselves or there might be a couple of developers who are just targeting one platform. As far as an evil mean greedy company goes, we try to develop one app that can run on as many platforms as possible. This allows us to spread the risk across platforms and hopefully to recoup the development costs and *ghast* make a profit.</p>
<p>This issue is emotional out there in the developer world. I wanted to see what Steve Jobs would say and possibly write him myself. Well, he has chimed in (above first link) and said that its because these intermediary IDEs that generate code for a target platform produce mediocre code/apps. It just might be me, but XCode (THE IDE that Apple tells us we must use to develop with) does this too. You may target the SDK version that you need to target. So XCode falls into 3.3.1 and should not be used either. So really, we should ALL be coding with a simple text editor. Steve, is Notepad++ ALLOWED????? It would be an intermediate program between me and the OS, I really don&#8217;t want to think you still aren&#8217;t the god of the platform.</p>
<p>Btw, I like Steve. He&#8217;s amazing and has completely created, due to his force of presence, a MACHINE that is reshaping the consumer electronics world. He has entered the cell phone market at the smirk of Microsoft. And he has won. He contracted with AT&amp;T for a piece of the pie where no one else was able to. And he won. He faced off with the record labels for $1. And he won. Yes he has slid back a bit, but one must admit he was the single force that blew the doors WIDE OPEN for MP3 song downloads on the Internet. He has done the same for the book market. However, I don&#8217;t think Amazon was that bad with their ebooks. He was not even NEAR first with a portable MP3 player, yet he blew the doors off the market.</p>
<p>Therefore, I am not a Steve basher, nor am I an Apple fanboy. I am, and Joroto are consumer advocates. This 3.3.1 policy is not good for consumers. Steve, doesn&#8217;t want crap-apps in his store. He already had them there and has been culling the herd for the last several months. He doesn&#8217;t want a crap-app in the store, then so-be-it, he needs to train his people to dump the crap-apps. However, this is bad for the consumer, in a way, because it limits choice, which is why Steve is a lightning rod for bashing. Steve, if this post actually makes it to your eyes, contact us (Joroto), and we&#8217;ll help you establish a policy that balances the needs of developers, the iPlatform/Apple, and consumers. There is PEACE to be made here, and we can help.</p>
<p>You need to drop this last policy change for the code generators. Its bad mojo for the iPlatform. It actually makes me, of all people, not want to develop for the iPlatform anymore. What I may establish is that the iPlatform will be done last because all other platforms can use an IDE, then we have to reprogram some of the code in order to make it work on the iPlatform.</p>
<p>Steve, you&#8217;ve lost sight of something here.</p>
<p>Update 3:30p</p>
<p>Here is a <a href="http://rss.slashdot.org/%7Er/Slashdot/slashdot/%7E3/of5mu2HQO5M/Steve-Jobs-Weighs-In-On-iPhone-Programming-Language-Mandate">link from SlashDot</a> on this issue. It explains that Steve has said &#8220;intermediate layers between the platform and the developer ultimately  produces sub-standard apps and hinders the progress of the platform&#8221;. I believe in context he&#8217;s talking about Flash. Following the Slashdot link is the <a href="http://www.taoeffect.com/blog/2010/04/steve-jobs-response-on-section-3-3-1/">Tao Effect Post</a>. It seems like &#8220;most&#8221; developers agree that an extra layer on the iPlatform would be too much processing for those CPUs and &#8220;mostly&#8221; do not begrudge that decision. However, for most of these cross-platform IDEs that also target the iPlatform, they produce native code. In the case of the iPlatform, the one I was looking at produced native Objective C++ that gets compiled under XCode. So there is NO RATIONAL REASON why Steve needs to implement this policy, other than &#8220;because he can&#8221;. If a developer has a complicated project that some component or feature of the iPlatform will perform, but other platforms don&#8217;t, then one must make a decision as to how essential that feature it is. If it is essential, then it gets programmed in, and the other platforms will either: 1) No have that feature (common), or 2) the developer will need to code that feature into that other platform.</p>
<p>Again, I don&#8217;t fully understand this decision to implement this policy.</p>
<p>Update 4/13/10 9:05p</p>
<p>Simon over at Bloggasm emailed in a link to <a href="http://www.bloggasm.com">his blog</a> discussing <a href="http://bloggasm.com/why-adobe-and-apple-are-bypassing-traditional-media-outlets-to-wage-war-in-the-blogosphere">why this war is being waged in the blogs</a> instead of the retro mainstream way. Simon&#8217;s correct, the mainstream umm authors are not techs and do not understand anything about tech. So they quote &#8220;the famous guy&#8221; and offer up a cheap &#8220;how benevolent&#8221; the famous guy is. blah blah. Right now Apple is the elephant in the china shop and I feel like one of the cheaper ceramic teacups. Go pay Simon a visit and email him your thoughts.</p>
<p>Update 4/17/10 8:50p</p>
<p><a href="http://stevecheney.posterous.com/the-genius-in-apples-vertical-platform">This guy</a> doesn&#8217;t get it either. He&#8217;s drinking the Kool-aid (no I don&#8217;t own Kool-aid stock but A LOT of Apple fanboys MUST). He said &#8220;But in order for  these speed improvements to be realized, apps would need to be written  in objective C—which is exactly what Apple is now telling developers to  do.&#8221; Umm &#8216;scuse me for saying this but RTFM. Mr. Steven &#8220;The genius&#8221; Jobs has stated that IF you use a code generator that outputs Native Objective-C code and then one uses XCode to compile it into the native app, then YOU SUCK! One is in VIOLATION of the development agreement. Please RTFM or go back to reporting on main-stream news that has only &#8220;some&#8221; surface tension. These issues run deep because, as developers, we are constantly trying to become LAZY. Programmers are the laziest people on the planet. We try to be the most efficient with our time so we can get back to playing Bioshock, or the upcoming Starcraft II games. We don&#8217;t have any life beyond Programming and Games. The main-stream press needs to play in another sandbox, you don&#8217;t even begin to understand tek.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.joroto.com%2Fblog%2F2010%2F04%2F11%2Fgruber-is-not-completely-correct-about-apples-policy-change%2F&amp;title=Gruber%20is%20not%20completely%20correct%20about%20Apple%26%238217%3Bs%20policy%20change" id="wpa2a_4"><img src="http://www.joroto.com/blog/wp-content/plugins/add-to-any/share_save_256_24.png" width="256" height="24" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.joroto.com/blog/2010/04/11/gruber-is-not-completely-correct-about-apples-policy-change/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Create an iPhone app splash screen</title>
		<link>http://www.joroto.com/blog/2009/07/10/splash-screen-over-easy/</link>
		<comments>http://www.joroto.com/blog/2009/07/10/splash-screen-over-easy/#comments</comments>
		<pubDate>Sat, 11 Jul 2009 02:53:15 +0000</pubDate>
		<dc:creator>Tom CTO</dc:creator>
				<category><![CDATA[iPod and Apple Platform]]></category>
		<category><![CDATA[default.png]]></category>
		<category><![CDATA[graphic]]></category>
		<category><![CDATA[ipod]]></category>
		<category><![CDATA[splash]]></category>
		<category><![CDATA[splash screen]]></category>
		<category><![CDATA[xcode]]></category>

		<guid isPermaLink="false">http://www.joroto.com/blog/?p=112</guid>
		<description><![CDATA[1-Create a .png file with Adobe Fireworks, Adobe Photoshop, Gimp, or any of the graphic programs out there. 2-Name it Default.png. 3-Add it to the Resources tab of your Xcode project. This will add this splash screen automatically to your &#8230; <a href="http://www.joroto.com/blog/2009/07/10/splash-screen-over-easy/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>1-Create a .png file with Adobe Fireworks, Adobe Photoshop, Gimp, or any of the graphic programs out there.</p>
<p>2-Name it Default.png.</p>
<p>3-Add it to the Resources tab of your Xcode project. </p>
<p>This will add this splash screen automatically to your program when it runs, and will place this graphic on the screen as your app loads into memory and runs.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.joroto.com%2Fblog%2F2009%2F07%2F10%2Fsplash-screen-over-easy%2F&amp;title=Create%20an%20iPhone%20app%20splash%20screen" id="wpa2a_6"><img src="http://www.joroto.com/blog/wp-content/plugins/add-to-any/share_save_256_24.png" width="256" height="24" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.joroto.com/blog/2009/07/10/splash-screen-over-easy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Replacing graphics files in XCode</title>
		<link>http://www.joroto.com/blog/2009/07/10/replacing-graphics-files-in-xcode/</link>
		<comments>http://www.joroto.com/blog/2009/07/10/replacing-graphics-files-in-xcode/#comments</comments>
		<pubDate>Sat, 11 Jul 2009 00:42:27 +0000</pubDate>
		<dc:creator>Tom CTO</dc:creator>
				<category><![CDATA[iPod and Apple Platform]]></category>
		<category><![CDATA[graphics]]></category>
		<category><![CDATA[replace graphics files xcode]]></category>
		<category><![CDATA[resources]]></category>
		<category><![CDATA[xcode]]></category>

		<guid isPermaLink="false">http://www.joroto.com/blog/2009/07/10/replacing-graphics-files-in-xcode/</guid>
		<description><![CDATA[I wanted to replace some graphics files under my resources in the Xcode environment. They are currently symlinks. I wanted them to be actual files in order to zip up and send to other developers. I thought an inexperienced user &#8230; <a href="http://www.joroto.com/blog/2009/07/10/replacing-graphics-files-in-xcode/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I wanted to replace some graphics files under my resources in the Xcode environment. They are currently symlinks. I wanted them to be actual files in order to zip up and send to other developers. I thought an inexperienced user may appreciate this content.</p>
<p>Select the graphics files with a click, and then scroll down and do a Shift Click (if the files are in a contiguous list). A click is a single tap on the touchpad. The alternate way is to hold down the command key and click once for each additional file. This creates a list of files that you&#8217;ll delete.<br />
Now do a two finger tap on the touchpad.<br />
Choose delete.<br />
Choose &#8220;Also move to trash&#8221;.<br />
Boom they&#8217;re gone.<br />
Now go to finder in your project directory. You&#8217;ll see the links are still there. So you need to &#8220;move them to trash&#8221; also. Its the same sequence as above.<br />
Go back to Xcode.<br />
Double finger tap the resources tab.<br />
Choose &#8220;Existing files&#8221;.<br />
At the top choose the project&#8217;s default directory. I choose the drop down control, select my directory where the original graphic is and then select my graphics.<br />
Now click &#8220;Add&#8221; or press .<br />
Make sure &#8220;Copy items into destination group&#8217;s folder (if needed)&#8221; is selected. I do this so I can zip up the entire development directory and have zero external references.<br />
That&#8217;s it. Just another tidbit to hopefully help you develop for the iPlatform.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.joroto.com%2Fblog%2F2009%2F07%2F10%2Freplacing-graphics-files-in-xcode%2F&amp;title=Replacing%20graphics%20files%20in%20XCode" id="wpa2a_8"><img src="http://www.joroto.com/blog/wp-content/plugins/add-to-any/share_save_256_24.png" width="256" height="24" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.joroto.com/blog/2009/07/10/replacing-graphics-files-in-xcode/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPod/iPhone &#8220;No provisioned device&#8221; error in XCode</title>
		<link>http://www.joroto.com/blog/2009/06/14/ipodiphone-no-provisioned-device-error-in-xcode/</link>
		<comments>http://www.joroto.com/blog/2009/06/14/ipodiphone-no-provisioned-device-error-in-xcode/#comments</comments>
		<pubDate>Sun, 14 Jun 2009 22:01:38 +0000</pubDate>
		<dc:creator>Tom CTO</dc:creator>
				<category><![CDATA[iPod and Apple Platform]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[ipod]]></category>
		<category><![CDATA[provisioning]]></category>
		<category><![CDATA[xcode]]></category>

		<guid isPermaLink="false">http://www.joroto.com/blog/?p=39</guid>
		<description><![CDATA[In the Organizer in XCode you notice that your iPlatform device (iPod/iPhone) is not recognized as a provisioned device. The little &#8220;light&#8221; is not green. However iTunes can sync with it and give it a great big kiss. Cause: I &#8230; <a href="http://www.joroto.com/blog/2009/06/14/ipodiphone-no-provisioned-device-error-in-xcode/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>In the Organizer in XCode you notice that your iPlatform device (iPod/iPhone) is not recognized as a provisioned device. The little &#8220;light&#8221; is not green. However iTunes can sync with it and give it a great big kiss.<br />
Cause: I believe this is due to the iPlatform device being plugged in when the computer goes to sleep.<br />
Solution:<br />
1) Unplug the iPlatform device from the USB.<br />
2) Hold down the top power off and the circle App Exit button at the same time, then release at the same time.<br />
3) A slide switch appears saying &#8220;Power off&#8221;. Do so. This is a hard power down of the device.<br />
4) Now you can just plug the device back into the USB cable. XCode will see it and use it now. This has happened many times to me and this is the exact solution to that.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.joroto.com%2Fblog%2F2009%2F06%2F14%2Fipodiphone-no-provisioned-device-error-in-xcode%2F&amp;title=iPod%2FiPhone%20%26%238220%3BNo%20provisioned%20device%26%238221%3B%20error%20in%20XCode" id="wpa2a_10"><img src="http://www.joroto.com/blog/wp-content/plugins/add-to-any/share_save_256_24.png" width="256" height="24" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.joroto.com/blog/2009/06/14/ipodiphone-no-provisioned-device-error-in-xcode/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

