So, I’ve finally joined the 21st century, and purchased a Samsung Blackjack. After waiting a two agonizing days, it finally arrived. Man, it’s a beauty!
I’ll spare you a review of all it’s features (this is covered in agonizing detail elsewhere), but there are a couple tidbits I’d like to share.
The Blackjack runs Windows Mobile 5.0 with the Messaging and Security Feature Pack. One of the neatest features that this supports is Exchange ActiveSync w/ Direct Push Technology. Fortunately, the company I work for has Exchange 2007 setup to push emails directly to smart phones, and this was the first thing I setup. Worked like a charm! Very easy.
Note: I know that Windows Mobile 6.0 is out. If you have an application that runs Windows Mobile 6.0, then good for you! Unfortunately, the Blackjack is still on 5.0, which is why this post is geared towards 5.0.
The second thing I looked into was how to setup a development environment that allows me to develop applications that I can deploy and run on my Blackjack. Turns out, it’s pretty simple.
My searches lead me to the Windows Mobile 5.0 Developer Resource Kit. This kit contains (almost) everything you need to develop Windows Mobile 5.0 applications for a SmartPhone and Pocket PC. I suggest you review the details surrounding the resource kit, and then download it and try it yourself.
As I said, my goal here is to setup a development environment and deploy a simple application to my Blackjack. In order to consider this a successful test, I don’t need the application to actually do anything except run. Here are the steps I took.
Note: while this is written specifically for the Blackjack, the following steps will (largely) work for any kind of SmartPhone running Windows Mobile 5.0.
Install all the prerequisites. I already had all the required prerequisites installed (e.g. Visual Studio 2005 and ActiveSync). I haven’t yet tried any of the optional installations.
Download the Windows Mobile 5.0 Developer Resource Kit. This kit has everything you need to get going.
Run the MSI and install the kit.
Once the kit is installed, run the Windows Mobile 5.0 Developer Resource Kit application. You can run this by clicking Start –> All Programs –> Windows Mobile 5.0 Developer Resource Kit –> Windows Mobile 5.0 Developer Resource Kit.
Click Install the Developer Tools –> Install the Tools, and then in the detail pane slide down and click Windows Mobile 5.0 SDK for Smartphone (or Pocket PC, if you prefer).
This opens up File Explorer in the folder C:Program FilesWindows Mobile 5.0 Developer Resource KitcontentDeveloper ToolsWindows Mobile 5.0 SDKs. From here, click Windows Mobile 5.0 SDK for Smartphone.msi or Windows Mobile 5.0 SDK for Pocket PC.msi.
Once the installation completes, Visual Studio will have been updated to include a new project type called “Windows Mobile 5.0 Smartphone” under “Visual Basic” and “Visual C#”. Open Visual Studio 2005, and click File –> New –> Project.
Select “Device Application” and click OK. Yes, I know the name and location are poor. Change them if you want; remember, this is just a quick test/demo.
The project template includes a Form1.cs file. The designer shows a form embedded in a phone shell. Drop a label on the form that says something (e.g. “Hello world!").
Make sure your Blackjack is connected to your computer via your USB cable, and confirm that ActiveSync is able to communicate and synchronize with your Blackjack.
Samsung and Microsoft lock the Blackjack phone so that applications from unsigned publishers (like us!) will not run or deploy to the Blackjack phone. In order to resolve this, take a look at these two discussions: Application Unlock Your Blackjack and Samsung Blackjack tips and tricks (the latter has some great tips). I chose the method in the first link, and ran AppUnlock.cab. Worked great.
Go to Build –> Deploy DeviceApplication1. A dialog box asks you where to deploy your application. Choose Windows Mobile 5.0 Smartphone Device. Click Deploy.
The initial deployment will push a lot of CAB files used to run your .NET application. Make sure you approve all these cabs from your Blackjack. You will only have to do this the first time.
Since our application was very simple, we’ll have to browse to the executable through the file explorer. Click Start –> Applications –> File Explorer. Browse to Program FilesDeviceApplication1, and click DeviceApplication1.
As we have not signed the application, you will have to confirm that you want to run the application (I’ll write a post some other time explaining how to sign the application). Click Yes to continue.
Lo and behold, our application runs and displays “Hello World!”.
Yes, a completely useless and standard example, but it does serve to highlight how easy it is to setup a development environment that can publish applications to your SmartPhone (e.g. your Blackjack).
Now all I need to do is figure out a useful tool to build …
I hope this helps!