I came across this by accident the other day and thought it was really neat. So I wanted to share it to help karma balance my last post (more on that at the end). As I’m sure you know, Silverlight apps install automatically in the application menu. For XNA games, you need to use this handy workaround. Once you do, after you’ve deployed your app or game, it stays installed for the duration of the emulator session.
“Yes, yes, we all know that,” you say.
Ah, but did you know you could tile your app? Click the arrow in the circle on the screen that has the IE tile on it to bring up the apps menu (if anyone knows the official terms for these, post in the comments with a link to an official(ish) source and I’ll gladly correct it and credit you!). Then, left click and hold on your app to bring up the special menu that lets you pin your app (or delete it without restarting the emulator!). Choose the “pin to start” option. And voilà! Your app with its tile! See the screen shots below for a visual example:
For those of you wondering what a tile is and how you’re supposed to make one, this is a great time to go read the Windows Phone 7 Application Certification Requirements (PDF)and the UI Design and Interaction Guide for Windows Phone 7 (PDF). They’ll both tell you that you need a 173x173 png file (UI design says it can be a PNG or a JPG which is wrong – PNG only) but only the second one will tell you that your tile image should be using 256 dpi, which gives you a good idea as to how big it will appear in real life (but don’t ignore the first one – the content restrictions are in there as are the specifics about what you need to do if building apps using certain features like location or integration into one of the hubs or running under a locked screen, and it also tells you all the things you need to be ready for when the time comes for you to submit your app).
As to how to set the tile image:
- For XNA games, in Visual Studio, in the Solution Explorer, right click on your project and choose “Properties…”. Go to the “XNA Game Studio” tab and under “Tile Options” set the name of your game in the “Tile title:” textbox (which gets automatically written on top of your tile image at the bottom – my tile image doesn’t have the word “Slide Tiles” in it, that’s put their by the phone) and set the image file using the “Tile image: drop down menu and file selector dialog.
- For Silverlight apps, in Visual Studio, first right click on your project and choose “Add->Existing Item…”. Browse to your tile image, select it, and hit “Add”. Then, in the Solution Explorer, right click on your tile image and choose “Properties…”. Change the “Build Action” to “Content”. Then, in the Solution Explorer again, right click on your project and choose “Properties…”. Go to the “Application” tab and under “Tile Options” set the name of your app in the “Title:” textbox and set the image file using the “Background image:” drop-down menu (not that there’s no file browser here like there was for XNA hence the extra steps.
If you have any problems, check to make sure that your tile image’s “Build Action” (in its Properties) is set to “Content”. Note that you’ll have to actually clear your app from the emulator and deploy it fresh if it wasn’t set to Content the first time and you tiled it. But that’s easy enough since you can just go to the menu, click and hold, and choose “uninstall”!
A quick note on my last post. It was a little rough, but after a good nap I realized that I still love Windows Phone 7 and I will still be developing for it even if I don’t get a phone until a month after other developers: that should simply motivate me to be an even better developer and to create even better, more irresistible games and apps. I’m also very hopeful that the $99 certification fee thing was simply a matter of people getting confused by reading the cert docs for Windows Mobile, which, if you become a registered developer and login to your marketplace account, show up as links that it seems like you should read:
Those links all seem like they’re for the marketplace as a whole, but as you read them more closely, you’ll see that they keep mentioning Windows Mobile (not Windows Phone) and make other statements that fit perfectly within the Windows Mobile model and don’t fit in with the Windows Phone 7 model at all. I know some people who “know people” and they’re looking into it so I’ll post updates both to the original post and as a new post if/when I hear anything back on it. I could understand if Microsoft wanted to put in a cert fee in a year or two when the platform is well-established, but it’d just be silly to do that now when you want people creating and submitting as many great apps and games as possible. Anyway, until next time, good luck!