Hi Ian, Thanks lot for the detailed information, I will go through this and let you know if i need any clarifications. Thanks!
Thank you, Harsha On Fri, Mar 6, 2015 at 5:50 PM, Ian Dunlop <[email protected]> wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA512 > > Hello, > > Here is some more background info on why the app needs updated and > what I think is the main functionality required. > > The original app was designed for Android 18 although there are now > various SDK levels mentioned in various manifest files. Minimal > testing on other API levels was done, pretty much just the developers > phone. Targeting as low an SDK version as possible would be desirable. > Obviously not way back to Android 2 but something which allows a > reasonable percentage of devices to use the app > (http://developer.android.com/about/dashboards/index.html). 4.1 (SDK > 16) may be a good target. > The app uses various dependencies, listed in the build files. However, > these dependencies may be out of date and in fact may be unused by the > code. They need to be cleaned up. > The original app used a modified version of the apache http libraries > to talk to the taverna server code because the android sdk did not > include an up to date version and the latest versions clashed with the > android package namespaces. Android compatible versions of recent > versions of the apache http libaries are now available > (https://hc.apache.org/httpcomponents-client-4.3.x/android-port.html) > and I tried to use them in my 'fork' although testing was minimal. > The mygrid taverna server library > (https://github.com/myGrid/t2-server-jar) is used to access the > taverna server API. This library is not actively supported and in fact > may be too heavyweight for the app. It is not even clear what branch > is used. The taverna server API is just a REST based API over HTTP > (http://dev.mygrid.org.uk/wiki/display/tav250/REST+API) so some > refactoring is a good idea. It has to be able to handle talking to a > taverna server over HTTPS with a username/password that is not the > default taverna/taverna one. The HTTPS may have a user created > certificate which is not from a CA. > > Some of the UI relies on the sliding menu library by Jeremy Feinsten > which is included directly in the src rather than via gradle. The > provenance of the code is unclear, possible from > https://github.com/jfeinstein10/SlidingMenu. There may be a more > modern Android way to do that kind of UI design but I am not convinced > that the app needs it. > The PullToRefresh library by Chris Baines (possibly > https://github.com/chrisbanes/Android-PullToRefresh) is used via > gradle but again there may be a modern Android way to do things. > One of the important tasks is to ensure that the app can be supported > beyond the project end and that means relying on 3rd party libs that > are actively supported. > > Think of the current app as a demonstrator. I would be happy for the > it to be developed from scratch. There is no need for it to even be an > Android app, a web app would be just as good as long as the > functionality is there. In fact, that is a good way to target multiple > mobile platforms perhaps using some apache cordova > (http://cordova.apache.org/) for any native functionality required. > > The basic app functionality required (not an exhaustive list): > View workflows from http://www.myexperiment.org > Log in to http://www.myexperiment.org and view your workflows > Talk to required parts of taverna server API over HTTPS. > Run a workflow. Requires upload of input data and the workflow to a > taverna server instance. > Monitor workflow run. > View workflow run results. > Download results. > > Cheers, > > Ian > > On 05/03/2015 11:41, Harsha Siriwardena wrote: > > Hi everyone, > > > > My name is Harsha Siriwardena from Colombo, Sri Lanka - I am a > > masters student pursuing Msc in Enterprise applications from > > Sheffield Hallam university. I also work as a Mobile engineer > > specialised in android development & altogether I had experience in > > Android development over 2 years now. So I'm really interested on > > Taverna Android App enhancement project idea and would like to work > > on it this summer. > > > > Currently I have able to checkout the android source > > <https://github.com/ianwdunlop/tavernamobile> code and successfully > > ran the app in my android device. > > > > From: https://issues.apache.org/jira/browse/COMDEV-123 > > > > The code relies on some APIs from google and apache which have > > moved on > >> since then eg the https libraries which needs updated. The > >> project would be to: 1) fix the ssl/https parts and use the > >> latest version of taverna server 2) update the code to remove > >> some legacy dependencies and use the latest APIs 3) improve the > >> UI and responsiveness > > > > 1) & 2) are the most important bits with 3) being a bit extra > > depending on > >> how the first bits progress. > > > > > > I understand the objectives slightly, but could you please > > elaborate more about the project goals; may be about the > > deliverables, objectives & things like that, so that would helpful > > for me in getting started & also to write a good proposal. > > > > Thank you, Harsha > > > -----BEGIN PGP SIGNATURE----- > Comment: GPGTools - https://gpgtools.org > > iQEcBAEBCgAGBQJU+ZtxAAoJEPK45GBX+Cy5VhwH/0kwtEgOdZ1CaMw9nh/zMwzZ > lrQItNZgg3SknZqq6GV27zif9nNlh+wrYLdyu+Ms+bhy/TKSlzsAYtTHL40pg3qU > MB4tbib5TYxLa8vYOWs12NpMAHtQ7DiD6upoOJRtUMvWmkSneqvlD8sjEVeC4768 > a2BbI8nRoKFPI7WawPU8EgfX1JEo+i5+CVJ4Qe2cDG5fPs1CJ9IAqQp1bpi9i6ql > LO9KhYQo/vninCnDRT9mMb6ve2szKZpMMqmMVh/VMjyyVEt5RCgwZsFs55sWN0L/ > ih6n4TCeHr8XqcW4o7HpJtm3x4Yiwp5PYW4HjhH4lsaJFLKllroMIGreCkw2YIc= > =CZsf > -----END PGP SIGNATURE----- >
