navigate site menu

Start learning with our library of video tutorials taught by experts. Get started

Distributing Mac OS X Applications Through the App Store

Distributing Mac OS X Applications Through the App Store

with Bill Weinman

 


Distributing Mac OS X Applications Through the App Store shows app developers the ropes when it comes to packaging and submitting applications for sale and distribution through Apple's Mac App Store. The course covers the process from creating the icons and screenshots for the store listing, to creating and testing the installer, and finally, promoting an app. It also sheds light on the Apple submission process and offers tips for meeting the review guidelines and increasing the odds of acceptance. Exercise files accompany the course.
Topics include:
  • Understanding the human interface guidelines for OS X
  • Generating certificates
  • Signing your app and its installer
  • Setting up the Info.plist file
  • Creating and testing the installer
  • Registering an application in iTunes Connect
  • Checking the status of an application
  • Following the Apple marketing guidelines
  • Linking to the App Store

show more

author
Bill Weinman
subject
Developer, Desktop Apps
software
Mac OS X 10.6, Xcode
level
Intermediate
duration
1h 53m
released
Feb 04, 2011

Share this course

Ready to join? get started


Keep up with news, tips, and latest courses.

submit Course details submit clicked more info

Please wait...

Search the closed captioning text for this course by entering the keyword you’d like to search, or browse the closed captioning text by selecting the chapter name below and choosing the video title you’d like to review.



