This site is no longer active and is available for archival purposes only. Registration and login is disabled.

Smartphone SDK


Smartphone SDK

Postby Dan East » Feb 27, 2002 @ 11:36pm

Anyone install the smartphone SDK with eVC++ yet? I just wanted to make sure it wouldn't screw up my existing Pocket PC 2000 SDK.

Dan East
User avatar
Dan East
Site Admin
 
Posts: 5264
Joined: Jan 25, 2001 @ 5:19pm
Location: Virginia, USA


Postby Jim » Feb 28, 2002 @ 10:19am

User avatar
Jim
pm Member
 
Posts: 97
Joined: Feb 8, 2002 @ 5:03pm
Location: London


Postby Dan East » Feb 28, 2002 @ 1:19pm

User avatar
Dan East
Site Admin
 
Posts: 5264
Joined: Jan 25, 2001 @ 5:19pm
Location: Virginia, USA


Postby Dan East » Mar 4, 2002 @ 7:03am

I finally got around to installing the SmartPhone SDK. So far so good. The MS requirements of a 400mhz machine with 196 MB RAM are bogus. It runs fine on my 300mhz laptop with 128 ram, even with a dozen other apps running at the same time.

My first surprise is that it appears the SmartPhone does not have a touch screen. That is going to severely limit which apps will / can be ported across.

Dan East
User avatar
Dan East
Site Admin
 
Posts: 5264
Joined: Jan 25, 2001 @ 5:19pm
Location: Virginia, USA


Postby Dan East » Mar 4, 2002 @ 7:27am

Devices have a minimum of 8MB RAM included. One OEM is shipping with 8MB in their first phone. Available to an ISV is minimal, around 500k. Storage space (IPSM) is 24MB minimum. One OEM is shipping with 32MB. Of that, about 16MB is taken up by the Smartphone and applications, leaving 16ish free for applications and data storage.

What??? Only 500k Program Memory is available to 3rd party programmers? Is that a joke? They show a screenshot of Doom running on the SmartPhone (which looks doctored to me). Can Doom run with only 500k?

Minimum CPU speed that will be available in devices is 130MHz.

How is that so being that they are all using the StrongARM processor?

All OEMs are required to have four directional keys (up, down, left, right), an action key, a home key, a back key, a 12-key numeric keypad, two softkeys, a send key, an end key, volume up, and volume down. A voice record button is optional.

All user input is restricted to those keys. The SDK also includes a "light" speech recognition API, so that could be used as well. However the real usefulness of speech recognition is somewhat limited.

Here's another major blow ; MFC is not supported. That will really limit the porting of applications over to the platform.

eVB is not supported - no big deal there.

GAPI is supported.

Hmm. What's this? MIDI support?
WAVEFORMAT_MIDI
This structure provides the ability to play MIDI files within Microsoft® Windows® CE. This structure inputs MIDI information as a special WAV format.


Dan East
User avatar
Dan East
Site Admin
 
Posts: 5264
Joined: Jan 25, 2001 @ 5:19pm
Location: Virginia, USA


Postby » Mar 4, 2002 @ 7:47am

Isn't the Smartphone platform a different platform to that of PPC2K? Therefore it would seem reasonable to assume that they don't have the same minimum specification requirements that PPC2K devices have, so they wouldn't have to use ARM chips necessarily. The non-inclusion of a touch-screen isn't a major problem though, is it? We all used to run apps & games on our PCs, before the PPC era! :) The limit of 500k seems VERY weird though! That seems like a foolish step on MS's part, unless they have another method of allocating memory (even so, still kinda stupid).

I think there is a general confusion concerning 'Smartphones' in general. The media would have you believe that any multimedia-capable phone device is considered a smartphone, while Microsoft seems to limit the definition to devices running their 'Stinger' operating system. By that logic, any telephony device using PPC2K (O2 xda, Trium Mondo, SX45) is called what exactly?

By the way, IMHO i wouldn't suggest dedicating a lot of time porting or writing software for the devices. Microsoft may be a big hitter in the computing world, but when it comes to the Smartphone platform, none of the big phone manufacturers have even expressed an interest. Nokia, Sony-Ericcson, Siemens, Mitsubishi, etc have all announced their use of the Symbian (EPOC) platform (which does appear to be rather capable, but also lightweight). Looks like it might be the one industry that Microsoft doesn't have cornered! :)
User avatar
Xen Games
 
Posts: 475
Joined: Feb 8, 2002 @ 5:11pm
Location: London, UK


Postby Dan East » Mar 4, 2002 @ 8:10am

I'm just throwing out things of interest I find in the SDK docs.

Although it has advanced wireless data capabilities, Smartphone 2002 is designed to be a phone first, and the restrictions of a telephone form factor require a different approach to data display and navigation.

