I am a relatively new Titanium Mobile user.
I started using Titanium because the possibility for developing (semi-)native applications for the most popular mobile platforms (iPhone, Android, Blackberry in the making) was very promising.
However, in the past monhts I began to lose my confidence in the platform, based on accumulated knowledge of its inner workings. I am not quite ready to abandon all hope yet, so I will ask several general questions, hoping that I have mis-understood something or there are other ways.
First, let me state my goals: I want to build an application infrastructure around Titanium. I need to achieve the following goals:
- Goal1. Be able to develop/deploy native UI on iPhone/Android client devices.
- Goal2. Be able to implement and expose server-hosted services in uniform manner, that can be easily consumed by the mobile clients mentioned in Goal1.
- Goal3. Goal1 and Goal2 must be achieved productively, with little overhead per new project.
>What have I done up until now:
- (Goal1) Obviouslu, using Titanium, I am able to create native interfaces for the target platforms
- (Goal2) I have chosen a common platform-independent protocol for communication: XML-RPC
- (Goal2) I have implemented a Java-XMLRPC bridge, which makes exposing pure Java services a breeze
>Going back to the point of this topic - my
PROBLEMS and QUESTIONS:
- Problem1. The iPhone XML-RPC client is very slow and takes up LARGE amounts of memory for heavier requests. I have tried to analyze the situation using XCode's instruments. I can see MANY objects of type TiDOMElementProxy and TiDOMNodeListProxy. Below you can find a screenshot of Xcode Instruments Leaks. It is made afted one (!) XML-RPC request was made returning around 100 serialized objects with their properties in XML:
(Please note that if we invoke the service only without working with the result, such objects are not created)
>So, here are some related questions:
>And a more detailed question:
And the logical question:
>Thanks in advance, Georgi
I'm working at quite the same thing as you! I implemented the JS-XMLRPC in my application. It works fine with creating a request (although it might be because there are quite few properties) - but processing a response takes forever. Did you find an approach to speed the whole thing up?