Lion Oddities for Mac Software Developers

Mac OS X Lion nightmare

So Mac OS X 10.7 is finally out. This OS release can be quite trouble-making for those who distribute their software products through Mac App Store, which Apple, Inc. opened in January 6th.

Mac OS X Lion nightmare
Screenshot 1 – Source: MacHouse

If you develop Mac software products, you probably know that the primary location where your application is allowed to access and store files is Application Support. More specifically, the path is Users/User/Library/Application Support/(application name)/. As you see in Screenshot 1, however, you don’t find ‘Library’ inside the User folder. Under Mac OS X 10.7, this folder is hidden. So you have to reveal invisible files at first to access the Library folder. If you have done so, you may probably want to add it to the sidebar. (See Screenshot 2.) If you click on the favorite folder you’ve just added, whether invisible files have been revealed or not, you can have quick access to the Library folder.  

Mac OS X Lion nightmare
Screenshot 2 – Source: MacHouse

Mac OS X Lion nightmare
Screenshot 3 – Source: MacHouse

In order to upload an application to Apple’s iTunes Connect, you must first code-sign and then convert it into a package. Chances are that you have to go to Developer’s web site and create/download certificates. And you really want to avoid using Safari to access Developer Certificate Utility. If you use Safari, you can probably download one of the certificates by clicking on the Download button. (See Screenshot 3.) Now, try downloading another one with Safari. You may find out that Safari will divide this web page into table parts such that you can no longer click on any of the buttons. (See Screenshot 4.) Too bad… You must quit Safari if this oddity occurs. How inconvenient…

Mac OS X Lion nightmare
Screenshot 4 – Source: MacHouse

Mac OS X Lion nightmare
Screenshot 5 – Source: MacHouse

For many years, we’ve been accustomed to right-button-clicking (or control-clicking) and choosing Show Package Contents to open the application package. (See Screenshot 5.) So you know what will happen next, right? Under Snow Leopard and other previous OS versions, Finder will open a new folder window to reveal the Contents folder. Under Lion, Finder will not open a new folder window. Rather, it will show Contents under the same folder. (See Screenshot 6.) If you need to add files before you make an application package, this change can be a bit tedious for you.

Mac OS X Lion nightmare
Screenshot 6 – Source: MacHouse

Mac OS X Lion nightmare
Screenshot 7 – Source: MacHouse

In order to upload application packages, you need Application Loader. The latest version of Xcode is 4.1 and includes Application Loader 1.5. So just launch Application Loader and select a package to upload to iTunes Connect, right? Well, if you use Application Loader 1.5, you may encounter the following error message.

The application is invalid. The executable (application name) is missing a required architecture. At least, one of the following architecture(s) must be present: i386, x86_64. (See Screenshot 7.)

You won’t get this message because you have a PPC binary. You used to be able to use Application Loader 1.4 to upload software packages to iTunes Connect before Apple released OS X Lion. Now, you can’t. Indeed, you will see a different error message if you use Application Loader 1.4 to upload packages to iTunes Connect under Snow Leopard. So what now? Bring Application Loader 1.5 to a computer running Snow Leopard? Nope. After wasting several hours of my valuable time, I’ve finally figured out a workaround. Use Application Loader 1.4 under Lion to upload software packages to iTunes Connect.

You must use Xcode 4.1 to install productbuild (CLT) on a computer running OS X Lion. But don’t use Application Loader 1.5 that comes with Xcode 4.1? Instead, use Application Loader 1.4 that comes with Xcode 3.2.5? That is quite odd, isn’t it?

Leave a Reply

Your email address will not be published. Required fields are marked *

Notify me of followup comments via e-mail. You can also subscribe without commenting.