The Overloading (Press-holding of hardware buttons) could have a negative effects for gaming (imaging you're holding a fire button and the phone pulls up the phone book, etc):
Overloading Controls
Many OEMs overload controls by using the PRESS+HOLD KEY method. ...overloading controls is not an option for Smartphone 2002. PRESS+HOLD behavior is hard-coded into Smartphone 2002 and users cannot change this.


The Smartphone 2002 display is an LCD screen at 0.20 mm dot pitch. Supported resolution is 176 X 220. It can be grayscale or color. Orientation is portrait.

A touch screen is not supported on Smartphone 2002 for the following reasons:

Usability studies indicate that users expect to use telephone form-factor devices with one hand: a stylus is an added complication.


Oooh. That little plastic stick is so complex. Bill must've thought of that one himself.

The display dot pitch makes it difficult to support touch target accuracy. A lower display dot pitch is necessary to achieve high quality resolution on the smaller screen of the Smartphone 2002.

Palms have touch screens.

Removing a touch screen reduces screen brightness attenuation, power consumption, and device bill of material (BOM) cost.

Yeah, I'm sure the touch screen is a major factor in battery life.~ Now we're getting to the truth; "cost".

Without a touch screen, it is possible to build a better enclosure for the screen to guard against accidental breakage.

Then Pocket PC's shouldn't have them either. Who wants a broken Pocket PC?

The top 20 pixels of the Smartphone 2002 screen are reserved for the title bar, an always visible bar that provides application information and status.

I would hope it isn't "always visible" when GAPI is employed.

Smartphone 2002 supports cascading menus only to one additional level.

Navigation Principles
There are two main screens used for navigation: the Home screen and Programs. The user starts at the Home screen, and then uses Programs to navigate to an application. Another important screen is the Dialer or Call progress screen. This screen is displayed every time the user makes a phone call.

There are two main navigational buttons, the Home button and the Back button. The user can use the Back button to navigate to the previous screen, or press the Home button to return to the Home screen and start over.

Navigation within an application is achieved by drilling down into an application through list views, card views, and edit views.


The Home screen is basically the Today Screen on a Pocket PC.

Users may also choose to write Home screen plug-ins. These are small applications that can display information on the Home screen. For example, a plug-in may update regularly with stock quotes or display the daily horoscope.

What? Programmers write programs. Users use them.

Programs
Programs displays the top-level list of applications supported by the device. The first five applications in this list are those most typically used by users and are fixed in position. Other applications follow and the list of applications is numbered serially.


Microsoft gets the first 5 positions: Inbox, Contacts, Calendar, Internet Explorer, and ActiveSync.

Well, that's enough for now. :)

Dan East
User avatar
Dan East
Site Admin
 
Posts: 5264
Joined: Jan 25, 2001 @ 5:19pm
Location: Virginia, USA


Postby » Mar 4, 2002 @ 8:43am

Cool. 8) We're getting the Sendo Z100 in the shop by the end of the month. Looking forward to playtesting PQ, Wolf3D, etc! Yeah right, with 500k?! (Although certain people seem to always find ways to bypass the 'impossible' :D )

BTW I remember seeing a promotional video of the Sendo device at a Trade show earlier this year, and the device was running a movie player showing a trailer of 'Crouching tiger'. Obviously the movie data would be larger than 500k. Could this have been fake or is there another way of allocating memory? Is it just 3rd party developers who are restricted to 500k?
User avatar
Xen Games
 
Posts: 475
Joined: Feb 8, 2002 @ 5:11pm
Location: London, UK


Postby Dan East » Mar 4, 2002 @ 11:35pm

Well, now I'm upset. This morning I went to build some Pocket PC apps (first time since installing the SmartPhone SDK). The build goes fine, but then no matter what config is selected, eVC always launches the Pocket PC emulator and attempts to copy the binary over. Of course an error results when trying to copy ARM, MIPS, etc builds to the emulator. That's a pain. The catastrophic part is that I can no longer debug on an actual Pocket PC. So I rebooted with no effect, then uninstalled the SmartPhone SDK and eVC still wants to always use the emulator. So I'll try reinstalling the Pocket PC SDK.

Anyone else install the SmartPhone SDK and have this happen?

Dan East
User avatar
Dan East
Site Admin
 
Posts: 5264
Joined: Jan 25, 2001 @ 5:19pm
Location: Virginia, USA


arg

Postby bobman » Mar 6, 2002 @ 12:27am

bobman
 


Postby Jim » Mar 8, 2002 @ 10:34am

Dan, any luck getting the stinger sdk to work alongside the pocketpc sdk?

Want to install it but don't fancy having to re-install everything.