Introduction
Welcome
00:04Hi! I am Bill Weinman and I'd like to welcome you to Distributing Mac OS X
00:08Applications Through the App Store.
00:10In this course, I will show you how to prepare, submit, and distribute your Mac
00:14OS X App through the Mac App Store.
00:17I'll cover the various assets your app needs like icons and screenshots.
00:20I'll show you how to prepare your application bundle in your installer and how
00:25to submit your app to the store using Apple's iTunes Connect portal.
00:29Finally, I'll take you through Apple's marketing guidelines and show you some
00:32of the tools they provide to help you promote your app and your presence in the Mac App Store.
00:38By offering you access to a huge installed base of Mac OS X users, the Mac App
00:43Store represents a great new way to take your application to market.
00:47So let's get started Distributing Mac OS X Applications Through the App Store.
Collapse this transcript
Using the exercise files
00:00If you have access to the Exercise Files for this course, you may use them to
00:04follow along with me as I go through the tutorial.
00:07Feel free to put the exercise files on the Desktop as I have or to use them
00:11somewhere else if you prefer.
00:12Do keep this important point in mind though.
00:15You should not submit this demo app to the App Store.
00:19The application I created for the examples in this course is specifically
00:23designed to get rejected, should it be submitted to the App Store.
00:27Please do not use it.
00:28The Exercise Files are separated into four chapters and within those chapters,
00:32there is a number of different assets.
00:35Many of these folders contain an Xcode project, which is the demo app that I
00:39will be using for the exercises.
00:41When you use this demo app for the exercises, I suggest that you make a working copy.
00:46I am holding down the Option key as I drag this, and then just rename it to say
00:52something like working and then use the project within that working folder.
00:58If you don't have access to the Exercise Files, that's really okay.
01:02It's really better, if you use your own app and your own assets to follow along
01:05with the exercises in this course.
Collapse this transcript
Course overview
00:00So you have an amazing Mac application and you want to submit it to the App Store.
00:04This course is for you.
00:06The goal of this course is to show you how to submit an OS X app to the Mac App Store.
00:11This is a new process.
00:12The Mac App Store is a new version of the App Store and so while the process
00:18has some commonalities with the process for IOS, iPhone Apps, it's not exactly the same.
00:25So the first thing you'll need of course is you'll need a Mac application.
00:29In order to create the application, you'll need a modern Intel Mac.
00:32Current Mac development tools require an Intel Mac and the very latest version of
00:37Xcode requires the very latest version of Mac OS X, which will only run on an
00:42Intel Mac, so you really need a modern Intel Mac with the latest version of
00:47Mac OS X and the latest Xcode in order to create your application and to
00:52submit it to the Mac App Store.
00:55Your app must be a native Mac app and that is it must run on a Mac without a
01:00separate runtime environment.
01:01So that means Java apps, Python apps, Flash apps, things like this cannot be
01:06submitted to the Mac App Store. It must be a native app created with Xcode.
01:09Now for demonstration purposes, I provided a demo app in the Exercise Files for this course.
01:16It's probably best if you use your own app, even you're following along with the
01:20exercises in the course.
01:22I provided this app in case you need it just for your learning purposes.
01:25This app was designed to be the simplest possible app, just for
01:29demonstration purposes.
01:30So the app itself does nothing at all, and it has the word demo in its title,
01:34and either of those facts alone would get rejected summarily from the App Store.
01:39And that was part of the intention actually designing it this way, so when you
01:43get to the point where you ready to submit your app, you don't want to
01:46accidentally submit this one.
01:48You'll also need some graphical elements, icons, screenshots, things like that,
01:53so you'll either need the skills and the tools to make those elements or you'll
01:57need to have someone available to create them for you.
01:59We will cover those requirements in this course.
02:01We are also going to talk some about the review process.
02:05The review process for the App Store is one of the most controversial and
02:09misunderstood parts of this process.
02:12Whatever you think of it, you'll need to become familiar with it and you'll need
02:15to learn to abide by its rules. We'll cover this in some detail.
02:19We'll talk about the contents of the application bundle and you will see how
02:23that gets created and how you submit that to the store.
02:28And once you have all of those pieces assembled, you want to submit your app to
02:31the App Store and I'll show you how to do that and how to do it successfully.
02:36Finally, once your app is in the App Store you are going to want to promote it.
02:40I'll cover the rules for doing this and how you can use Apple's provided
02:44marketing elements to help get the word out about your amazing app.
02:48So the purpose of this course is to provide you with all the information and
02:52knowledge you need to make your app submissions go smoothly, so you can get your
02:56amazing apps out into the App Store quickly and easily.
Collapse this transcript
1. Meeting the Requirements
Meeting the review guidelines
00:00If you read the online blogs and magazine articles about the App Store
00:04review guidelines, you'll get the impression that they are arbitrary,
00:08oppressive, and otherwise evil.
00:11Those characterizations are fun to read but they're not going to help you
00:14get your app approved.
00:16Whatever else the App Store Guidelines are, they are necessary for you to
00:19understand and to comply with if you want to ensure a smooth approval
00:23process for your app.
00:25You can see the complete guidelines on Apple's Developer web site.
00:29You must login with your membership to see this document.
00:32And you can see it's a rather long document and it has a tremendous amount of
00:37stuff in it. It's mostly really just a list of do's and do nots.
00:42So, we are going to go through this in some detail right now.
00:46From Apple's perspective, the quality of the user experience is what separates
00:50them from their competition.
00:51This is why people buy Apple's products instead of shopping for the least expensive
00:55product in a category.
00:57So it's useful to look at these guidelines from this perspective.
01:01How does this particular guideline affect the user experience?
01:05This approach should help you to understand the guidelines and ultimately to
01:09have your app approved more easily.
01:11In essence, your app must do something useful.
01:15It must work well and be relatively free of bugs and crashes.
01:19It must meet Apple's Human Interface Guidelines and work as the user would
01:24expect an OS X App to work, and it must have no content that may be
01:29considered offensive.
01:31This is the gist of the document and if you get this, the details won't surprise you.
01:35The document has 22 sections but we can break it down into just a few.
01:41Your app must not crash. This is a basic requirement.
01:44Xcode has a number of tools to help with this.
01:47At a minimum, use the Build and Analyze function and the leaks instrument.
01:52Your app should be relatively bug -ree, so test it thoroughly.
01:56The more complex it is, the more things it does, the more options it has,
02:01the more time and resources you'll need to spend testing it.
02:05The App Store will summarily reject any app that uses any of the following
02:09words: beta, demo, trial or test.
02:12And note that the example application included with the Exercise Files in this
02:17course is named with the word Demo in it.
02:20This is to ensure that it cannot be submitted to the store.
02:24Your app must use the Xcode packaging system.
02:27It cannot use a third-party installer.
02:29It must be completely self- contained in its own bundle.
02:32It cannot install any other resources in location outside of its bundle.
02:37And your app must ask for user permission if it needs to auto launch or start up
02:41or to use location information or any other personal information.
02:46Your app cannot be just a mock-up or an advertisement.
02:49It cannot have hidden, undocumented, or otherwise surprising features.
02:54Now, you may use Easter eggs in your application. Easter eggs are fun and
02:59a lot of people like to put them in there.
03:00But you need to let the review board know about them, because if they stumble
03:04across them by accident and they didn't know about them beforehand, they are
03:07going to reject your app.
03:10Your app also cannot use undocumented features of the operating system or nonpublic APIs.
03:16If you think it's unfair that Apple can use OS calls in its apps that aren't
03:21available to the public,
03:22you're right. It's not fair.
03:23You will also get your app rejected, so just don't do it.
03:28Your app may not install any kernel extensions and may not keep anything running
03:32after the user exits the app.
03:35And your app cannot use any depreciated or optional technologies and of course
03:40Apple recently put Java in that category and this includes Rosetta, it includes
03:44Flash, and other things.
03:46In other words, it must be written in C++ or Objective-C and use Xcode as its
03:52development environment.
03:54Your app must comply with the Mac Human Interface Guidelines and we will go over
03:59that in some detail later on.
04:02Your app must not try to mimic the look of Apple's apps.
04:05In other words, a Finder-like interface is fine but if your user could easily
04:10confuse your app with the actual Finder, it will be rejected.
04:14And you should use the system-provided interface elements and don't change their behaviors.
04:20Apps that depict realistic violence or abuse will be rejected.
04:24Enemies in a game may not all be one race or ethnic group.
04:28Apps that are designed to disgust or upset users will be rejected.
04:32Pornographic apps will be rejected even if it's a user generated content.
04:36In other words something like Chatroulette would be rejected.
04:40Some of the financial guidelines imply in-app purchasing that doesn't yet exist
04:44in the Mac App Store.
04:45I expect this'll be one of the first features to be added with a future version.
04:50Your app cannot create a self-contained store for purchasing additional content.
04:55This is one of the things that might become possible with in-app purchasing.
04:59Rental content that expires after a given amount of time is not allowed and
05:03apps that enable features for a fee will be rejected.
05:08All apps must comply with all local laws and it's your responsibility to know
05:12what the local laws are for your locale.
05:15Your app cannot solicit or encourage illegal behavior.
05:19And gambling apps that use real money are not allowed.
05:23Understanding these guidelines is crucial for success in the Mac App Store.
05:27Yes, in some contexts, some of them may seem unfair but they create a common
05:32denominator that allows Apple to make your app available to a vast number of Mac
05:37owners with a few clicks of the mouse.
Collapse this transcript
Touring the Xcode 4 interface
00:00Soon after this course was recorded, Apple released Xcode 4 about six months
00:05before we expected them to.
00:08Xcode 4 has a completely redesigned user interface.
00:11So if you're using Xcode 4 with this course your screens will look significantly
00:15different than my screens do in the movies.
00:18Keep in mind that Xcode 4 does all the same things that Xcode 3 does.
00:22It just looks different and some of its components have been moved around.
00:26Until we get a chance to update the course we've added a couple of movies to
00:30help you find your way around the examples with Xcode 4.
00:34This movie is a tour of the new user interface in Xcode 4.
00:38Many things are moved around so you'll want to take some time to become familiar
00:42with the new interface.
00:44The most obvious difference between Xcode 4 and previous versions of Xcode is
00:48the new single window interface.
00:51So the first thing you'll want to know is, where did they put everything?
00:54So I've made a working copy of the Mac demo project from the exercise files.
01:00You can use any project that you have and frankly, I recommend that you use
01:03one of your projects.
01:05This course is not about the code.
01:06It's about the IDE and you want to get familiar with it with your own code.
01:11So if you don't have the exercise files don't worry about it and if you do have
01:15the exercise files and you've got some of your own code you could be using for
01:18this, do go ahead and use your own code instead.
01:22You'll also notice that I've set up the screen here with all of the various
01:25components of the screen showing.
01:27If your screen looks a little bit different don't worry about that.
01:31By the time we get to each element of the screen you'll know how to open that up
01:35and how to turn that on.
01:37So first I want to direct your attention to the toolbar.
01:41And you'll notice over the left there's a Run button, and there's a Stop button
01:45and then there's the Scheme menu.
01:48The Scheme menu is analogous to the Active Configuration menu for Xcode 3 and
01:54you'll notice when I pull this down, it's got some different schemes available
01:57and you can edit schemes and create new schemes and manage your schemes.
02:01This is really a whole lot more powerful than what we had in Xcode 3 and we will
02:04go into details on this in another movie.
02:07Then there is a Breakpoints button for turning on or off breakpoints.
02:11And that's followed by the Activity Viewer and you'll notice that it just says
02:15succeeded, no issues.
02:17All kinds of messages can come up there and it'll show you a progress bar when
02:21things are going on and if there's more than one thing going on there will be a
02:24little number and you can click on that number and you can see the progress of
02:28the various things that are happening.
02:30Then there's the Editor Selector and this selects the different editors in the Editor area.
02:36And so you'll notice if I click on this Assistant Editor, it brings up an
02:40Assistant Editor with the corresponding .h files.
02:43So you have the .m file on the left and the .h file on the right.
02:47This can be very convenient, especially if you have enough screen real estate for it.
02:51Here in this little movie format we don't have a lot of screen real estate.
02:56And then there's also the Version Editor and that allows you to navigate
03:01different versions, if you're using source code management, different
03:04versions of the same file.
03:06So we will just leave this over here on the main Editor Viewer.
03:10Then you'll see the View Selector and this allows you to turn on or off the
03:14different regions of the screen.
03:19And an Organizer button, which brings up the Organizer window and you notice
03:23that the documentation is now in the Organizer window and there's a toolbar up
03:28here with a lot of different possibilities for what shows up in the Organizer.
03:34Now let's take a look at the Editor area.
03:37You'll notice up at the top of the Editor area, there are jump bars for the editors.
03:43This one here is very familiar.
03:44You will recognize this from Xcode 3.
03:46This is how you can navigate to different parts of the file that you're editing.
03:51There's also the breakpoint gutter.
03:53And this is the area where your breakpoints will show up.
03:56And there's the focus selection area where if I hover my cursor over this you'll
04:01see that it will highlight particular blocks of my code and that can be
04:06convenient at times as well.
04:08Over on the left is the Navigator area.
04:11There is an Navigator Selector bar, which we can use for selecting different
04:16navigators in the Navigator area.
04:19And there's a filter bar down at the bottom where I can type in something
04:23like .m and it'll show me all of my .m files or .sib and it'll show me all my NIB files.
04:31And I can click on this little X, this little clear button, and it will clear this out.
04:37Down here at the bottom we have the Debugger area.
04:40And if that's not showing, you can select it with the View Selector up at the top.
04:45The Debugger area has a debugger bar, where you can perform various operations
04:49on the Debugger area.
04:50And it also has a selector or you can select either just the debugger output or
04:57just the log output or both.
05:00And on the right, there's a Utility area with an Inspector pane and a Library pane.
05:08And the Inspector pane is where you'll see the various inspectors.
05:11If I bring up this NIB file this'll be familiar from the old Interface Builder
05:16and you'll notice that there is a number of different inspectors available for
05:21the different things in the Interface Builder and of course the Inspector area
05:25is also used for our code files and here we can get documentation or just
05:32information about the file.
05:34And the Library pane has a Library Selector bar for different kinds of things we
05:38can grab from the library.
05:41And then there's the objects themselves, which can be dragged from the
05:44library into the code.
05:46For example from the Code Snippet Library we could grab a little do-while
05:50statement and drop it here into the code.
05:53And that'll insert that do-while into the code.
05:57And I'll just press Command+ Z here to undo that change.
06:01So the new layout in Xcode 4 is a significant change from previous versions.
06:06There are real advantages to this more integrated approach, but it may take a
06:10little getting used to.
06:11So I strongly suggest taking some time to get to know this new integrated layout.
06:17For a more complete discussion of the differences between the Xcode 3 and Xcode
06:214, please see the Xcode 4 New Features title on lynda.com.
Collapse this transcript
Understanding the human interface guidelines
00:00Apple's Human Interface Guidelines are incorporated into the review guidelines
00:05so they're not optional.
00:06You must follow these guidelines in order to have your app approved.
00:09The good news is that for the most part following these guidelines will make
00:14your app more polished, easy to use, and provide a better user experience and
00:18generally work better than if you were to provide a custom user interface.
00:24So, this is the Apple Human Interface Guidelines and you'll notice this is just
00:28the title page and even that's pretty long and then you have all of these
00:33sections here, a lot of these, they open up into many other things and so you
00:39can see that this is actually a very large document.
00:43You can download the PDF by clicking on this PDF link here and I suggest that
00:49you download the PDF.
00:50This is-- like I said, it's a relatively large document and you are going to
00:55want to take some time to study it.
00:59The purpose of the Human Interface Guidelines is to provide a consistent and
01:03predictable experience for the user.
01:05It's not so much a matter of best practices, as it is about consistency.
01:11While there certainly are those who would say that Apple's interface is better
01:15than that of other platforms,
01:16the truth is that it just seems that way.
01:19One major reason for this is the Human Interface Guidelines. Because Apple
01:23provides strong encouragement to use consistent interface from application to application,
01:29your application appears easier to use because familiarity is always easier.
01:35Also because the user-interface is so rich and its application programming
01:40interface is consistent, it's much easier to program to the Human Interface
01:45Guidelines than it would be not to.
01:47This provides an added bonus in the form of stability because these
01:52user-interface elements are based on well tested and mature code.
01:57The Human Interface Guidelines is a living document.
02:00It gets updated with every release of the operating system and sometimes in between.
02:06It's a relatively large document so I recommend that you spend some time
02:09familiarizing yourself with it.
02:11If you're really committed to creating great apps for the Mac, I strongly
02:15suggest that you set aside a day or two or even longer, just to study and
02:19experiment with the Human Interface Guidelines.
02:22Once you're familiar with it, it becomes easy to keep up.
02:26Apple publishes change logs with each update, so you can just read the
02:29parts that have changed.
02:31The primary principle to keep in mind while considering these guidelines is that
02:35your app should be easy for the user to use.
02:38The user should be able to focus on the task at hand rather than worrying about
02:43how the application works.
02:45The user should be familiar with the controls and they should operate as would
02:50be expected by someone accustomed to using a Mac.
02:53You will want to use familiar technology instead of using technical jargon.
02:57For example instead of saying "Select this button to submit," you say something
03:03like "Press the button."
03:05And if you have animations as part of your interface, you want to use them subtly.
03:09Use them to enhance the task at hand but not to distract.
03:13When reporting on errors, you want to make your error messages clear and
03:17friendly. Instead of something like "Error 42 bad input" you might want to say
03:21something like "I didn't understand that date."
03:24Likewise, you want to make it easy to recover from errors.
03:28So instead of making them click a bunch of buttons and go all the way back and
03:31re-input a whole bunch of data, you want to make it so that they know what is
03:34that went wrong and they can just get on with the task at hand, which is why
03:38they're using your application.
03:39And as much as possible, you want to accept multiple forms of input.
03:44In other words to support various date formats, allow users to push buttons in any order.
03:51And the whole idea here is for the application to be as forgiving as possible
03:55of different ways that a person might use the application or mistakes that they might make.
04:00Apple provides a rich library of standard widgets, controls, icons, and
04:05other interface elements.
04:07Using these standard resources will make your interface seem familiar.
04:11It's like when you are listening to the radio and somebody calls in to request a song.
04:15You might hear several people over the course of the afternoon, calling
04:19and request that same song. You might hear that same song many times.
04:22The reason for this is that people gravitate towards things that seem familiar.
04:27People like the same song because it's familiar to them and makes them feel comfortable.
04:32Likewise, using the standard interface elements that Apple provides will make
04:37your application seem familiar. Users will gravitate towards it and they'll use it more often.
04:42You want to be really careful about using modal designs.
04:46A model design is something that requires somebody to complete an entire piece
04:51of something before they can go onto another piece.
04:54It might be like a modal dialog box that pops up in the middle of the screen
04:58and that they have to do something with that before they can get back to what
05:01they were doing before.
05:03You want to allow your user to use any part of your application at any time.
05:08You don't want to require them to switch modes unless it's really necessary.
05:13If you absolutely need a piece of information before continuing with the task,
05:17then of course you are going to want use a modal dialog box.
05:20But keep in mind that modal design is for the convenience of the programmer.
05:26It's not convenient for the user.
05:28You want your application as much as possible to be to the convenience of the user,
05:32rather than the convenience of the programmer.
05:35You want to keep in mind that Macs come in all shapes and sizes.
05:39There are Macs that are 3x4 or 4x5, 16x9, 16x10.
05:44You never want to tie your application to a particular display size or aspect ratio.
05:51If you're developing a game, you may want to create your own scroll bars that fit
05:55how the game looks and feels.
05:56But for the most part, for most Mac applications, you don't want to go around
06:00the operating system.
06:02You want to stick with the standard OS X technologies.
06:06Keep in mind that the more your app looks and feels like the rest of the Mac
06:10experience, the more familiar it will be and more people will want to use it.
06:15Apple's Human Interface Guidelines are really for the user.
06:19There's a lot there to make your job easier but mostly it's there to protect the
06:23user experience, which ultimately serves Apple's mission of making their
06:27products persistently desirable in the market and this is key to Apple's
06:32success and by extension it's key to the success of your app.
Collapse this transcript
Creating the icons
00:00Creating icons for Mac apps is a bit different from the process of creating
00:04icons for other environments.
00:06Icons for the Mac scale continuously.
00:09Take a look at your dock and we'll go ahead and turn Magnification on, and
00:15you'll notice that the icons, they get very large as you pass your mouse over
00:20them and then they get smaller again.
00:23You can actually adjust this and make it very extreme or less extreme.
00:28It's really very flexible and it gives you an idea of what people expect
00:34from icons on the Mac.
00:35I am going to go ahead and turn Magnification off again here.
00:39So Apple provides a tool for making the icons.
00:42It's called Icon Composer and you can find that in the root directory under
00:47Developer and Applications and Utilities and under here Icon Composer.
00:55So this is part of Xcode and it comes with Xcode when you install Xcode on your machine.
01:01So if I'll open this up and you'll see that there is a place here for 512 pixels square,
01:06256, 128, 32 and 16 pixel square images, and you basically copy and
01:15paste those in and save it and it creates this composite icon file that has all
01:19of this information in it, and that allows the operating system to use the icon
01:25in so many different ways.
01:27So let's go ahead and create an icon for our app.
01:30I'll come over here to the Exercise Files under Chapter 1 and icons-start.
01:36Now this is the Exercise Files off the desktop.
01:38I have just stuck it in my places over here in Finder, and you will see this
01:42file BWDemoIcon.psd. That's a Photoshop file.
01:46I am using Photoshop. You can use any image editor.
01:50Photoshop is very popular and common, and so I am using it here for
01:53demonstration purposes.
01:55Now icons are very big deal on the Mac.
01:57People expect a lot of their icons.
02:00They expect them to look great.
02:01they expect them to work well.
02:03So I am going to give you some examples of some of the challenges you are going
02:06to find in creating icons.
02:08I have created this icon specifically to have some challenges that we can look at,
02:12so you can get an idea of the kinds of things that you're going to run into.
02:16Apple actually recommends right there in their Human Interface Guidelines that
02:20you hire a designer to design your icon, and the reason for that is that people
02:25expect a lot of their icons on a Mac.
02:28So you want your icon to compete well in the icon marketplace.
02:32They suggest that you start on paper , that you draw it first on paper and use a
02:36bunch of ideas until you find the design that you want and then go to your image
02:40editing program and create an icon.
02:43They recommend that you use transparency.
02:45You can see that this icon here uses transparency well.
02:48That you use shadows and you see we have some shadows down here.
02:51If I turn on my white background, you can see the shadows.
02:54And inner glow on black areas. You'll notice that this area here is black and if
03:01we use a black background, it does not disappear, because it has this inner
03:05shadow, against a white background you hardly even notice that inner shadow, but
03:09against a black background, it really helps the icon itself to stand out.
03:15So that it still shows up against that black background.
03:18If I turn off that Inner Glow there you'll see that the black just
03:21completely disappears into the background there. And you want to compose for
03:25all of your different sizes.
03:26So we are going to do that right now.
03:27This is 512x512 and if I go ahead and under the File menu here, I use the
03:34keyboard shortcut, which is Command+Option +Shift+S. So this is the Save for Web &
03:40Devices, and you will notice our image size here is 512x512.
03:43So we are going to go ahead and start by saving that and we are saving it as a
03:49PNG-24 with Transparency, and I am going to save that and I am going to put it
03:55in my Exercise Files Chapter 1 and I am going to go ahead and create a folder
03:59here called Icons and I am going to save it as BWDemoIcon-512.png.
04:11So now I have a 512 pixel version.
04:16I'll open that up in Preview, there it is, and against the gray background there
04:21you can still see the shadows and all of that.
04:24I am going to go ahead and save this in some other sizes.
04:29Back to my Save for Web & Devices and I am going to come in here. I am going
04:33to say 256 and you will notice because I have the little lock there, it keeps the aspect ratio.
04:39I'll just press the Tab key and it goes ahead and it shows it to me in that size
04:43and I say okay, that's okay, that looks good.
04:46I am going to go ahead and save that.
04:48I don't have to do anything to that to make that work, and I'll save that as the
04:51256 pixel version. And we'll do exactly the same thing.
04:55And you will notice that we still need a 128 and a 32 and a 16 and so we'll
05:01just go ahead and do those.
05:02This is 128 and there it is in 128.
05:08It's still pretty good.
05:10If you have a lot of detail, you might want to use some layers that might have
05:14some detail or something like that, but that's still looking pretty good.
05:17We are going to make some adjustments at the next size though.
05:20So this is the 128 version.
05:23I'll save that and now we are going to go to the 32 pixel version.
05:26Now you'll notice that if I do this and if I scale this down to 32 pixels,
05:33the word DEMO becomes completely illegible.
05:36There's no way that I can even read that.
05:38So I am not going to save that. Instead I am going to turn off my Demo layer
05:41here and I am going to go ahead and save it like this.
05:45And I am going to say that's 32 pixels.
05:49So that's actually very legible there. And that 32.
05:55Obviously, there's a lot more than you can do to make it work in these different
06:00sizes if you want to, and I strongly recommend that you do.
06:03You really want it to-- but Bicubic isn't working too good. I am going to say
06:07Bicubic Sharper. That's a little bit better and we will save that as -16 and
06:14there we have our icons now.
06:17So here is all of our icons in this folder and all I have to do at this point
06:21is just drag them in and there is the 512 pixel version.
06:26There is the 256 pixel version and I am just going to fill this all in right here.
06:30And watch what we can do now.
06:33So now we're in the Icon Composer and if we want to, we can look at it with a
06:40number of different backgrounds.
06:41Here's a light gray background.
06:44Here's the Grass Blades background.
06:45So you can see what your icon looks like against these different backgrounds,
06:49because it's going to show up in your users using of the icon.
06:55You can even specify another image if you wanted to.
06:59And here's a white background.
07:01There is a black background.
07:03You can see our inner glow, that's working pretty well.
07:05You can pick a custom color if you want to, which is gray.
07:14The other thing that you can do.
07:15Let me bring it up against the Grass Blades.
07:17You can actually scale it down continuously and you can watch when it gets
07:22down to the different levels and you'll see the word Demo disappear, and now you just got that.
07:28Let's see.
07:32So you can really do a lot in your Icon Composer to test your icon and make sure
07:37that it's working the way that you expect it to work.
07:40So we are going to say that this is okay and we are going to go ahead and save it now,
07:46and we are going to Save As and you will notice that it brings up the
07:52ICNS file extension, because that's what we want for Macintosh icon file.
07:59Now we are going to go into our Exercise Files folder and the icons that we just
08:04made and we are going to name it BWDemo.icns.
08:10You wanted to have exactly the same name to the left of the dot
08:14as your application, and that's important for when we start putting the bundle together.
08:18So I am going to go ahead and save that, and now we have an icon file here and
08:24you'll notice in the Finder that it's showing the 32 pixel version right there,
08:31and you'd see it doesn't have the demo on it.
08:33Now you'll also notice that if we go here into the cover flow view and we'll go
08:38ahead and select the icon file, that it's actually showing the larger version,
08:44and you'll notice some other stuff here about this.
08:48Notice that even though our file has all this space under the word Demo, that in
08:55the cover flow it's actually bringing it right up to the glass there, so that
08:59it can show that reflection.
09:02This is one of the little tricks that the operating system plays with these files.
09:05You want to make sure that your transparency mask is really coherent.
09:10Now we just have it automatically made by Photoshop.
09:13If you look here under Masks, you can see what the mask looks like.
09:16That's important because the operating system wants to know where are all these
09:19blank spaces around it.
09:21So that you can use it for things like that.
09:23So that actually looks really gorgeous there.
09:26And we can see that that icon is going to work great for us.
09:30So don't skimp on your icon.
09:32Remember the user experience is everything for a Mac App.
09:35Apple provides this excellent tool in Icon Composer for creating a composite
09:40icon file with all the different images in it.
Collapse this transcript
Creating screenshots
00:00One of the App Store submission requirements is at least one 1280 pixels by 800
00:06pixels screenshot of your application.
00:09This image is your customer's first impression so you want it be perfect.
00:13There are two distinct possibilities for a screenshot. If your app is a full
00:18screen app or if your app is not a full screen.
00:21Our app is not a full screen app so we are going to start with that.
00:25And then we will do a full screen version using Firefox, just to show you
00:29how that process works.
00:30Now, one thing you'll notice here is that I am using Photoshop to build the
00:35screenshot, but you can certainly use whatever graphics application you are
00:39comfortable with, whatever you have.
00:41I am using Photoshop because it's very popular and it's what I have here at
00:45the lynda.com studios.
00:47Now, our first step is to create a screenshot of the app itself.
00:51So, I am going to come up to here to our BWDemo application,. It's in this
00:55BWDemo-start folder inside Chapter 1 of our Exercise folder.
00:59I am just going to open Xcode using this Xcode project file here.
01:04I am just going to double-click on that and that will open up Xcode.
01:07And now I am going to build the app with Command+B, and again this is just
01:11a very simple application. It doesn't really do anything but it brings up this screen here.
01:15Press Command+R and you can see it.
01:17And that's the application there.
01:19It does nothing, it says nothing here, it says this page is blank, and
01:23that's all it does.
01:24But this is our application, and you'll notice that it's not a full screen app.
01:29It doesn't take up the entire screen.
01:30It just takes up this little space on the screen.
01:32You also notice that because it's an OS X App, it has this little shadow around it.
01:37That's just a normal part of the OS X environment so we want our
01:41screenshot to have that.
01:42But what's beautiful about Mac OS X is that when I take the screenshot of this
01:47application, you'll have that automatically.
01:50So in order to take the screenshot of a window that's not taking up the full screen,
01:54you want to press Shift+ Command+4, so I am going to press
01:58Shif+Command+4 on my desktop.
02:00You will notice that my cursor changes to this little target and its got rows
02:05and columns there of numbers that shift as I move it around.
02:08And that's not really what we want. What we want is not to just select an
02:13area and take a screenshot of that. We want to take a screenshot of this entire window.
02:17So, OS X has this other feature. It's called Camera Mode and when I press the
02:22Spacebar, you notice that my cursor changes to a camera.
02:25And if I move my cursor over to another window, that one highlights.
02:30So what this does is it takes a screenshot of a given window, so I can move it
02:35to whatever window I want to on my screen and when I click my mouse button,
02:39it will take a screenshot of that window.
02:42So I am going to go ahead and quit this and I am going to quit Xcode.
02:44I am going to go over here to my Desktop.
02:48I'm going to take this file here, which is the screenshot that I just took.
02:50I am just going to drag it into my Exercise Files and Chapter 1 and
02:55Screenshots, and there it is.
02:58All right, so when I open that up, you'll see there is my application and
03:04you will notice it's got space here for that shadow and that shadow has alpha
03:08transparency, which makes it really easy to composite it onto a screen.
03:13So that's our first step, we now have this screenshot.
03:15But Apple is requiring that it be a 1280x800 screen.
03:20And so all I am going to do is I am going to create a 1280x800 screen with a
03:24normal Apple looking background, and I am going to drop this on top of it.
03:28So here's how we do that.
03:30I am going to quit Preview.
03:31I am going to go over here to my hard disk and in under Library and Desktop
03:36Pictures, I am going to grab a standard Apple background.
03:39And all your standard Apple backgrounds are here. You have got this one and that
03:43one and that one and that one and so on.
03:46I am going to get the standard one, which is actually under this Nature folder
03:50and it's called Aurora.
03:53And that's it right there in Preview.
03:57So, I am just going to make a copy of that.
03:59I am going to press Command+C and copy it and come over here to my Exercise
04:03folders in my screenshots and press Command+V, and there I have a copy of it now
04:08in my folder right there.
04:10I am going to open that in Photoshop.
04:14Now, I am going to resize it.
04:19Image Size to 1280x800 and say OK and now I have a 1280x800 version of that,
04:28and I'm going to select it all by pressing Command+A and copy it into my copy
04:34buffer by pressing Command+C. Now when I say File > New, it will assume that I am
04:40going to paste from my clipboard in there.
04:42So, I am just going to name it BWDemoScreenshot, and Background Content is
04:50Transparent. I want RGB color.
04:52It's probably going to pick all this up from the clipboard, but just in case it doesn't,
04:56you want to check all your settings to make sure that it makes sense.
04:58And say OK and now I can just press Command+V to Paste, and there we have a
05:041280x800 with a standard Apple background.
05:08I am just going to say here, this is Aurora for my layer there.
05:12All right, and there is that.
05:14Now I am going to come back out here and I am going to take my screenshot and
05:19I am going to open that in Photoshop, and there is my screenshot with its alpha
05:25transparency drop shadow around it.
05:27I am just going to Command+A to select it, Command+C to copy it, come over here
05:33and Command+V to paste.
05:35You will notice it puts it on another layer by itself.
05:37I am just going to put in here BWDemo for the title of the layer.
05:40And there we have it and you can see it's got the nice little drop shadow.
05:44It looks just like a Mac screen with an alpha running on it.
05:47So, I am just going to Command+S to save and so I will save my Photoshop file there.
05:53I am saving it in my Screenshots folder and just press Save, and I don't care
05:59about compatibility because I'm not going to be using this in another
06:03application, and so there we have it.
06:06Now all I need to do is export this as a PNG file, and so I will come up here to
06:11File and Save for Web & Devices and I will select PNG-24 from my Presets and
06:18this is what it looks like there.
06:20My buttons are off the screen because of the size of the screen in here in
06:23the recording booth.
06:24I am just going to press the Return key and I am going to save the optimized
06:29file here as BWDemoScreenshot.png in that same Screenshots folder.
06:35Save it and there we have it.
06:39Now, we will come over here and here's our PNG file and there is our perfect
06:44screenshot that's all ready to be submitted to the App Store.
06:50Now, that's how you do it with an application that's not full screen.
06:55Here's how to do it real quickly with a full screen application.
06:58I am going to quit Preview here.
07:00I am just going to rename this PNG file here as my BWDemoScreenshot.
07:05I am going to call this ScreenCapture because that's the one that I captured
07:11with my Shift+Command+4. Now, for a full screen app, the first thing you are
07:16going to need to do is you are going to need to set your screen to 1280x800.
07:20Now if you have one of the newer Macs, like my iMac at home is actually a 16:9,
07:27it's not a 16:10 aspect ratio.
07:29So I can't actually set that screen to 1280x800.
07:33You are going to need to be able to take a screenshot of a 1280x800 screen or
07:38you're going to need to do a little bit of creative editing in your image
07:42editing to make it fit and to make it look right.
07:45Really there is no other fix for this.
07:48For my purposes, I happened to also have a laptop that has a 16:10 screen that I
07:53was able to set to 1280x800.
07:57And I actually took the screenshot already on that screen so we are just
08:01going to start with that.
08:02Now, just so that you know in order to take your screenshot, there are a couple
08:07of things that you want to do.
08:08I am going to bring up a screen with Firefox here.
08:10In order to take your screenshot, once you have your screen set to the
08:15right resolution, which this one is not, but we'll just pretend that it is for a moment here.
08:18You notice this little space down here at the bottom. I don't know if you can
08:21see it on yours but it's a space for your mouse to go to bring up the dock,
08:25because I have my dock set to Auto Hide.
08:28You will notice that the actual full screen window of Firefox here doesn't go
08:32all the way to the bottom, so I will have to actually drag that.
08:35I am going to grab this corner of it here and I am going to drag it down so
08:39that it actually fills the entire screen before I take the screenshot.
08:43Then there's a couple of more things you are going to want to do. You are going
08:46to want to come in to your System Preferences and you are going to want to make
08:50sure that your menu bar is not set to translucent.
08:54And so, if I go into Desktop & Screensaver and this checkbox here is actually
08:59checked by default, in a default installation of OS X, from 10.5 on and this is
09:0510.6 and you're probably using 10.6 if you're designing Mac applications.
09:11So you are going to want to make sure that this is unchecked because otherwise
09:13watch my menu bar up there at the top.
09:16You see it turns blue. That's because I have a blue background and you don't want that.
09:20If you have a pattern or something it will show up, so you want to have that
09:23unchecked, so it's got this sort of default look to it.
09:25And now we are all set.
09:27We've got this all set because I brought that up. And undid what I changed down here.
09:31So, we will fill the screen with the application.
09:33And now I am going to press Shift+ Command+3, and when I press Shift+Command+3,
09:38it will take a screenshot of the entire screen.
09:42So when I bring up the Finder here under my Desktop, I've got this screenshot here.
09:46Now this is actually one that I took on my laptop and there's another advantage
09:50to being using this one and we will take a look at it.
09:52Well, see I am going to drag this here into my Screenshots folder and we
09:57will take a look at it.
09:59And here it is from my laptop and this is 1280x800. It's the correct dimensions
10:04and it's that same Firefox screen.
10:07You will notice also that I have all of these other little things up there in my
10:10menu bar and I'm going to want to get rid of those.
10:12So, I will show you how to do that as well when we open this in Photoshop.
10:16So, we will quit this and we will go ahead and open it in Photoshop and there it is.
10:23I am just going to Command+A, Command+C to copy it, and come over here to
10:28our 1280x800 screen.
10:30I am going to create a little folder here and I will call this fullscreen.
10:36And I am just going to paste and that pasted into that folder there and now we
10:41have our fullscreen screenshot right there in our image.
10:44Let me close some of these others things that I don't need anymore.
10:48And now the first thing we want to do is we want to get rid of all of the stuff
10:51over here because we don't really want that in our screenshot.
10:56So, I am just going to zoom in really close and I am going to select some of
11:00this blank area here and I'm just going to copy it to cover this up.
11:06And when I do this, Photoshop will create another layer for me.
11:10So I am going to copy that and paste it and then I am going to move the one I pasted over.
11:16So I am just going to use this to cover up these areas and I will paste another
11:20one over here. And one more. And there we have it.
11:30So we have covered that up and we now have just a really nice clean screenshot.
11:38I am going to go ahead and I going to Merge these layers here so that they
11:41don't take up so much space here, and I am just going to call that menubar mask.
11:46I'm going to call this one here firefox.
11:49And now we are all ready.
11:52All I have to do is save this. Command+S and it's saved, and Save for Web & Devices.
11:59The same drills with the other one.
12:01I will call this one -firefox so we know which one it is.
12:06Now, I can quit Photoshop and I can come over here and bring it up and there is
12:12our perfect screenshot of a fullscreen application.
12:16The screenshot is an important part of your online presence in the App Store.
12:20This is the first impression for your customers, so you want it to show your
12:24app in its best light.
12:25Feel free to be creative, but make sure it's a good representation of what your
12:29app actually looks like.
12:31This will help your app get approved and it will also help a lot with your
12:34customer's sense of satisfaction after they buy.
Collapse this transcript
Generating the certificates and the AppID
00:00In order to submit your app to the App Store, you need to sign both your app and
00:05your installation bundle.
00:06This requires two separate signing certificates.
00:09So we are going to create those certificates now. We are going to start by
00:12going to the Developer Certificates utility, which is at
00:16developer.apple.com/certificates and we're going to start by creating certificates.
00:28So I am going to click on this link here, Create Certificates.
00:31If I go back here to the overview, you can also get there by clicking on Mac
00:34Certificates here and saying Create Certificate up here and you get exactly the same thing.
00:40You want both the Software Certificate and an Installer Package Certificate and
00:45so this will create both of them.
00:46I'm going to click on Create Certificate here.
00:50Now it's giving me some instructions.
00:51It's telling me to Launch Keychain Access to generate the certificate requests.
00:57This is called a CSR and that stands for Certificate Signing Request and we do
01:03this through the Keychain application here on the Mac.
01:07So the easy way to do this is to use Spotlight to find it.
01:09So I am going to press Command+Space and I am going to type keychain and
01:13there it is, it comes right up there, and I am going to click on that and here
01:17is my Keychain Access.
01:19Now up here in the Keychain Access menu, you'll see that there is Certificate
01:24Assistant and I am going to say Request a Certificate From a Certificate
01:28Authority, because that's what we're actually doing.
01:30We're requesting the certificate authority, which is the Apple Developer
01:35Certificate utility to generate a certificate and give it to us.
01:38So we need to generate a request and sign that request and give it the signing key.
01:45So that's what we're going to do here.
01:46So I am going to enter my email address here and under Common Name, this is
01:53where you put the name of the key.
01:54So I am going to call this Apple Developer Key and nothing needs to go here in
02:02the Certificate Authority Email Address. And I am going to say Save to Disk and Continue.
02:09It's asking me where to put it.
02:10I am just going to put it on the Desktop here for now.
02:15So the certificate request has been created on disk. We are going to want to find it.
02:19So I am going to click on Show in Finder and there it is on our Desktop and now
02:23we can go back here to the web browser and Continue.
02:28Now we are going to browse for the certificate request and I happen to know it's
02:32on my Desktop and there is the Certificate Signing Request, the CSR, and I am
02:38going to say Open and Generate.
02:40This will generate the certificate.
02:44This is the Application Certificate.
02:47So I am going to press Continue and I am going to go ahead and download that,
02:51mac_app_identity.cer.
02:54I am going to save it and there it is. Show in Finder. It's in my Downloads folder
03:01and I am just going to double-click on that because that will install it in the
03:06Keychain Access and it's this one right here, 3rd Party Mac Developer
03:14Application Certificate.
03:17Now we go back to the web browser and we click Continue and now we are going to
03:22generate the certificate for the installer.
03:24I am going to go back to Keychain Access, which is right there, and I'm going to
03:29generate another CSR. Certificate Assistant > Request a Certificate From
03:34Certificate Authority and put in my email address again, and this is the app
03:40signing certificate.
03:41So this will be the Mac Installer Key and I am going to Save to Disk and I'll go
03:52ahead and save this over the other one.
03:56We know where that is and so we'll press Continue and it's on the Desktop
04:02and I'll say Generate and press Continue and I am going to download this one.
04:10Mac Installer Identity.
04:11Save and Show in Finder, double-click on that, and that installs it in my keychain.
04:24So now I have the Developer Application Certificate and the Developer Installer
04:28Certificate, both of them installed in Keychain Access.
04:31So just want to show you something else here.
04:33If we go down here to My Certificates in Keychain Access, you'll see that you
04:37have your two certificates.
04:39If you ever want to do your development on another machine, you'll need both the
04:43certificate and the signing key.
04:44So if you press this little expander arrow there, you'll see that you get a key
04:50for both of them, the Apple Developer Key and the Mac Installer Key.
04:53That's just what I named them and I can see that I named them a little bit
04:55inconsistently there.
04:56But it's okay. They are in the Keychain Access and they are associated in this
05:00way under the My Certificates tab over here in Categories.
05:05So what you'll want to do, you can download the certificate from the Apple
05:09web site and install it in your Keychain on your other machine, but you are going
05:13to need to export this developer key here.
05:16So you right-click on that and you click on Export Apple Developer Key and
05:21you name it something intelligent and put it some place where you'll know where it is.
05:25Then all you have to do is copy that file over to your other Mac where you
05:30are going to do development and just double-click on it and it will install it
05:33in your Keychain Access, just the way that we did with the certificates on this machine.
05:37So we've generated our keys and our certificates.
05:41I am going to quit Keychain Access here, I am pressing Command+Q, and I am going
05:45to quit these Finder windows there and my Download window.
05:49Now we are right back here and I say Done and there we have our certificates now
05:54in our Certificates tab over here on the left-hand side.
05:57So when I click on Mac Certificates, you see we have these two certificates.
06:03You can download them again if you lose them or put them on another Mac.
06:07And now it will work just fine.
06:08Now one other thing what you need to do while we're here and it's not
06:11technically your certificate and I guess needed some place to put it.
06:15So they put it here in the Certificate Utility, is we need to generate our App ID.
06:20The App ID is a unique identifier for your application and it's used for a lot of purposes.
06:25It's used to identify your application on your Mac.
06:28It's used for things like the Finder to associate file types.
06:31It's used for Spotlight and it's also used by the App Store to identify your
06:36app on the App Store.
06:37You want to create an App ID and it has to be unique.
06:40It has to actually be unique all across the entire world.
06:44Nobody else will have exactly the same App ID. And the way that you do this is
06:49by putting it in what they call reverse- domain name style or reverse-domain notation.
06:56So first I am going to give it a description here and this is just a name for
07:00the App ID. It's not the name of the app.
07:02Now I am going call this BW Demo App and then the App ID it's also called
07:09the Bundle Identifier.
07:11I am going to say com.bearnet. This is my domain. You are going to want to use
07:16your own domain for this.
07:17So if your domain is example.com, you would say com.example.
07:22I am using a domain name that I use for things like this,
07:27com.bearnet.bwdemo2011.
07:32That will be the bundle identifier and I am going to put that in the info.plist.
07:37Later on in the course when we talk about the info.plist, this will identify
07:42this application uniquely, a worldwide unique.
07:46So I scroll down here and say Continue and confirm.
07:51You want to confirm this because you'll not be able to edit this.
07:56You can delete it but you cannot edit.
07:58You are not going to be able to change it.
07:59This is going to identify your application.
08:01So I'll also save and there we now have an App ID.
08:04Later on when we go to iTunes Connect and we want to identify the App for the
08:08App Store. You'll see it will actually show up in a little drop down box to
08:12allow us to select this App ID, which is also called a bundle identifier for that
08:17App that we are going to submit to the store.
08:19So now we've generated the signing certificates. We've generated the App
08:23ID bundle identifier.
08:25These are important parts of the security chain for your application.
08:28The certificates give the customer confidence that the apps they are installing
08:32are genuine and it also helps to keep your paid apps from being shared with
08:36users who have not paid for them.
08:38Either way, these certificates are required by Apple for your app to be
08:41included in the App Store.
Collapse this transcript
2. Preparing the Bundle
Understanding the application bundle
00:00The Mac apps store approval guidelines require that all of your
00:03application resources reside within the application bundle, installed in
00:07the user's application folder.
00:10So this begs the question, what exactly is an application bundle?
00:15An application bundle is a container for your application.
00:20The application bundle is specifically designed to contain all the files
00:23necessary to run your application.
00:27It's actually a self-contained file system that contains directories and files,
00:32just like the file system on your computer.
00:35The files contained in the bundle include the executable application,
00:39configuration files, images, datasets, and other assets.
00:43XIB files, which is spelled XIB, but pronounced NIB, because these are actually
00:50XML versions of older file types that were actually spelled NIB.
00:55These XIB files are the configuration files for screen layouts.
00:59They're created in Interface Builder and they are loaded a run time by the application.
01:04Other assets include Icon files in a Mac App these are generally in the Mac ICNS format.
01:10Other image files may be loaded by the upper runtime.
01:13data files were also included in here.
01:16In the Info.plist files is a special that's like an inventory of all the
01:21files in the bundle, and the general configuration file for load time for the application.
01:27Let's take a look real quick at the application bundle and how it's setup from within Xcode.
01:32So we're in the Chapter2 folder and under BWDemo-start you'll see these are the
01:39files as they are in Xcode, but once Xcode compiles your program, it builds a bundle
01:46and so under Build and under Debug, you'll see this BWDemo.app.
01:52Like any application file, it has his .app extension.
01:55So it looks like a normal file, but if you right-click on it or Ctrl+Click on it,
01:59you'll notice that you get something here that says Show Package Contents.
02:04So I'll click on that and here we have a Contents folder and we have all of
02:09these other things. There is the Info.plist file.
02:13Under Mac OS we have the actual executable of the application. Package Info
02:19Resources, which include your credits, your strings, and these actual XIB files
02:25which have the NIB extension.
02:26So these are the compiled versions of the XML XIB files.
02:31So those are the contents of your application bundle.
02:35You can actually look inside the bundle of any application that you find in the
02:38Applications directory, just by right clicking on the .app file and selecting
02:43Show the Bundle Contents.
02:45So the application bundle gets installed on your users machine. I's the result
02:50of your work. It's your product. Understanding what it is and how it works is an
02:54important part of learning to distribute Mac OS X applications.
Collapse this transcript
Signing the app with Xcode 3
00:00In order to distribute your app in the App Store it must be signed. Oce you
00:04have your app certificate, this part is relatively easy.
00:07So we're going to start by making a working copy of our application directory.
00:10So this is the BWDemo-start directory and I'm just going to make a working copy
00:15of this entire directory. This has our project in it, our Xcode project.
00:19So I'm going to drag the directory with my mouse. I'm going to hold down the
00:24Option key, so it's like a Option-drag and that creates a working copy in Mac OS
00:29X and I'm just going to rename this working.
00:33In that way, if I want to do this exercise again or whatever, I've still got the
00:39unchanged original one there. If for some reason I want to revert, there it is.
00:43So I'm going to open up the application in Xcode by double-clicking on the Xcode project
00:48and here's the application in Xcode, and I'm going to select the root of
00:53the tree here on the left-hand side under Groups & Files and I'm going to press
00:58Command+I, which brings up the configurations, and then up here in the Tab,
01:04you have all these different configuration options here.
01:07I'm going to go under Build and for configuration I'm going to select Release.
01:13So I'm working on the Release configuration, because what we want to do is you
01:16want to sign the application for when we actually build it for release.
01:22So there's a few things here we want to check. Under Architectures we want
01:25to make sure that it says 32/64 bit Universal. So that's the one that we
01:30want to select there. Base SDK is okay.
01:34Valid Architectures, this actually defaults to the wrong thing.
01:39The Apps store will never support PowerPC processors. The App store is really
01:44only available on OS X 10.6.6 and later, and so that will never support
01:50PowerPC architecture.
01:52So we want to change this for Valid Architectures, and it's only going to
01:56have the i386 and the X86_64, so it's the 32 and 64 bit versions of the Intel processors.
02:05So I double-click on that and I bring this up and for PowerPC I say minus.
02:11I'll click on little minus sign for all of these until this list only has these
02:16two architectures, the i386 and the x86_64.
02:22I say OK and now under Valid Architectures it just has those two
02:27architectures listed.
02:29Next, we want to come down here and configure the Debug Information Format.
02:32This is also required for submitting to the App Store. You want to select the
02:36one that's a DWARF with dSYM file, and you need make sure that that's selected
02:41for the App Store.
02:42Then finally scrolling down under Code Signing, you want to select your Code
02:47Signing Identity and this is the only one here that's got the little drop-down
02:51indicator there, and you want to select your certificate that you installed in
02:55the last chapter and this is your Developer Application Certificate.
03:00It won't even list the Installer Certificate because that's not valid in this
03:03context, and this will sign your application with this certificate.
03:09So I can close this now and I'm going to press Command+S to save my project,
03:14which probably won't do anything, but I want to build it and test it and so I'm
03:18going to select up here, from my Active Configuration, I'm going to select
03:21Release, and I'm going to press Command+ B, which is under the Build menu and it
03:28Builds, but we can go ahead and select it up here. Command+B builds and as see
03:32down at the bottom, it's pre-compiling and building, and now we get this little
03:37dialog that says codesign wants to sign using key "Apple Developer Key" in
03:41your keychain and you want to select Always Allow.
03:44If you select the Details here, you can get a little bit of details about it.
03:48Not much, but you want to select Always Allow and so that every time you
03:52compile it doesn't have to ask you this question again.
03:55So I'm going say Always Allow and it says down at the bottom there,
03:58it says Build Succeeded.
04:00So now I can run it and I'm going to press Command+R and you'll see a lot
04:05of options up here.
04:06It's just the run like this, but Command+R also does the same thing.
04:10There is our simple little application that says nothing here, this page
04:13intentionally left blank.
04:16So now you have signed your app and I'll go ahead and quit that and I'm going
04:20to quit Xcode. So now you signed your app with your Installed Developer
04:25Certificate and you're ready to put the rest of your app bundle together, to
04:28submit to the App Store.
Collapse this transcript
Signing the app with Xcode 4
00:00In order to distribute your app in the App Store it must be signed.
00:04Once you have your app certificate, this part is relatively easy.
00:08In this movie I'll show you how to sign your app using Xcode 4.
00:12The process is somewhat different from the process with Xcode 3.
00:15So we'll start by making a working copy of BWDemo-start in the Chapter 2 folder
00:22of our exercise files.
00:24And I'm just going to go ahead and rename that to BWDemo-working.
00:28And I'm going to open the Xcode project file out of that project folder.
00:34So this loads up the project in Xcode 4.
00:37Over here in the Navigator I'm just going to select the project itself and
00:42that'll bring up the Project Editor.
00:44Now the first thing I want to do is set the bundle identifier and I should be
00:48able to edit it right here, but the problem is because part of it is being
00:51filled in automatically it actually doesn't let me edit that.
00:56It'll let me edit this part on the left, if we want to get technical, but it's
01:00not letting me edit the whole thing.
01:01So I need to edit it in the info.plist file, which is conveniently right here in the second tab.
01:08And right over here, see the part that's filled in by a variable there, that's
01:12what's preventing it from being edited in the Summary pane.
01:15So I'm just going to type in my bundle identifier.
01:17Your bundle identifier will be different.
01:19Doo not use my bundle identifier.
01:22com.bearnet.bwdemo2011.
01:27And now when I come back over here to the Summary pane, you see it is not grayed
01:30out and I could actually edit it if I wanted to.
01:33I want to set the Application Category.
01:36Now both of these things are going to be covered in a later movie and actually
01:41the later movie will show you how to set these things up in Xcode 3.
01:45But we're doing it here so that you can see how to do it in Xcode 4 and then
01:48those things will already be done when you get to that part in the later movie.
01:52Our Deployment Target defaults to 10.6 so we don't need to change that.
01:57And now this pane is done.
02:00Now we will come over to the Build Settings tab and we're going to check a few things.
02:04The defaults are now more correct than they were in Xcode 3 because Xcode 4 is
02:10designed for actually submitting things to the Mac App Store.
02:12Xcode 3 was was designed long before that and with different defaults that
02:17worked for universal applications that would run with PowerPC processors
02:21and things like that.
02:22None of that is necessary anymore with the App Store.
02:25The App Store is only for Intel architecture Macs.
02:28So things like Architecture is going to be set to 32/64-bit Intel, and
02:32that's exactly correct.
02:34The Base SDK is Mac OS X 10.6.
02:38The Valid Architectures are just i386 and x86_64.
02:44And so these things are fine with the defaults from Xcode 4 and the for Xcode 3
02:50were wrong and needed to be updated.
02:52Now scrolling down here to the Build Options, again this default is correct in Xcode 4.
02:59DWARF with dSYM File for the Release Configuration.
03:03And scrolling down farther to Code Signing, now we're actually going to sign the app.
03:08So here in this column here, which is the target-- this column is the project,
03:13this column is the Mac OS default, ad this is what it resolves to.
03:17In the actual target column we want to come down here and click under Code
03:21Signing Identity and I'm just going to select my code signing signature.
03:26And that part is done.
03:29So now we're just going to-- let's see and make sure that my scheme is correct.
03:33And it is and I'm just going to press Command+B to build.
03:38It wants to use my private key in my Keychain.
03:41I would normally select Always Allow, but this isn't actually my computer so I'm
03:45just going to say Allow.
03:46And the build succeeded.
03:49So now you've signed your app with your installed developer certificate and
03:53you're ready to put the rest of your app bundle together to submit it to the
03:57App Store.
Collapse this transcript
Setting up the info.plist file
00:00Apple refers to the Info.plist file as meta information for the
00:04application bundle.
00:05You can think of it like a master configuration file.
00:08It's the starting point for the system to look for vital files and
00:12information in your bundle.
00:15We're going to start by making a working copy of what we finished in movie
00:19number two in this chapter and so I am going to drag this, holding down the
00:23Option key and make a working copy of it.
00:26I'm going to rename it and I'm going to say BWDemo-03-working.
00:31Then you'll notice inside this folder, there's a file called BWDemo-Info.plist
00:37and that's our info.plist file.
00:40So let's go ahead and open Xcode by double-clicking on the Xcode project file here.
00:46We will look down inside our Resources folder and we'll see the file right here,
00:51BWDemo-Info.plist, and when I select that it's going to come up here in the
00:57little editor and this is a special editor for plist files.
01:02In fact, if we were to go back to our Finder and just double-click on that plist file,
01:08it will open this Property List Editor and that's actually the same
01:13application that's running in that window down there.
01:17So coming back into Xcode we can see these are the default things that are in
01:22the info.plist and we are going to need to update it and change a few things in there.
01:27The plist file itself is in XML.
01:30If I look at this in the Finder and open it in a text editor, I am going to
01:33right-click on it here and I'm going to select BBEdit, which is just a plain text editor.
01:39You can see that the file itself is just XML.
01:44In fact, if you wanted to edit it this way, it would work. It's just a whole lot
01:49more complicated to edit this way.
01:51So the Property List Editor is a great way to work with these files and that
01:56comes up right here in Xcode and its editor window.
02:00So on the left-hand side you have Keys and on the right hand side you have
02:03Values and there is a number of keys available.
02:06This is just a very small subset of what's available.
02:09This is what's installed by default when you create a project in Xcode for the Mac,
02:14but there's actually a whole lot more stuff available.
02:18You can find documentation for that on the Developer web site.
02:22I am going to bring up Firefox here and here's the Mac Dev Center and I am
02:26all logged in already.
02:28If I put into the Search field here and I type "information property list key reference,"
02:38you see here this first one here, Information Property List Key Reference.
02:41That's the document we're looking for, and this has all kinds of information.
02:45You can download the PDF. It's about 60-70 pages and it's got kinds of information.
02:50If you look here under the Core Foundation Keys, here is the main keys that you
02:55might find yourself using in a Mac OS X App.
02:59So you have the key name, which is actually the name in the XML file, and then you
03:02have the Xcode name.
03:04This is what it displays here in Xcode in this editor.
03:08So there is the documentation for it and you can find all kinds of things that
03:12you can do with it and oftentimes instructions that you'll get for using
03:16different facilities, different features in OS X, will instruct you to put in
03:21certain keys in your info.plist file.
03:25In fact, we are going to do one of them today.
03:27So the first thing we are going to do is we are going to come down here to
03:29Bundle identifier and if I select Bundle identifier in the left, if I click on
03:33it again it will let me edit in and I don't want that.
03:35If I click on this little arrow thing, it will give me all kinds of choices
03:38and I don't want that.
03:39So I am just pressing Escape to get out of that.
03:41What I want to do is I want to select this and then press Tab and when I press Tab
03:45it will actually allow me to edit the value.
03:48That's what it is that you want to be able to do.
03:50Here's where we put our bundle identifier, which is the same as our App ID that
03:55we entered in the Developer Certificate utility in an earlier movie.
03:59So I am going to type com.bearnet and this is mine. Yours will be different and bwdemo2011.
04:07This identifier has to be completely unique worldwide, which means that you
04:12want to use your domain, and so I hit Enter and it took me to next field, which
04:17is what it will do.
04:18This editor is not easy to use but it does work.
04:22So this is in a reverse-domain notation.
04:25So if your domain were example.com, you would say com.example. and
04:30the name of your app and that would make it unique worldwide.
04:33This is actually registered in the developers website. It's going to be used
04:38for a lot of different purposes, including identifying your app in iTunes in the App Store.
04:45So you want to make sure that it's unique. Do not use my identifier, do not
04:49use my domain name.
04:50The next thing we are going to do here is we're going to import our icon files
04:53so that we can use our icons.
04:55So I am going to switch back here to the Finder and come into our Icons folder
05:00and there is our icon file right there.
05:03I am just going to take that icon file and I am going to drag it over here into
05:08Resources and when I let go, I will get this little dialog box that says, it gives
05:12me the option to copy the items into the group's folder if needed.
05:16It's really important that you check that box.
05:18You want to make a copy of it. You don't want it to just reference the file
05:22outside in your source directory tree, because then it's not going to be part of
05:26the bundle and if you were to actually delete that file or move that file you
05:32would have trouble building your application.
05:34So you want to copy the items in and we'll click Add and there we have our icon
05:39file now in our Resources, and it's BWDemo.icns and we are here under Icon file,
05:45I am going to type that in. BWDemo.icns and I pressed Command+S when I was done typing.
05:53That will put our icon into the bundle.
05:55We see the purpose here of the info.plist is to configure the bundle and so now
06:00it knows where your icon file is inside of the bundle.
06:04Finally, one other thing we're going to do here, we're going to create a new key
06:07and this is a key that's not actually in its dictionary and so when we create it
06:12it's not going to give us a human readable name.
06:14It's a new key and I am going to start by showing you the documentation for this
06:18on the developer web site.
06:20So I am just going to ahead and I am going to type in an address.
06:22You need to be logged in to be able to see this web page.
06:25It's developer.apple.com/devcenter /mac/documents/submitting.html, like that.
06:41This is the general instructions on submitting to the Mac App Store and if you
06:46come down here and click on Categorizing Your Application, you see these
06:50instructions for adding the LSApplicationCategoryType key at the root level of
06:55your info.plist file.
06:57So I am going to double-click on this and press Command+C and that way I
07:00can copy and paste and I'll be sure to spell it correctly, because that's really important.
07:05I am going to come back over here to Xcode and I'm going to click on this
07:11little symbol over there which turns it into a plus and gives me a place to
07:14enter a new property list key, and I am going to press Command+V and paste that
07:20in and press the Tab key.
07:23That gives me a place where I can enter the values.
07:26So I've got the key, LSApplicationCategoryType.
07:29Now, this is actually used by the App Store to categorize your application
07:35and this is required.
07:37So I am going to come down here and I am going to find the one that says Utilities.
07:41This is the key that I am going to use for Utilities.
07:43It's public.app-category.utilities and I am going to press Command+C. I am going
07:49to come back over here to Xcode and paste that in and press Command+S to Save.
07:54So now we've added our category type.
07:58Now that we've filled in all the things that are required in our Info.plist file,
08:02we just want to run it and test it and I'd like to also take this
08:05opportunity to show the icon in action.
08:08Because this is the first time we've actually incorporated the icon into our app.
08:12I am just going to press Command+S to save and I've already saved, so it will beep
08:16that me and Command+B to Build and it wants to save before building.
08:21This is actually a quirk of Xcode.
08:23When you press Command+S and what you have open is the Info.plist file, because
08:29the editor is this separate plist editor, it doesn't actually pass that save
08:34back onto the rest of the document and yet you've changed your bundle by
08:39editing the plist file.
08:40So, it's always going to do this. When you change the plist file and when you
08:44press Command+S and then you press Command+B to build, it's always going to ask
08:47if you want to save before building and I just press Enter to save all.
08:51Now here it is Building, Compiling, Building, Build succeed it, and Command+R to run it.
08:56So now we have our application and our application is actually running.
09:01If I press the Command+Tab key, you see there is our icon.
09:05So I am going to press Command+Q to get out of this.
09:07That tells us that the plist file got edited and that particular entry is
09:13actually working. That's the icon file entry there.
09:16So that's all that we need to do. That's all that's required of us for
09:20the Info.plist file.
09:21Of course, you may have other things you need to do depending on your application.
09:25The Info.plist file is a key component of the application bundle.
09:29We've covered the basic parts required for submitting your app to the App Store,
09:33and for more details, of course, about its many uses you can use the Information
09:38Property List Key Reference document that you saw at the beginning of this movie
09:42and it's available in the Developer portal.
Collapse this transcript
Creating and testing the installer
00:00The application installer is a key piece of the process of submitting your
00:04application to the App store.
00:06It's really a very simple piece and Xcode will take care of creating it for you.
00:11So we'll start by making a working copy of BWDemo-03-done,. You can of course use
00:16the results from your last chapter if you've been following along.
00:20I will call this BWDemo-04-working.
00:25We'll go ahead and open our Xcode project in Xcode and the first thing I'm
00:30going to do, I am going to select this node at the top of the tree there and I'm
00:34going to press Command+I and I am going to confirm our Build settings.
00:38So we want to have Build selected up here and we want to have Release
00:40selected in the Configuration, and confirm that our Architecture is set to
00:4632/64-bit Universal, our Valid Architectures has no PowerPC in it, just the
00:52i386 and the x86_64.
00:56Our Debug Information is DWARF with dSYM File and we are signing our project
01:01with the correct code signing certificate.
01:05So confirm that all that's correct, and then we will come down here and
01:08check that it builds. I am going to Run a Clean first and make sure that
01:12it's all clean. And I build.
01:15Press Command+B to build and it builds successfully.
01:19So that's all very good.
01:21Now we will create the installer.
01:24To create the installer all you can do is you come up here and you select Build
01:27and Archive, and there we have it.
01:30It created the installer and it's opened up the Organizer for us.
01:34If it doesn't open up the Organizer for you automatically, you can just go up
01:37here to Window and Organizer and open up the Organizer yourself, and you will
01:42see that we have here an Achieved Applications.
01:44There is our application BWDemo, there is our small icon, there is our big icon.
01:49There is the date and time so we can confirm that this is the one that we just
01:53built. And now click on Share.
01:57When you click on Share, it's going to offer to sign the application. You need
02:01to sign the application with the Installer Certificate and it shouldn't offer
02:06you any of the other ones. Just the Installer Certificate.
02:09I am going to say Save to Disk here and it may come up and ask you for
02:13permission to use the key out of your keychain. Just say go ahead and give it
02:17that permission all the time, and I am going to save this one the desktop.
02:21You want to save at some place where you remember where it is. I am just using the
02:25Desktop for our purposes here for our tutorial.
02:29And I'll just type BWDemo for the name. I don't need to type .package. It will
02:34add that itself, so don't add any extension to this. And I will click Save and we are done.
02:40We have built our installer.
02:42So I will close this and open up the Finder and go to the Desktop and we can see
02:48there is the BWDemo.pkg. That's the installer.
02:52So our next step is to test the installer and you don't want to just
02:56double-click on the installer because that's not the way that it's going to be
02:59run when people download your app from the App Store.
03:03The App Store is going to run it for you and it runs it differently then you
03:06would just by double-clicking on it.
03:08For one thing the App Store is running is the system root and it installs things
03:13in the root of your file system.
03:15On a Mac, in Mac OS X there are actually two different applications directories.
03:20One is for individual users, so it would be the one off of my user directory in
03:26the Applications folder.
03:27And the other one is for the entire system. That's the one off of your hard
03:31disk in that Applications directory, and that's where this is actually going to
03:36get installed, because that's the way that the App Store does it.
03:40So in order to test it we need to run Terminal and test it from the command line.
03:45So I am going to press Command+Space and I am going type in terminal. And this
03:52is opening up kind of big here to set up for a larger screen. And I am going to
03:56navigate to my Desktop and type ls and there is our demo package.
04:02Now, I am going to run the installer here and it's going to do it wrong and
04:06I am doing this on purpose, because no doubt you're going to run into this error at some point.
04:12The problem is, is that the way the installer works is it will go first and
04:18look for any instances of the app that it finds in your file system and it will
04:23update that instance rather than installing a fresh one in the Applications directory.
04:27If it finds it anywhere already on your hard disk, it will just update it instead
04:31of installing it clean.
04:33And there are actually several instances of this already on the hard disk.
04:38So it's going to pick one and update it and that's not what we want it to do.
04:41But I want to show you what that looks like before we go and fix the problem.
04:44So I am going to type sudo. That runs a command as root and that's
04:49important because that's the way the App Store is going to be running it
04:53for the installation.
04:54And I will type installer, which is a system command that installs packages;
05:00-store, so it's going to run in the store mode; -pkg, to give it the name of the
05:05package, which is right here, it's BWDemo.pkg; and -target and a slash for
05:13the root of the file system.
05:15So that sudo installer-store-package, the name of the package, -target and a
05:24single forward slash.
05:25So we will go ahead and run this and it's going to ask for my password because
05:31sudo is running as the root and it might also give you some long instructions.
05:36It's not giving me that because it gave it to me a few minutes ago.
05:38So it's going to ask you a password and there might also be some long
05:41instructions before it.
05:42Just type in your password and you have to have an administrator account, which
05:47you probably do, and there we go.
05:50Now you will notice here that it says Bundle com.bearnet.bwdemo2011, that's our
05:56bundle identifier, will be relocated to /Users bw blah, blah, blah,
06:01Library/Application Support, Shared Applications, blah, blah, blah.
06:06It's finding another instance of the application and it's updating that instead
06:11of installing it fresh.
06:12So this is a problem.
06:14I would hope that they fix this in future versions of Xcode and they find a way
06:18to allow us to test it without going through all this rigmarole, but for now we
06:21got to go through some rigmarole.
06:23We have to delete all the instances of BWDemo app.
06:27So I am going to show you how to do that.
06:28There are some few different things we need to do.
06:30First, we are going to go into the Organizer and we are going to delete this one.
06:33This is the one that we just created when we created the bundle.
06:37It had to first build the application before it could create the installer
06:41package and we need to get rid of that.
06:43So I am going to press the Delete key on my keyboard and go ahead and
06:47select Move to Trash.
06:48Now that one is gone.
06:49I can close the Organizer.
06:52The other one is actually right here.
06:54If I come out here to the Finder and we go over here to our
06:58ExerciseFiles/Chap02, this is our project and I go under build and Release,
07:04you'll see that there is one there because at some point I built it for the Release.
07:09There might have been one under Debug also, but I haven't done that recently.
07:13So this needs to get deleted also.
07:15The easy way to do that is from Xcode.
07:19I just come over here and I go to Build and I say Clean All Targets and select Clean.
07:25Now we will come out here and we will see that
07:26that's gone and that one if there was one will be gone too.
07:31Finally, we've got some other instances here.
07:34That doesn't have any. This one does.
07:36I am just going to delete those with my keyboard.
07:39So it's under the Package directory, under build, and you check in the Debug
07:44and Release folders.
07:45If you find it, you select them both and I will just press Command+Delete and
07:49that will send those to the trash.
07:51So I am just going to look real quick and make sure I don't have any others.
07:54Because we've been building this over and over in different directories as we go
07:59through our tutorial here, you might find several.
08:02You just need to look from all. And none there.
08:08I am going to go back to Chap01.
08:10Okay, we've seemed to have gotten them all.
08:12Now when I come back over here and I am just going to pressing the Up arrow and
08:16run this command again. You will see it says Bundle com.bearnet.bwdemo2011 will
08:24be installed to Applications and that's exactly where we want it installed.
08:28So now if I come back over here to my Finder and I select Applications, I will
08:33find the app right here.
08:34There it is, BWDemo.app, and I will just drag that into my dock.
08:39Actually, the installer will install it in the dock also in the current release
08:44of the Mac App Store.
08:46And I will just select that and there it runs it just fine and I can quit that
08:51and I can take this out of my dock and I can even erase this from my
08:55Applications folder.
08:56We have tested it successfully.
08:59So we've installed the app with the Installer, it got installed in Applications,
09:04we've tested it from the dock.
09:05It's all working exactly as it needs to.
09:08You notice I need to type my password to delete it and that's because it's
09:12installed in the root Applications rather than in the user Applications.
09:17So it needs to be deleted by an administrator. So that's it.
09:22You've not successfully created and tested the Installer for your app.
09:26I know this is a little bit complicated and that's just the way it is right now.
09:30Hopefully, it will get better in the future, but you need to make sure that all
09:33of your instances of your app are deleted before you test the installer and then
09:37it should just work just fine.
Collapse this transcript
3. Submitting Your App
Understanding the submission process
00:00Once you have your application bundle and installer all ready, it's time to
00:04submit your app to the App Store.
00:06Here's an overview of the entire process.
00:09If you've been following along step-by- step these are the things we've already done.
00:13We've signed our application and installer with certificates that we got using
00:17the Developer Certificate Utility, we've assigned our App ID and installed it in
00:22our info.plist file, and we've created and tested our installer.
00:27Now, we'll use iTunes Connect to submit the app to the App Store.
00:32Sometimes called ITC for short, iTunes Connect is Apple's portal for submitting
00:37apps to the App Store.
00:38There is documentation available as well.
00:41iTunes Connect actually does a lot in the way of managing your app and managing
00:45different things you can do with it.
00:47It manages all of your accounts, allows you to get paid, and it does all of these
00:51different things and there's a full developer's guide here.
00:54If you click on this link you'll get a PDF file that has a rather lengthy
00:58manual describing in great detail all of the things that you can use iTunes Connect for.
01:03There's also an iPhone App where you can do some of these things remotely from your iPhone.
01:09iTunes Connect is also where you enter all the metadata, the keywords, icons,
01:14screenshots to get your app ready for the store, and to maintain the app page in
01:19the App Store after it's in the store.
01:22Finally, we'll submit the app with Xcode or Application Loader.
01:26I'll show you how to submit with both Xcode and with Application Loader.
01:31But at this point I'm recommending to use Application Loader. It's not much more
01:35complicated and there are some problems with recent versions of Xcode that make
01:39it just not work sometimes.
01:40So I'm suggesting to use Application Loader. I'll will show you how to do it both ways.
01:46Once your app has been submitted you'll follow-up with iTunes Connect to check
01:49on the status of your submission process and to manage the metadata after your
01:53app has been approved.
01:56iTunes Connect is the portal for managing your app on the App Store.
01:59You want to get very familiar with it.
02:01It has a lot of options, a lot of things you can do beyond the essentials that
02:04we cover in this tutorial.
02:05You'll want to familiarize yourself with its documentation so that you can use
02:10all of its features.
Collapse this transcript
Registering your application in iTunes Connect
00:00iTunes Connect is like the backroom at the store where the inventory is kept and
00:04the bookkeeper adds up all the day's sales.
00:06You can get to iTunes Connect by typing in itunesconnect.apple.com and this is
00:15getting me right to this screen because I've already logged in.
00:18You'll probably get a log-in screen where you have to type in your Apple ID and your password.
00:22In order to submit our app we're going to click on Manage Your Applications and
00:26Add New App and Mac OS X App, and we'll type in the app name, which is BWDemo,
00:36and we'll type-in a SKU number.
00:38Now it says number and it doesn't actually required to be a number. It's a
00:42Stock Keeping Unit.
00:43What that means is that this needs to be a unique identifier, unique only
00:47within your organization.
00:49So I'm just going to type here BWDemo.
00:51We'll select the Bundle ID that we entered in the Developer Certificate utility
00:55and I'll press Continue.
00:58The availability date, I'm just going to select the date in the future because
01:01I'm going to delete this right away. This is just for demonstration purposes.
01:04You'll notice that once you select a tier, then it explains what all these other ones are.
01:08Tier1 is $00.99, Tier2 is $1.99.
01:12Once you select a price tier, it brings up this link for pricing matrix.
01:16These tiers are labeled Tier1, Tier2, Tier3 like that because they don't want to
01:20put in an amount because it's different in different currencies. And so you click
01:24on this pricing matrix.
01:25You can see that Tier 1 is $0.99, Tier 2 is $ 1.99 in US dollars or in Canadian
01:31dollars and here you have in euro, pounds, yen, australian dollars, and how much
01:37of that is your commission.
01:39So this chart, it goes all the way down to $1,000 all the way at the end.
01:44So that's the pricing matrix.
01:47So we'll go ahead and continue.
01:49I'm just going to put in a version number and a description, Demo demo demo.
01:56You are going to want to put in a description.
01:57This is what's actually going to show up on the store.
02:00So what I'm entering here obviously is stuff that would be summarily rejected by the App Store.
02:06So here you're going to want put in real information. You're going to want to
02:09actually have this information prepared before you get this far.
02:13Our primary category is Utilities and our secondary category is optional.
02:19I'm not going to fill that in.
02:20You're going to want to put-in keywords, again if you click on the little
02:23question mark here, it explains that your keywords are separated by commas.
02:28So you can, again, demo, trial, example, all the words that I am not allowed to
02:35put in here, and you want to put in copyright information, your contact email
02:41address, your support URL, and this is where you put in notes for the reviewers.
02:52If there's anything about your app that you need to explain in advance, you
02:55want to put it in here.
02:56One example that they have in the documentation is if you have any Easter
03:00I'm you want to tell them where they are, so they don't discover them by
03:02accident, because if they discover them by accident they're going to reject your application.
03:06Your keywords, you want to make sure that you select keywords that are
03:09descriptive but they're not too general.
03:11In other words if you have a game, you don't want to just put game there.
03:14You want to put car racing game, or whatever kind of a game it is.
03:19So you want to have keywords that are really going to help people to search for
03:22your app and find it.
03:24You have to select a rating here, and you have to fill in all of these.
03:31They will actually reject your app if you don't. So I'm just going to go ahead
03:34and put None here because there's really no content at all in this application.
03:43And rumor has it is that if you select the wrong combination of things here
03:48they will not even accept your app in the first place. I don't know that that's necessarily true.
03:54So down here you want to import your screenshot.
03:58So I'm going to select on Choose File and we'll go to our Chapter 3
04:03Screenshots and here we have our PNG file of the screenshot and there is
04:08little preview of it.
04:10I'll say Open and there it is.
04:14So this screen is now filled in.
04:16There is everything we need. We'll say Save.
04:22So now our status is prepared for upload and we're going to view the
04:25details and we can see all the details of all of our metadata and our
04:30screenshot and everything.
04:31We can edit it if we want to.
04:33When everything is ready and we're ready to upload our binary, we click on
04:38Ready to Upload Binary and we have to go through these confirmation screens
04:43for Export Compliance.
04:44This does not use any encryption.
04:47So I'm going to say No, and Save.
04:50So as you're now ready to upload using Application Loader and it says using
04:57Application Loader. Of course you can run Application Loader from within Xcode
05:01and we'll show you how to do that.
05:03But for now, we go back and we see that our status is now waiting for upload
05:07and that means that we're ready to upload our application.
05:11So once the metadata is all set in iTunes Connect and your app is in the ready
05:15for upload state, it's time to upload the app using Xcode or Application Loader.
05:20This process is covered in the other movies in this chapter.
Collapse this transcript
Submitting with Xcode
00:00The process of submitting your app with Xcode is really very simple.
00:04I'll cover it here and show you how it works, but right now I am recommending
00:06that you use Application Loader instead.
00:09I found that sometimes submitting with Xcode does not work when it should.
00:13There are bugs relating to how to use data from the info.plist file.
00:17These bugs make the submission process just not work sometimes.
00:21So until the next version of Xcode I am just using Application Loader myself and
00:25I am recommending that you do the same thing.
00:27But for now we'll show you how this works and then at least you'll know how
00:31to use it and you can try it and if it doesn't work for you, you can use
00:34Application Loader.
00:35So I am going to start by making a working copy of BWDemo-start and I'm just
00:40holding down the Option key while I drag it and I am going to change this to
00:46say BWDemo-working and I will double- click on the Xcode Project to open Xcode.
00:55And I'm going to start by doing the Build and Archive.
00:58Now, we've already got everything setup.
01:01We have got our property list setup, we've got all our assets in here, the
01:04icons, and certificates, and everything is all ready to go as we've gone through
01:09the rest of the course.
01:11So this is actually ready to submit and so I did build an archive and now I am
01:16going to go over here to the Organizer and select BWDemo and over here I am
01:23going to select Validate.
01:25First, you have to validate it.
01:27I'm going to put in my username and password, and I am going to say remember in
01:32the Keychain, and I am going to select Login and here we are.
01:38It's wanting me to choose this identity and this application.
01:43So it's gone into my iTunes Connect account and it's found the application that
01:49is in its ready for upload state.
01:51So I am going to select Validate here and it will check and make sure that it
01:55passes the validation. There we go!
01:57Validated archive application. It has passed the validation and can now be
02:00submitted to the App Store.
02:02So I am going to say OK and I am going to go ahead and press Submit.
02:06Again, I will log in and I'll select the App and the Certificate and Submit,
02:15and it's uploading it now. There we have it!
02:18The application BWDemo has been submitted to the App Store.
02:23So the submission process with Xcode is really very, very simple.
02:26For now I'm using Application Loader, because sometimes this just doesn't work,
02:30and as you'll see if you check the movie on Application Loader it's really not
02:35that much more difficult.
02:36I'm sure the Xcode version will be fixed sometime in the near future and at
02:41that point, I will start recommending using it again.
Collapse this transcript
Submitting with Application Loader
00:00When you submit your app to the App Store from within Xcode, it's actually using
00:05another utility called Application Loader to do the work.
00:08Here's how you use Application Loader directly.
00:11You will find Application Loader on your hard disk under the Developer
00:16Directory which is where Xcode is and under Applications/Utilities, and
00:21Application Loader.
00:23When you run Application Loader for the first time-- and you'll notice that it
00:27didn't do this. This time because I am already logged in.
00:30When you run it for the first time, it will run its Setup Wizard and its Setup
00:36Wizard looks like this and you say Next and you log in with your iTunes
00:40Connect login information.
00:42I will click Next and it says that my login information has been verified.
00:47Now it will say Choose an application.
00:50It will give you a list of the applications that are in there ready to upload
00:55state in iTunes Connect and I've got this one, BWDemo.1.0, and it says Next and
01:01there is the information and Choose and I can choose my package file here.
01:07I've got it in Chapter 3 of my Exercise Files on my desktop here and I will
01:12choose my package, my installer package, and say Open and I will say Send.
01:20Now, it's checking with the App Store.
01:23It's going to verify the assets and upload the package and there it's all done. I'll say Next.
01:31It says you have succeeded. You've successfully added your application to the iTunes Store.
01:38So the process of submitting your app to the App Store with Application Loader
01:41is really not much different than the process with Xcode.
01:43Of course you have to compile and build your package in Xcode and save it like
01:49we did when we tested the package.
01:51I tend to do it this way and I tend to use the Application Loader.
01:55I find it perfectly easy enough.
01:57I've also found recently in recent versions of Xcode that doing it from within
02:01Xcode at least in this current version has some problems.
02:04So right now I am recommending that you use Application Loader. Perhaps in the
02:08future that will change when they fix the problems that I've seen in Xcode with
02:13uploading applications.
Collapse this transcript
Checking the status of your application in iTunes Connect
00:00iTunes Connect is used not just for submitting your app, but for administering
00:04it as well and this is especially useful during the process of waiting for
00:07your app to be approved.
00:09So I am going to go ahead and open up iTunes Connect here.
00:12I am going to type in itunesconnect. apple.com and put in my password and click
00:23on Manage Your Applications and you will see that our BWDemo app that we just
00:28uploaded, it's got the little yellow mark next to it.
00:31So if we want to see what the state is, I will just click on it and it says the
00:34State is Waiting For Review.
00:36So here's our SKU and our Bundle ID and all of this information.
00:41I am just going to click on View Details and we can see here that it's
00:46Waiting For Review.
00:47We have some other stuff here.
00:49You see the Status History.
00:50I've gone back and forth with this a few times through the process of recording it.
00:54So it's been Upload Receive, Waiting for Review, Developer Rejected, Waiting for
00:59Review, Upload Received, like that, because I have done it a few times during
01:02the process of recording this.
01:04You can also edit your version information.
01:08You can edit all of this stuff. You can edit your metadata, and you continue to
01:19do this even after the app has been published to the App Store.
01:23You can continue to edit these things and you can edit your screenshots.
01:33So iTunes Connect actually provides a very simple interface for checking on the
01:37status of your app and for editing your metadata.
01:40So you'll use this throughout the lifetime of your application while it's on the App Store.
Collapse this transcript
4. Promoting Your App
Understanding the App Store's marketing guidelines
00:00Apple provides a number of resources to help you with your marketing effort.
00:04These resources include trademarks, product images, and the Mac App Store itself.
00:09In order to use these resources they've provided guidelines and these guidelines,
00:14like the review guidelines, are actually rules that they expect you to follow
00:17when using their marketing resources.
00:20You can download a copy of these guidelines at this web page and this is in the
00:25developer portal so you'll need to log in with your developer ID.
00:29If you scroll down here a little bit, you'll see this link to the guidelines and
00:34this is a PDF file. It's about nine pages long. It's not very long at all.
00:38I strongly suggest that you download it and read the whole thing.
00:42Apple has a tremendous amount of success in their marketing.
00:45So anything that they suggest in the marketing realm is really going to carry
00:49a lot of weight and is really going to help you be successful in your marketing efforts.
00:53So I suggest that you look at this carefully and then you give it a lot of credence.
00:56Also, on this page you'll find links to these graphical resources.
01:01There is an iMac, a MacBook Air, and MacBook Pro where you can paste your
01:05screenshots into their screens and we'll show you how to do that later in this chapter.
01:09Also, the Mac App Store logo and you'll notice a copy of this here.
01:13They call it the App Store badge.
01:15You can put that on your website and there are rules for how to use it.
01:19One thing to keep in mind when using the name "Mac App Store" is the proper
01:24spelling and punctuation of the name Mac App Store.
01:27It's a trademark and they get to tell you how to use it and this is actually a
01:31good thing, because consistency and the usage of a trademark helps penetration
01:36in the eyes of the viewer and that's just going to help you sell more product.
01:40I know for some of us that don't have a marketing background that seems like a
01:43little bit of voodoo, but it's actually a tried and true truth.
01:48So use the name Mac App Store consistently and that will actually help with
01:53your marketing and help with your results and it will also keep you out of
01:56trouble with Apple.
01:57The badge itself needs to be placed specifically on your page.
02:00Well, it's not so much specifically is that there are things that they don't
02:03want you to do that.
02:03They don't want it to be more prominent than the name of your web site or your
02:07trademark or any of your product images.
02:09They want it to be less prominent those things and kind of off to this side and
02:12they want a certain amount of air around it.
02:14I think it's 25% of the size of the badge itself they want in space around it.
02:19There are other guidelines that are in the document for how to use the badge.
02:23Linking to your product on the store is done by creating a link from the store
02:29itself, and I am going to show you how to do that.
02:31So here is an app in the App Store and you'll notice this little arrow here next
02:35to the Buy button which in this case is Free.
02:37This little arrow, it's a drop-down and in there you see this Copy Link.
02:41So I'm just going to click on that I am going to go back to the browser here
02:45and I'm going to paste it into the URL bar and you will notice there is the
02:50link right there and I am going to press Enter and that will bring up a page in
02:55the web browser and allow you to view it in the App Store just by clicking on this button.
02:59Something you've got to keep in mind here is that I'm using Safari.
03:02I normally use Firefox myself.
03:04Sometimes I even use Google Chrome, but I'm using Safari here, because for now
03:09anyway this is the only place where these links work.
03:12It's just a matter of how new all of this is.
03:14I'm sure it will work fine in other browsers in the future, but Safari actually
03:19looks out and sees that you have the App Store and it will link to it instead of
03:23iTunes when I click on this link.
03:25So when I click on this link, it brings up the App Store with that
03:29particular product.
03:30So these links currently only work in Safari, but that's better than not
03:35working at all and most of your market, being Mac users, are going to be using Safari anyway.
03:41Apple also provides product images.
03:43These are images of their computers.
03:46They have got an iMac, and MacBook Pro, MacBook Air.
03:49It allows you to put images of the products with the screen open and your
03:54screenshot right on the product there on your web site.
03:57So I'll be showing you how to composite your screenshots onto these product
04:01images a little bit later in this course.
04:04It's important when you use their product images that you don't modify the
04:09product image itself and it's important that your menu bar and the dock also
04:14match and I'll show you how to do this later in this chapter.
04:17When you're creating your metadata in iTunes Connect, Apple provides some
04:21guidelines on how to do this and these aren't so much rules as they are really,
04:24really great suggestions.
04:26The best one that you'll ever hear is "sell the sizzle, not the steak."
04:29This is something that Apple does famously and beautifully.
04:32If you look at campaigns like their famous 1984 commercial or the Think
04:37Different campaign, really any of their campaigns, they're not selling you a
04:41computer. They are selling you an experience.
04:43This is just a really, really great suggestion.
04:46So the way that they worded is to highlight the features that make your product unique.
04:51You don't need to tell people that it's a game.
04:52They can see that it's a game, but tell him how exciting the game is.
04:55Tell him what it is about the game that sets it apart from other games.
04:59The same is even if it's like a little utility, or something like Alfred that we
05:03were looking at in the App Store that basically does what Spotlight does, but it
05:07just does it so much better.
05:10Likewise in your metadata which is what people are going to search for.
05:13People aren't going to search for "game."
05:15So you don't even necessarily need to put game in your metadata, but you might
05:19want to put first person shooter or slider or puzzle or chess or backgammon or
05:26something like that. Or if it's a space theme.
05:29Use these kinds of things in your metadata, because you want to think about
05:32what people are searching for when they search, because that's how the metadata is used.
05:38When you're creating your web presence, think not just about your website, but
05:42also think about things like social media.
05:45Social media is becoming more and more important these days.
05:47You want to stay engaged with your users, you want to post frequent updates on
05:52your Facebook and your Twitter feeds, you want to blog frequently.
05:55These are the kinds of things that are going to drive traffic to your app.
05:59Most importantly in your web presence, when people send you support requests and
06:04bug reports, respond promptly and respond friendly.
06:07These are the things that get people to post negative feedback. Help your users
06:12to feel cared for to feel like they're being responded to and it'll help you
06:17prevent a lot of negative feedback.
06:18And a lot of negative feedback really kill your app in the App Store.
06:23So keep the mind that the great advantage of the Mac App Store is that Apple is
06:28providing direct desktop access to the entire installed base of OS X beginning with 10.6.6.
06:36They're also providing you a number of resources to help you direct traffic to
06:40the Mac App Store and to your app in particular.
06:44Apple's tremendous marketing success and experience lends a lot of weight
06:48to these guidelines.
Collapse this transcript
Creating promotional graphics
00:00Apple provides product images to help show off your app in its natural habitat.
00:05Images are provided for print and for web.
00:07Let's take a look at how to use them.
00:10We'll start by taking this Apple Assets folder in Chapter 4.
00:12I'm just going to make a copy of that so that we're not working with the originals.
00:16And I'll just rename this folder and call it "working."
00:22And you'll notice here that there is several images here.
00:25I'm going to stretch this out so we can see the entire file names.
00:29There is the Badge image and it looks like that, and there is the Desktop
00:35image and this has a space in the middle for your desktop version. Not the fullscreen version.
00:41This is the not fullscreen version of your screenshot and then there is the
00:44Full_Screen version here.
00:46The fullscreen version is actually a little bit easier to work with so we'll
00:49start with that and then we'll show you how to work with the Desktop version as well.
00:53So I'm going to bring this up in Photoshop by double-clicking on it.
00:57Now, these images are actually very Photoshop specific.
01:00I'm not sure that they're going to work in another image editing program.
01:03They use something called Smart Objects, which is a rather complicated file format.
01:10So you see here is the MacBook Air and there are different versions of these
01:14files for iMac, and MacBook Air, and MacBook Pro.
01:18And I chose the MacBook Air one because I think these are really pretty.
01:20I have one of these.
01:22And I'm going to double-click on the Smart Object here in the little gray area,
01:26and that will open up the smart object.
01:29Just select OK there and that gives us the space where we're going to put the image.
01:34And I'm also going to come back out here to the Finder and I'm going to bring up
01:37my screenshots that we made earlier. And let's drag the fullscreen version of this up
01:43to the top, and just to select all with Command+A, and copied all the layers
01:49with Shift+Command+C. And then I'm going to come back here to my Smart Object
01:53and I'm going to paste that in and there we have it.
01:56You notice that it doesn't fill the entire space and so I'm going to make it
02:00fill the entire space.
02:01And because of the way that this layer is built there is probably several ways to do this.
02:05This is the way that I'm doing it.
02:07I'm just going to drag out a guide here and let it snap to that zero place and a
02:11guide here and let it snap there and do that on all four sides.
02:19And then I want to drag the image itself. I pressed a V there to get it in its Move mode.
02:25My fingers kind of know the parts of Photoshop that I use a lot and I always
02:28know what they're called.
02:30Now I'm going to press Command+T to get these little sizing things and I'm
02:34going to hold the Shift key down while it sizes so that it keeps its aspect
02:37ratio, and grab it all the way the end here now.
02:40This MacBook Air model is the 16x10 and I know that is a 16x10 image and
02:46that works really well.
02:47I believe the iMac version is a 16x9 so you need to get a 16x9 screenshot.
02:53Now I just double-click in the middle, and it commits that resize and Command+S
02:59to save this Smart Object.
03:01And I'll close the Smart Object and you see we have our completed composited.
03:07This is the MacBook Air. You notice the little shine is coming over the screen.
03:11That's because of the way the magic that they did with the layers and the Smart Objects.
03:16Somebody who really knows how to use Photoshop put this all together.
03:19So this is very easy to do and it comes up with the beautiful result and you
03:23can now save this for web. You can resize it into different sizes.
03:27It's got the little shadows there that will come up nice on different
03:30colored backgrounds.
03:32It's all very, very beautiful.
03:33So I want to close this one.
03:35I'll go ahead and save that and we'll go ahead and open the Desktop version.
03:43And you notice this has an area there for you to put your desktop image.
03:47Our image isn't going to fit in there and you'll see what we're going to do about that.
03:50Let's go ahead and grab our image.
03:52I'll put this back down here and we're just going to copy this layer there.
03:57And we'll open up the Smart Object and this actually has several layered Smart
04:01Objects that we're going to get to.
04:03You'll notice that it's got a Smart Object for the screen here.
04:07It's got another one for the dock icon down there and another one for the
04:10reflection that's actually automatically updated, when you update the dock icon.
04:14So there is a lot of stuff inhere.
04:16I am going to open up the one first for this screen area and you'll notice that
04:20when I paste my thing in there, it doesn't work very well.
04:23It doesn't fill up that entire space.
04:25So if I save this and close it you'll see, it's got this gray area behind it.
04:29So that's not going to work at all.
04:30I'm just going to turn that layer off and I am going to go ahead and paste it
04:34directly on the screen here.
04:36And I'm going to just hold down the Option key and drag it around to make a
04:42couple of copies of it.
04:44And so we've got a nice layout that's going to fill up a bit of the screen.
04:48And I'm just select all these layers I just created and merge them together
04:52and then drag this to the middle of the screen and let it snap and there we
04:58have a nice little layout of our app.
05:00There is a couple of other things we need to do and we need to make this not say
05:03Finder up here and this is really kind of beautiful.
05:06I am going to zoom in. I press Z to get the little Zoom tool and I am going to
05:10say Actual Pixels and then just scroll up here.
05:14And this is a text layer.
05:16You see it's got the little T there.
05:17So I can just double-click on Finder and just change the word Finder to say BWDemo.
05:24And you can actually edit all of these. These are all in text.
05:27So now it looks like really running our app and the final thing we want to do
05:31here, and Apple actually requires this, is to open up that Dock icon.
05:35So I want to double-click on that Smart Object and I'm going to grab our icon here.
05:43I'm just going to take this 512 version and open that in Photoshop.
05:48And there it is and select that and copy it and paste it inhere and then resize it.
05:57There was Command+T to get these little resizing things.
06:00And drag it down to the middle.
06:03Actually I am going to drag it all the way down to the bottom because I know
06:06how this is being used.
06:07Because that will the little shine look really nice on the dock and it actually
06:11does that anyway when it lays it on the dock.
06:12It brings it all the way to the bottom.
06:14So I'll double-click on that, turn off this blue background, Command+S to save,
06:20close this, and go ahead and close our icon there too.
06:25And there we have-- I want to just zoom in here. Actual Pixels. And scroll down
06:31and you see the reflection comes up just right and it just automatically does all of that.
06:37So we now have this fully composited image of the screen and when I save this
06:41and close it, there is our MacBook Air.
06:45It's got the shine across it, it's got our icon, it's says BWDemo there, it's
06:51all just exactly perfect.
06:53So I'll go ahead and I'll save this and close it and we are done.
06:59We now have a version with our windowed application and a version with our
07:06fullscreen application.
07:08Apple provides these beautifully crafted easy-to-use product images for you to
07:12use in your marketing materials.
07:13Of course, they are a little bit Photoshop specific so you might actually need
07:17Photoshop if you don't have it to be able to use these, but these images provide
07:21a beautiful view of your app at work and you can place that on your web site or
07:25you can use it for your print materials.
Collapse this transcript
Conclusion
Goodbye
00:00In this course, my goal was to give you a good understanding of the process of
00:04submitting and managing an app in the Mac App Store.
00:08I've covered the App Store review guidelines to improve your success in
00:12having your app accepted.
00:13Apple's human interface guidelines to improve the quality of your app via
00:18bundle, graphical assets, Apple's marketing materials, so that you can
00:22successfully submit your app to the Mac App Store and manage your up once it's in the store.
00:27I strongly suggest that you get familiar with the Mac Dev Center.
00:31Apple has provided a great deal of documentation not just on the App Store but
00:36on Mac development in general.
00:38The Mac App Store represents a marvelous opportunity for Mac developers, large
00:42and small, to have direct access to a huge market of Mac users.
00:47I hope this course has helped you to have better success in the Mac App Store,
00:50and to take full advantage of this great new way to bring your Mac app to market.
Collapse this transcript


