Susan IbachTechnical Evangelist
Ready to submit your first Windows 8 app to the Windows Store? Read this walkthrough to guide you through the process
Publishing your app requires a series of steps, we’ll try to walk you through them here!
Log in to the windows store
Submit your app
Before you can publish your app, you need a Windows Store account. Go to the Windows Store to register. Remember if you are a student you can get your Store account for free, you can find instructions on how to do that here.
After you log in to the store with your live ID (the one you used for your store account), go to “Dashboard”
If this is your first time logging in since you created your account, you may see a message that says “Before we can list any of your apps in the Store, you’ll need to verify your payment method. Verify your payment method.” When you created your account you entered credit card information. A small amount was charged and then reimbursed on your credit card to validate the card. You need to find your billing statement (or call your credit card company) to find out the transaction amount that was charged.
Select the Verify your payment method link and you will be taken to the Payment account verification screen. When you get there scroll to the bottom of the screen. using the information from your credit card billing statement, enter the amount that was charged or the 3 digit code from the transaction description and select Next.
Once you see the message saying “We successfully verified your payment account” You are ready to begin submitting your app!
From the top menu, select “Dashboard” then select “Submit an app” from the menu on the right.
Use the dashboard to see all the applications you submitted and their status in the store certification process. It can take as little as 2 days or as much as 2 weeks for an app to be published after you submit it.
Your app name is important! It is the first thing a customer sees when they find your app in the store. Be creative! Make sure you don't use names that are trademarked by others or those who own the trademark could ask to have your app removed from the store.
Enter the app name you wish to use and select Reserve App Name. If you get a message back informing you your app name is already in use, you will have to enter a different app name.
NOTE: The app name you enter here must match the Display Name in your app manifest.
TIP: You can just do this first step to reserve your app name before you have the code ready to publish. Your name will be reserved for 12 months.
Price - This is where you set the price of your app, and your free trial options. If you choose to charge for your app, pricing can start at 1.49 USD. The price you select may include a sales tax that the customer must pay. Your proceeds will be based on the pretax amount.
TIP: Apps with free trials of some sort usually get more downloads, you can either limit the duration of the trial, or in your code you can limit the features available on the trial version. Use the license Information class to determine if a trial has expired, or if a user is running a trial version. You can find more information about handling trials in your code here.
Markets - Select the countries where you want your app to be available. Selecting a country does not guarantee your app will be published there. There is some content and features that is restricted to certain regions, you could be using a feature that is not available in a particular region yet. You might want to consider the primary languages spoken in a particular country when deciding which countries you select.
TIP: When publishing a game, the countries Korea, South Africa, Brazil, and Taiwan require a game to be rated by a rating board and certified to prove the age rating of the game. If you do not have certificate files to prove you have completed that process, make sure you do not select those markets or your app will fail certification.
Release Date - If you want your app to be published as soon as it is certified select the first option.
Category - Now, select the category that best matches your app, this will affect where your app will be listed in the store, so consider your choice carefully. If a Windows user was searching for an app like yours in the store, which category would they choose to search? It's important to make it as easy as possible for users to find your app in the store. Picking the wrong category can also result in failing certification, because the testing team may not feel the category is appropriate for your app.
Hardware requirements – If your app has minimum RAM or DirectX requirements, you can specify that here.
Accessibility – Only select this check box if you have gone through all the accessibility guidelines and tested your app to ensure it is accessible. Accessibility includes testing for users with low vision or screen readers.
You only need to complete this section if your application supports push notifications (often used to update tiles), connect services such as SkyDrive and Single Sign-On, or in-app purchases. In app purchases is a popular way of making money with apps, the app is free, but a user can make in app purchases improve their app experience. For example, there are games where players can purchase weapons or armour.
If you have not implemented any of the above features you can just leave all the fields in this section blank.
This section is to describe the audience for your app and upload your rating certificates. If you can't decide between two age ratings, for example your app has content you feel is suitable for 12 and older, but requires an account that can only be created by users 16 or older, choose the higher age rating. Some countries requires will also require that your app be rated through a ratings board, especially for games. So check the list to see if a market you selected requires a rating certificate. If you try to publish to a market that requires a rating certificate and you do not provide the certificate file, your app will fail certification.
You must declare whether your app calls, supports, contains or uses cryptography or encryption.
There are US regulations regarding the exporting of technology that use certain types of encryption. Apps in the Windows store must comply with these laws because the app files can be stored in the US. These rules apply even if you are a developer in Canada selling apps in Canada through the store. So if your app is doing some type of cryptography or encryption you should read up on the regulations to see if your app requires an Export Commodity Classification Number (ECCN).
Now it's time to upload your app to the Windows Store. But there are a couple of things you need to do first:Build your package and run the WACK test.
After your package is created, you are prompted to launch the Windows App Certification Kit. This will run your app through a series of tests to chefck for issues that could cause it to fail certification. While it is running you will see the app occasionally launch and close. Do not interact with the app while the WACK test is running.
To start the WACK test select Launch Windows App Certification Kit. This process can take 10 minutes or so. You will know when it is complete because you will see the test summary page informing you if your app passed or failed. The results window does not automatically appear in the foreground, so you may want to occasionally check your task bar and desktop to see if the test is completed..
If your app failed, select “Click here to view full report” then investigate and resolve the issues that caused it to fail, then create a new package and try again. If your app passed, you are ready to upload the package to the store.
Once your package is created you will find a new folder called “AppPackages” inside your application folder. Inside the “AppPackages” folder is a file that ends with “.appxupload” extension. This is the file you will select when you upload your app.
If you made changes to your app and rebuilt the package, make sure you pick the most recent app package, the version number in the package file name or the date created can help you identify the most recent package(s).
Go to the Packages section in the application submission and then drag your package(s) to the app submission page. (remember if you chose to make separate builds for x86,x64 or ARM you will have multiple packages and you will need to upload all of them to the store.)
You will know when your package is uploaded because you will see it listed as an uploaded package.
App Description - This is where you describe what your app does and this is what users will see when they look at your app in the Windows store. If you want your app to be downloaded by a lot of people, make sure to take time to write a good description. Take a look at the descriptions of similar apps in the store, how will your description stand out? Make sure the first couple of sentences grab their attention. Make sure you have a short list of your app's best features. If you offer a free trial, this is a good place to explain how the trial works. There are some good tips on writing your app description here.
TIP: If your app will require anyone to log in to complete certain tasks, you must mention that in your description or you will fail certification.
Screenshots - After you add the description of your app, you will need to upload images of your app including a logo that the will be used to feature the app.
If you don’t have these images already, you can create them using the simulator in Visual Studio. Change the launch option to Simulator using the drop down key in the menu.
When the app launches, on the right side of the simulator is a button with a camera icon which will let you to take a snapshot of the screen and put it in your clipboard. Then you can open an app such as Paint paste it and save it as a .PNG file. If your image is larger than 2 MB you may have to use a tool like Paint .NET (which you can download for free) to save it at a lower resolution. You can’t just resize the image because it must be at least 1366 x768 pixels (landscape) or 768X1366 pixels (portrait).
Keywords – If someone was searching the store, what keywords would they use to find your app? Specify these as keywords to help users discover your app.
Copyright and trademark info – this is a mandatory field where you specify the copyright information for your application. Basically this is where you get to say, whose app is this.
Promotional Images – If you have a great app, make sure you include some extra images so your app has the potential to be featured in the store! Being featured always results in more downloads, so if you’ve done something amazing, make sure to include all the promotional images so your app could be highlighted!
Website – If you have a website for your app or other apps you have built, you can include a link to it here
Support Contact Info – you must provide a way for users to contact you if they have problems with the app. An email address, or a link to a website with a Contact Us option will suffice.
This is a place for you to add any notes you wish to share with the people who are testing your app for certification. For example, if your app requires a login to an online service, you must provide the login information for an account the testers can use. If your app is only intended for a limited audience, it is good to mention that in notes to testers as well, because your app can be rejected because it does not appeal to a wide audience. So, if you are making an app for a specific audience, make that clear in the description and notes to testers. The information you enter in this section is not seen by users of the app, it is only seen by the team who tests your app to see if it is suitable for the Windows Store.
After you have completed all the sections you should see a checkmark beside every section. If there is a section without a checkmark, go back to see if you either missed a mandatory field, or you have a field entered incorrectly.
If every section is marked as complete you can now select Submit for Certification.
Congratulations! You have just submitted your app to the store!
Once you submit your app, it will take up to 2 weeks to get certified, you can track the progress of your app in the main dashboard. You don’t have to keep coming back here to check the status. If you fail certification, you will receive an email and a detailed error report explaining why it failed so you can correct any errors and resubmit. If you pass certification, you will receive an email with a link to your app in the store!
The Windows team has created this great checklist to help you prepare and organize all the required info to make it easier to enter the info when you submit an app.
If you are a Canadian don't forget to register for the Developer Movement to see if you can get rewards for your app!
One of the most common reasons Windows 8 apps fail certification is lack of a privacy statement, this blog explains when you need one and gives tips on how to do it.
With the Developer Movement rewarding you for publishing your apps, you are probably all psyched to submit your app to the store. Here’s a little something to help you pass certification on the first try.
Windows 8 Certification requirement 4.1.1 states
Now most of us building apps read that and think, hey I’m not collecting anyone’s email address or phone numbers with my app so I don’t need a privacy statement. Then you submit your app for certification and it fails! Why?
Personal information includes: Webcam snaps, Audio/Video recordings, Photos, Documents, Contacts, and so on. So if you are using the webcam to take pictures or creating a document that access contact information or users files you need a privacy statement.
Personal information also includes: IP Addresses. That means if your app has the ‘internet client’ capability enabled in your app you are going to need a privacy statement. By the way, the default templates in Visual Studio include the ‘internet client’ capability, so unless you change the default manifest, you will need a privacy statement.
According to Windows 8 certification requirement 4.1.1
CTE Solutions is an app created by a training centre to help people find courses.
“This application does not collect or share any personal information. Your IP address (and related data provided by the operating system when making a web request) may be logged by the Internet-based servers (controlled by CTE Solutions) that provide the data used by the application.”
The Microsoft game Wordament which has you log in with a userid to play the game and posts high scores uses the Microsoft Online Privacy notice found here.
We have a windows 8 resources page where we continue to add content and blogs we think can help you here.
Anyone can build an app, that is the truth, but what’s should you try for your first app?
If you sat down this weekend and took 3-4 hours you could build an app for Windows Phone or Windows 8. That is the honest truth! You download the tools here (windows 8) or here (Windows Phone), you find a getting started guide here (Windows 8) or here (Windows Phone), and you are off!
Okay an app you build in 3-4 hours isn’t going to be the most awesome app ever, but it gets your feet wet, and gets you through the first hurdles of installing the tools, figuring out the development environment, and the steps to publish. That said, your first app can be simple but useful. I have used a flashlight app to find my way back to my tent when out camping and you can’t get much simpler than that.
Don’t forget, regardless of whether it’s for Windows 8 or Phone, if you are in Canada, it can still qualify you for rewards at Developer Movement!
If you don’t have an app idea, think of the things you have done on your laptop or phone in the past few weeks and ask yourself could an app do make that easier? Here are examples of tasks I did in the past two weeks where a simple app on my phone or laptop could have helped
If you still can’t come up with an idea for your first app, another option is to take a template and modify it to get you started. Once again, this helps you get past the basic hurdles of downloading and installing the tools, getting comfortable with the development environment and platform, and the publication process. Keep in mind templates are always provided as-is with no guarantees or warranties, but they can be great jump-starts.
Windows 8 templates
Not enough developers take the time to learn the platform and the design guidelines for the platform, such as the Search and Share Contracts, or Snap view in Windows 8, or basic rules like put your buttons at the bottom of the screen on phone apps (so your hand doesn’t cover the screen when you press a button).
As a result you see simple apps that although functional, lack polish and don’t really shine. Even a simple app can embrace good design! Take the Chuck Norris facts app on Windows 8. I like Chuck Norris facts, they amuse me, but why didn’t the developer let me use swipe to move from one fact to the next instead of making me bring up the app bar and tap next? Why didn’t they implement a Snap view that uses a bigger font size so I can read it? Why not a live tile with a randomly selected Chuck Norris fact? How about Search so I can findmy favourite Chuck Norris facts? I still installed it, but I would appreciate a better version! Yes, adding more of these features will add more time to your development time, but the result will be a more polished app, and more skills you can re-use for that awesome app idea you build next!
If you think learning these new features is too complicated, how about some code examples you can re-use?
At our WOWZapp hackathon, we had a developer who had never built anything for a mobile platform, and had never coded C# or XAML. She wanted to build a Windows 8 app. After a couple of false starts she finally settled on an app that would let you look up Windows 8 shortcuts. This is simple, but very useful! Not everyone has touch on their laptops, and so keyboard shortcuts make life easier, but I always found myself going to a blog post to look up a particular shortcut. She didn’t just build a screen that listed the shortcuts, she also implemented a snap view that is easy to scroll and view, and, she implemented Search. The Search is great, because that means when I am in another app or even in the Desktop and can’t remember a shortcut, I just search her app to find the keyboard shortcut I need. You can check out Donna’s app in the store here. I think it’s a great example of a simple app, that is useful, and shows some good design!
Hopefully this gives you some ideas for that first app, I’ll blog soon about taking the skills you learn from your first app and using them to build something bigger and better!
When you build a great web site, you need to plan your asset loading so that users don’t get frustrated and leave your website. When you build Windows 8 apps, loading assets is something you have to consider carefully because to publish an app to the Windows 8 store, your app must launch in 5 seconds or less on a low-power computer according to certification requirement 3.8. Asynchronous code is always a good strategy, so is displaying your own splash screen and showing a progress bar as your assets load so the user understands that the program is running and your app is loading assets.
The PreLoadJS library includes (this list is not exhaustive)
There’s a couple of nice demos, such as the preload queue which shows a progress bar that you can check out as well. Download PreLoadJS and find this and other helpful libraries at the CreateJS site. Don’t forget when you publish a Windows 8 app in Canada you can get rewards with Developer Movement, and if you are a student you could enter it in Imagine Cup!
With the new wallet feature in Windows Phone 8 I can’t wait for developers to start updating their apps so I can get rid of some of the endless cards and coupons in my wallet!
How many membership cards, credit cards, and coupons are you carrying in your wallet or purse? I have four sections of my wallet for cards: personal credit and bank cards, work credit cards & id, shopping cards, and travel membership cards. As a result my wallet is getting pretty thick and I have become very choosy about any additional frequent whatever clubs I sign up with because I just don’t have any room left in my wallet!
When I finally had time to sit down and really look at the wallet feature in Windows Phone 8, it took me a minute or two to understand how it worked. Now I’ve had time to read a bit more, I can’t wait until apps start coming out leveraging this feature.
Let me explain it from four perspectives, you can just read the perspective that interests you.
It’s Friday and I need to do some shopping for my son’s birthday. My first stop is ABC Books. I find a few good books and when I get to the cash they ask me if I have my ABC Books rewards card. ABC Books has a Windows Phone app that uses wallet cards. I pull out my phone bring up the wallet hub and show them the membership card from the wallet, they scan the code on the screen and I get my points, then I remember getting a deal from them a few days earlier. I swipe over to the deals and show them the $10 off purchases of $50 or more coupon, they scan the QR code on the page and I save $10. With my unexpected savings, I decide to stop and splurge on a little snack. I bring up maps on my phone and find two nearby coffee shops, YummyCoffee is advertising a deal for a free muffin when you buy a drink. I Share the deal with my sister in case she wants to join me and head out for a coffee.
As I sit sipping my coffee, I decide to start playing a new phone game I recently downloaded called Exploding Bananas. I’m enjoying the game, and after a few minutes I decide to buy the full version. I use the in app purchase capability which then prompts me for my wallet pin, I select my TrustMe Bank credit card to pay for the game. I click Buy, and now I can start playing the full version of Exploding Bananas.
If I have a phone with a secure SIM card and my bank has a Windows Phone app, I could have paid for my books using the phone as well with a tap much like you do with some credit cards, but support for the credit card payment with the phone will vary. The ability to tap to pay is dependent on a) the bank having a Windows Phone app, and b) my phone provider having secure SIM cards. This is a bit different from the Google wallet where the device itself must be secure. The advantage to the secure SIM model, is if you buy a new phone next year you already have a secure SIM that you just move to your new phone. But even without those features the wallet hub still cuts down on the thickness of my physical wallet by storing my membership cards and helping me store and discover coupons.
As a business traveller, I see huge potential in all those frequent traveler programs moving to Windows Phone. Imagine the possibilities if FlyWithMe airlines went all out with Windows Phone 8 support. I could go to the wallet hub, see how many frequent flyer points I have. Tap the card to go to the FlyWithMe phone app and cash in points to book a flight or request an upgrade.
The banks are among the companies that I hope are first to jump on the Windows Phone wallet wagon! Because if a bank supports Windows Phone 8 wallet, I can then use my credit card or bank card to make a purchase on my phone either through a phone app, or in person with secure NFC.
Online shopping is already a reality, why not allow me to do my online shopping on the go with my phone? With the wallet you can add in app purchase to your phone apps.
With the ability to show deals in maps, a casual customer looking for a lunch spot can find out about that special you have today and may choose to visit your business over another and they can share the deal with others
With the wallet, you can now have in app purchases. This makes it easier for someone to upgrade to the paid version of your app, purchase an add-on to your app, or purchase a service or product from your company.
Here’s a few good resources
If you want to see how wallet looks, there’s a nice video that gives you a great overview. If you are looking for more Windows Phone resources check our resource page and don't forget about the Developer Movement promotion that rewards Canadians for their apps!