cheers
Jim.
User avatar
Jim
pm Member
 
Posts: 97
Joined: Feb 8, 2002 @ 5:03pm
Location: London


Postby Dan East » Mar 8, 2002 @ 12:12pm

No. I had a heck of a time just getting things back to normal after removing the SmartPhone SDK. I will say that I am still using the original Pocket PC SDK, and not the Pocket PC 2002 Windows CE.NET thing. The problem appears to be in the Platform Manager. I noticed that the SmartPhone SDK added a Windows CE.NET platform, in addition to the SmartPhone platform.

When I uninstalled the SmartPhone SDK an option appeared asking about uninstalling Platform Manager. I said no, because I thought it would screw things up further. I still had the same problem after uninstalling the SDK, so I looked through all the docs I could find. I finally found in the Installation Notes that if you perform an upgrade, you need to uninstall first and say Yes to the Platform Manager uninstall question. I tried reinstalling and uninstalling the SDK, and could never get it to ask me that question again. I tried everything I could think of, and uninstalled and installed every single SDK including eVC several times. I wasted an entire day on this. Finally as a last resort I searched the system registry and deleted every key I could find relating to eVC or the Platform Manager (BTW, there were dozens of entries, even after everything was "uninstalled" - good job on the cleanup there MS). After that I was able to install eVC and all my normal SDKs and it's worked fine since.

I haven't tried the SDK again since, because I was just trying to evaluate what the SmartPhone was about. The ability to properly build / debug for Pocket PC is absolutely critical for me.


While I'm talking about the SmartPhone again I will throw out some things. I am disappointed with the SmartPhone as far as the OS is concerned. From Windows CE 2.11 to 3.0 Microsoft has gone from one ditch to another with the OS. CE 2.11 was just like a miniature Windows 98 that fit a Palm-sized PC Screen. It had the start button on the bottom left, complete with clock and system tray. That was not really conducive to the small display. Then with Pocket PC MS over-did it and strived to be more Palm-Like, hence they removed things like the close button, and instead of combining all OS functions into one nice taskbar, they split it up so some things are on the top (Clock, Start Menu, Okay) while others are on the bottom (SIP, System Tray). A great deal of the Taskbar area was "wasted" because it only provided very basic functionality, and it made things more difficult for programmers since they "owned" a smaller amount of the display.

Now with SmartPhone MS has continued further into the ditch. The mantra that the device is a phone first, and a PDA second, is acceptable to a certain level. Yes, incoming calls should take precedence, and yes, the interface should be extremely simplistic for typical phone functionality. However, when a person wants to use it as a PDA things are no different than with a Pocket PC. The stylus / touch screen isn't a "complexity", it is a streamlined, fast method of user input and control. SmartPhones have displays that are even smaller than that of a Pocket PC. Yet a full 1/8th of the entire display is wasted to provide functionality for a mere 2 "soft keys". If they would have had 4 soft keys, then perhaps dedicating that area for soft keys would have been justifiable. Finally, the new memory model makes it extremely difficult to adapt existing Pocket PC programs, which are typically robust, powerful apps, over to the SmartPhone. Microsoft is finally getting a good base of developers and apps for their Pocket PC platform. So why didn't they make any real effort to help the migration of those developers and apps to the SmartPhone platform?

Dan East
User avatar
Dan East
Site Admin
 
Posts: 5264
Joined: Jan 25, 2001 @ 5:19pm
Location: Virginia, USA


Postby SM2002- keep that crap !! » Mar 8, 2002 @ 9:36pm

Some very good points there, Dan ! I've been wondering the same.

Oh, and true to Murphy's law, I totally messed up my Dev Box too, after installing the SDK (Reminds me of the Ce.Net preview)

MS: maybe try to get simple things like Installers going, before venturing to far ahead of yourself ?
SM2002- keep that crap !!
 


Postby Hosed » Mar 9, 2002 @ 8:51am

I think part of the problem is most of the mobile platform tools were developed out of house. eVC was done by a contractor that's also doing a backup version of CE.NET incase MS isn't able to release the inhouse CE.NET developer tools in a timely manner.

Oh, and just to give you guys an idea of how not simple MS has made installers, I worked on the .NET installer group and we had over 60 people working on just the installer. That's including Devs, PMs, Testers, etc, but still...
User avatar
Hosed
pm Member
 
Posts: 249
Joined: Jan 3, 2002 @ 2:51am
Location: Montana, USA


Return to Windows Mobile


Sort


Forum Description

A discussion forum for mobile device developers on the Windows Mobile platform. Any platform specific topics are welcome.

Moderators:

Dan East, sponge, Digby, David Horn, Kevin Gelso, RICoder

Forum permissions

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum