Pre Requisites to start development for windows phone Mango - windows-phone-7

I am an android developer and now I am trying to learn Mango too. What are the SDK, system requirements, IDE required to start development?
Also I am from a Java background so I know that apps for windows phone can be developed using C#. So please guide me how to set up a development environment and start development on Mango.

Everything you need to know is right here at Microsoft App Hub. Click on "Download the free tools. Get started now."
An important thing to know is that you have to be registered with App Hub which takes some time (they will be checking your ID) and costs some money (99$ the last time I checked). You need this to debug on your device and to publish to the Marketplace.
For you as an Android developer the Windows Phone Guide for Android Developers will be helpful.
The Channel 9 jump start sessions are also quite good as well as their training course for beginners. Apart from that there is plenty of information in the web right now and the MS documentation and tutorials are really good. Keep googling, you'll find them.

Regarding the xp question, I think the emulator requires at least Windows Vista, so if your employer limits you to xp, you are out of luck (in this respect also :-)

Related

Corporate apps for Windows Phone 7?

Apple has a corporate developer program with an elevated licensing cost, does Microsoft provide such a service for Windows Phone 7 developers?
This was asked at a recent MS event. You can assign (I think 5) phones to developer unlock them, then load application directly/bypass the marketplace.
Also, there were talks that they are hoping to soon allow beta/redemption codes to allow limited deployment of your application to non-unlocked phones, bypassing testing/marketplace acceptance.... But I do not know the status of this.
The best thing you can do at the moment is develop your application as normal and have a password/login screen at startup. This is a horrible approach, but it does work.
At the moment, the phone is very much targeted towards consumers.
I'm not sure what is provided in the Apple Enterprise version, but so far Microsoft only has the one registration process and no private app distribution: you can distribute apps on the market to everyone, or by giving your xap file to people with dev-unlocked phones, nothing in between.
The official line is NO, not yet.
Windows Phone 7 was created, first and foremost, for consumers, not enterprise customers.
That being said, LOTS of people are asking for this and Microsoft have said they will address this in the future. No timescales or details have yet been announced yet.
This will likely be related to the way that beta testing and home brew distribution are implemented. (Just my assumption.)
I don't know why I can't just comment on another answer in this thread, so my apologies for placing these remarks in an answer.
I think MS needs to really make this happen since it could be the saving grace for WP7. While I personally feel that my experience with WP7 and my Samsung Focus have been just as good or better than that with the second-gen iPod Touch that I have, there are a lot of people who aren't convinced. For better or worse, it really is the ecosystem that matters and MS has that within the corporate world.

WP7 Application deployment for presentation

How could I go about presenting a Windows Phone 7 application with a laptop?
Do I need to install Visual Studio on the laptop with which I will be making the presentation? I've read somewhere about a stand-alone emulator but I haven't found any info on how to load the app to the emulator (total MS-anything newbie here).
Thanks in advance!
If demonstrating via the emulator you'll need to install the tools including VS.
Assuming you have an actual device.
Using an actual phone and a webcam can help give people a better idea about what the app will look like.
If you're showing it to people unfamiliar with the phone then the fact that the UI is so different to what they may have seen on phones before is likley to be a distraction. If you have a real phone then you can better demonstrate your app in context and in comparison with the other apps on the phone.
Tip. Try and use a HD camera if possible as this will make it easier to see the details on the screen.

Running a Windows Phone 7 app on the desktop

