
|
February 23, 2004
|
|
|
| |
|
The Sony Ericsson Developer Support deals with a wide variety of requests from its member customers. A lot of them are simple requests for information on a feature or Application Programming Interface (API) that is not well documented (or it is not immediately obvious where the information in the SDK documentation is located). Sometimes a customer has a query on how to use a particular API or just wants to see some sample code. And sometimes, in spite of an API being documented and its usage appearing to be quite straightforward, a piece of code just does not quite do what the customer expects it to... Degel Software Ltd., an Israeli mobile software development firm, Symbian Platinum Partner and Core member of Sony Ericsson Developer World, knows this better than some others. They provide technical solutions in the mobile applications market. Degel's business idea is to offer problem solving and project management, addressing the full development cycle from pre-project planning through to post-project follow-through, ensuring that projects move forward quickly and successfully. Degel Software is an experienced Symbian developer with a lot of in-house expertise. Nonetheless, they requested support with somewhere between 30 to 50 cases from Sony Ericsson Developer Support when they were developing Iambic's Agendus, an integrated calendar/tasks/contacts application, for the Sony Ericsson P800 smartphone. Andy Weinstein, senior application analyst at Degel says: "The support made a great difference to us during our development of Agendus. It is something that really differentiates Sony Ericsson from other vendors of similar products. The support staffs are excellent people, extremely technically skilled, quick, very supportive and a pleasure to work with." Sony Ericsson Developer Support provides the answers Accessing "To Do" category information iCategoryModel = CQikCategoryModel::NewL(); Once you have the category information in a CQikCategoryModel object, a wide range of methods are available for obtaining information, finding out about categories and how to work with them by searching for CQikCategoryModel in the SDK documentation. It is important to bear in mind that the built-in "To Do" application reads in the category model from its .ini file when it is first started and does not re-read (or write changes) until it is shut down. So if categories are added, removed, renamed or otherwise modified by a third party application, the changes may not be visible in the built in "To Do" application unless it is stopped and restarted in some way (for example by power cycling the device). And conversely, if the built-in application makes changes to category information, changes will not be picked up by your application. This means that modifying category information should be approached with great care. Obtaining an agenda entry's category Now, problem solving can quite often turn out to be a two-way exercise with input and experimentation from both sides, and so this time, it turned out that Degel was able to help Sony Ericsson. A series of experiments carried out by Andy led us to the discovery that the "built-in" agenda applications used the "Extended Categories" mechanism (normally only used to store details of user-defined categories according to the SDK documentation) to hold all category information, including that for the "standard" categories. An extended category is indicated by a value of CAgnCategoryType::EExtended being returned by CAgnCategory::Category() and the category is then identified by a text string returned by CAgnCategory::ExtendedCategoryName(). This text string is a textual representation of the category handle, which is stored as a number in the CQikCategoryModel referred to in the previous section. It is therefore necessary to translate between textual and numerical representations when using category information. "Sony Ericsson Developer Support was able to quickly resolve issues that would have taken us more time to figure out ourselves. Sometimes they confirmed the existence of bugs we'd found, leaving us to pursue alternate solutions, or even provided information, which was simply nowhere else to be found. This saved a lot of time and money, both for us and for our customer," concludes Andy Weinstein. For more information: | |
Copyright © 2001 - 2009 Sony Ericsson Mobile Communications AB. All Rights Reserved.