Suggested courses to watch next:

iPhone SDK Essential Training (2009) (6h 52m)
Simon Allardice

Objective-C Essential Training (6h 35m)
Simon Allardice



Are you sure you want to delete this bookmark?

cancel

Bookmark this Tutorial

Name

Description

{0} characters left

Tags

Separate tags with a space. Use quotes around multi-word tags. Suggested Tags:
loading
cancel

bookmark this course

{0} characters left Separate tags with a space. Use quotes around multi-word tags. Suggested Tags:
loading

Error:

go to playlists »

Create new playlist

name:
description:
save cancel

You must be a lynda.com member to watch this video.

Every course in the lynda.com library contains free videos that let you assess the quality of our tutorials before you subscribe—just click on the blue links to watch them. Become a member to access all 104,141 instructional videos.

get started learn more

If you are already an active lynda.com member, please log in to access the lynda.com library.

Get access to all lynda.com videos

You are currently signed into your admin account, which doesn't let you view lynda.com videos. For full access to the lynda.com library, log in through iplogin.lynda.com, or sign in through your organization's portal. You may also request a user account by calling 1 1 (888) 335-9632 or emailing us at cs@lynda.com.

Get access to all lynda.com videos

You are currently signed into your admin account, which doesn't let you view lynda.com videos. For full access to the lynda.com library, log in through iplogin.lynda.com, or sign in through your organization's portal. You may also request a user account by calling 1 1 (888) 335-9632 or emailing us at cs@lynda.com.