I have an application for Windows Phone 7 that I need to bundle up and send to several doctors for a content review. Ideas on how this might be done? I can't expect the docs to install the full SDK, but if I could bundle the emulator with it that might work, or if there's an easy way to convert the app to a Windows EXE that would as well. All suggestions welcomed!
While the theory is that since it's SIlverlight it should just run on the desktop. Years of Compact Framework development have taught me that this theory is almost never correct and getting it to work is often a real chore.
Microsoft has not yet delivered a stand-along WinPhone emulator (no idea if they will, but they did for WinMo) so for now that option is off the table. Getting your end user to install the stand-alone emulator is a fair bit of work anyway.
To be honest, my experience has been that just doing a Camtasia capture of the developer screen while you step through the app is one of the easiest ways to get ideas across to these types of groups. No, the end result isn't interactive, so they can't clock on buttons themselves, but if you walk through the feature they want to see, you can usually answer 95% of the questions this way.
When you need to address that other 5%, my experience has been that it's easiest to just send them a physical device with the app installed.
If they are (or have ready access to someone who is) fairly tech-savvy, shipping a Virtual PC image of a PC with the emulator installed and the app installed on it sometimes works.
Dot NET code using MS libraries is partially upwards compatible and most runtime classes present on a mobile device are also available on desktop Windows (see MSDN docs for details). So create a copy of your source code, ask visual studio to create a desktop .exe from it, it'll tell you it can't for several reasons, and you will need to recode some sections of it, resize the frame window etc. to make it work.
If one is careful about what methods one uses, I have managed to actually use the exact same .EXE file on the desktop without problems!
You simply cannot present the application without the SDK, since Windows Phone 7 applications rely on a completely different subset of .NET Framework and require an emulator to run XAP packages. Although you might say that it's the same Silverlight, don't forget about Microsoft.Phone and derivatives - you need the SDK in order for those libraries to be properly handled.
Also, you cannot convert a WP7 application to a Windows executable due to difference in platform architectures.
What you could do is simply allow the doctors to test your application through TeamViewer or similar products.
i think a "killer app" for winphone7+silverlight would be a desktop browser based emulator. want to try the app? just have the store run the emulator in the browser. (yeah, lots of technical hurdles, limited multitouch etc, but it would be pretty slick!)

Non-dev-tools Windows Phone 7 emulation

In developing a number of WP7 apps, I have a need to show clients how the app will be when deployed. The clients are a) not in the same location as I am, b) not technical at all, and c) may not even be using a PC. The purpose is to demo, get feedback and make any needed changes.
I'm not finding any realistic options to just simply show them what it would look, feel and run on a Windows Phone 7 (using the ApplicationBar, etc.). I found this link - http://www.redmondpie.com/standalone-windows-phone-7-series-emulator-9140536/ - but it's rather hacky for me to ask someone to do to set up an emulator on their machine without also installing VS Express, etc.
Does anyone know of any links to an official emulator that can be run on a PC, has a simple install and can load WP7 apps?
Have you considered using a product such as Citrix GoTo. Clients do not need to be particularly technical to join such a meeting, you can then take them through a demo. This will cost you though.
A free alternative would be to set aside a PC running the emulator with your software loaded. Create a VPN for you clients to connect to and let them use Remote Desktop Connection to connect to the PC. They can then play around with it remotely.
Have you considered using SketchFlow? Although by default the UI is "sketchy" (sorry), you can apply styles to the controls you drop on your pages, including the very same styles that are used by Windows Phone controls.
If you use a Silverlight SketchFlow project, you can deploy the content to a web server and provide a link that can be consumed on any machine that will render Silverlight content...they can go through the navigation, provide feedback, etc.
Christian Schormann has a writeup on what is required to use it in the pre-release tools... http://electricbeach.org/?p=573
You should take a look at this: http://justinangel.net/WindowsPhone7EmulatorAutomation. I believe it will answer your question exactly.

Windows Phone 7 Samples

What Windows Phone 7 demo/reference applications have you seen which really made you interested in developing for the platform?
I know of Scott Gu's Twitter example and Foursquare. Also see here for MIX10 demo apps.
Other than developing games and re-creating functionality already present on other mobile platforms (iPhone, BlackBerry, Android), is there any good reference material and business benefits of developing for Windows Phone 7? Does the Silverlight dev environment really offer an advantage over what is already out there? My gut feeling is that this is definitely the case, but it will take some time for the platform to establish itself, if it does.
You can find a lot of examples and reference applications here www.reddit.com/r/wp7dev/ or search using the hashtag #wp7dev on twitter (full disclosure - some of my examples appear there).
There a examples of what people are openly working on, but one can assume it is a lot more - hopefully this is useful, as it shows what can be done, or is being done on the platform.
As a novice developer, other phone platforms came with a lot of overhead required to build even the simplest application. The fact that XNA will be available for game development is a huge thing for me, it means I can create simple games for me and my friends without having to spend time learning a new language or setting up awkward SDK's and deployment settings.
More advanced developers may scoff at that, but development tools that are already being used that can work right out of the box for the intended platform is important for the hobbyists. I think this will open up a huge arena for homemade games and apps just like XNA did for 360 development.
It should also help sales. I will buy a Windows 7 phone because of this, and I can imagine others will do the same. As it stands, I am going to port my existing XNA games over so I can play them on the go. It will be cool to show people at the office, airport, etc. projects I have made right on the spot, and even give them the option to play if they have the right hardware.

Resources