Mobile TradingPosted: 2012-04-19 Filed under: market, screenshot | Tags: ajax, android, api, c2dm, html, opera, sdk, xml 6 Comments
The Procyon Holdings (PROHD) name is expanding again as we push out into another development area — the Android framework. When I abandoned my BlackBerry, the choice to move to the Android platform was an easy decision. Market saturation, the development community, and fluidity between devices make this platform shine.
I’ve been having a few end user problems with the current iteration of our trading website. First, the native Android Gingerbread browser lacks SVG support, an issue that has bewildered me since I read about it. I can solve this issue by using another browser such as Opera, but I would like to use the native one.
Also working with a HTML + Ajax website on a device with a touch interface feels like you are not getting the full user experience. I want to scroll down lists with my finder, click and hold to expose options, and speed around menus.
We had to expand our design and create a few new pieces to get data to the mobile world. New items include the creation of a daemon to simply database population, exposing data via XML, and working with an existing library to enable Push notifications.
The Daemon runs on our server, periodically pulls transactions from the Eve API, and places that information in our wallet table.
Our previous design was that you would have to hit the transactions webpage and it would trigger an update. Getting a page to refresh on a desktop connected via broadband versus a mobile phone is quite the different experience.
Android has a framework called C2DM (Android Cloud to Device Messaging) which enables you to send lightweight push notifications to devices.
Our vision is that when a sell order clears, a large/special sale has occurred, or a significant milestone has been reached, we send a notice. This will be visible on phone’s Status Notification Bar and cause me to act if deemed important. I have been forgetting to buy or trade a particular item after the sell orders have cleared. Forget things — lose profit.
Getting data out of our database required the creation of a webservice to produce XML output from our wallet table.
Here is an example of the sale of one item in our XML feed:
<?xml version="1.0"?> <TransactionList> <Transaction> <transactionDateTime>2012-04-19 06:21:04</transactionDateTime> <typeID>21096</typeID> <typeName>Cynosural Field Generator I</typeName> <quantity>1</quantity> <price>1948939.91</price> <profit>147803</profit> <stationName>STATION</stationName> <icon>21096_32.png</icon> </Transaction> </TransactionList>
This screenshot is our first proof of concept. We’re able to get information from an XML feed, display it, and get/cache images from the Eve image server. Major credit goes to my trading and corporation partner James, who has been doing the development work and educating me on the Android framework.
There is a lot we want to do with the mobile version. Menus, tabs, charts, reports, and the ability to add items to a shopping cart/wish list are all things on the drawing board.
This project is our first exposure to the Android framework and after the initial learning curve, we might perhaps coolabrate with the Aideron Robotics team on Aura. So maybe some of our trading mechanics will make their way into the Aura application.
Must… be… beta tester….
looks nice, i also had to do the same thing,
Pull data from api, save to dbase for redisplay / run applications against dataset.
Ive long since given up waiting for your app, and started my own for my own use.
its a bitch building busniess objects from hand, but once done the cool stuff is easy,
So far im calculating the value of my total assets,
im also working on how id really like assets to be displayed in the eve game, as opppsed to the current way things work when you click the items tab.
theres a request for information in F&I in the forums, its much easier to have screen shots / images to display to get what your trying to say across.
slowly coding my way through the wallet & corp wallet object, and once done i have some cool ideas in how to use that data for things other than profit.
once i have that done i’ll let you know what it is i did / am going to do on an ongoing basis 😉
also have android, ive coded for mobile display modes, and as cellphone data is super expensive here, i just use wifi & particular website to view stuffs.
Question: market transaction list is cached for 1 hour, are you taking this into account when you poll eve api?
Im checking cache dates with all my stuff. So was just wondering if you where doing the same
[…] 3. Mobile Application […]
[…] 3. Mobile Application […]