Access to lynda.com videos

Your organization has a limited access membership to the lynda.com library that allows access to only a specific, limited selection of courses.

You don't have access to this video.

You're logged in as an account administrator, but your membership is not active.

Contact a Training Solutions Advisor at 1 (888) 335-9632.

How to access this video.

If this course is one of your five classes, then your class currently isn't in session.

If you want to watch this video and it is not part of your class, upgrade your membership for unlimited access to the full library of 2,025 courses anytime, anywhere.

learn more upgrade

You can always watch the free content included in every course.

Questions? Call Customer Service at 1 1 (888) 335-9632 or email cs@lynda.com.

You don't have access to this video.

You're logged in as an account administrator, but your membership is no longer active. You can still access reports and account information.

To reactivate your account, contact a Training Solutions Advisor at 1 1 (888) 335-9632.

Need help accessing this video?

You can't access this video from your master administrator account.

Call Customer Service at 1 1 (888) 335-9632 or email cs@lynda.com for help accessing this video.

preview image of new course page

Try our new course pages

Explore our redesigned course pages, and tell us about your experience.

If you want to switch back to the old view, change your site preferences from the my account menu.

Try the new pages No, thanks

site feedback

Thanks for signing up.

We’ll send you a confirmation email shortly.


By signing up, you’ll receive about four emails per month, including

We’ll only use your email address to send you these mailings.

Here’s our privacy policy with more details about how we handle your information.

Keep up with news, tips, and latest courses with emails from lynda.com.

By signing up, you’ll receive about four emails per month, including

We’ll only use your email address to send you these mailings.

Here’s our privacy policy with more details about how we handle your information.

   
submit Lightbox submit clicked