Debian Android application
Short description: An android app developed for use by Debian users. This app will provide mobility to Debian tools like PTS, BTS and UDD. This project is a result of my brainstorming over the idea given on Debian’s GSoC Ideas Page. After further discussion with the project mentor, Hans-Christoph Steiner, I have developed this proposal. I have decided on building this app using Android only instead of Phonegap because Phonegap apps are slower. My proposed way of solving this problem is to develop an Android application that contains three modules viz., PTS, BTS and UDD. This will be a native android app developed sticking to Android developer principles by extending support till Android 2.2 a.k.a Froyo. Additionally, this app will be developed by keeping Tablets also in mind so that the app suits best on tablets which are frequently used by many target users.
The application is on Debian wiki here.
I am Bhargav Golla, a Computer Science Engineering undergraduate student from India. I am an avid mobile app developer. I worked on Phonegap apps during GSoC 2012 with ApacheSoftwareFoundation and have developed many WindowsPhoneapps. I am also well versed with native android app development. I have developed Android app for ExotelTechcomPvt.Ltd. and it is being used by its clientele of over 2000 firms. My GithubAccount will provide much more details about my developer expertise.
Project title Debian Android Application
Synopsis: An android app developed for use by Debian users. This app will provide mobility to Debian tools like PTS, BTS and UDD.
This project is a result of my brainstorming over the idea given on Debian’s GSoCIdeasPage. After further discussion with the project mentor, Hans-Christoph Steiner, I have developed this proposal. I have decided on building this app using Android only instead of Phonegap because Phonegap apps are slower. My proposed way of solving this problem is to develop an Android application that contains three modules viz., PTS, BTS and UDD. This will be a native android app developed sticking to Android developer principles by extending support till Android 2.2 a.k.a Froyo. Additionally, this app will be developed by keeping Tablets also in mind so that the app suits best on tablets which are frequently used by many target users. Further details about flow in app and explanation of how I would be accomplishing the same are explained below.
- On the home page, a user can choose between PTS, BTS and UDD. This will be done using Android's List navigation.
The page containing PTS module will have a simple search box. Searching for a package will open a results page, where a user can select the package and/or favorite it. All favorite packages of a user are saved on Home screen. This is done using AndroidPreferences.
Clicking on a package name will open further list view with details like General, Versions, Todo, News, Bugs, Links etc. Clicking on any item will open its respective feed in a new activity. Swiping down the page with feed content will refresh the content. All these queries are made using PTSSoapInterface
- Second module BTS is dealt in a similar way. A user will be provided with a multitude of options through which he can search for the Bug he wants.
There will also be a report bug feature. This report will happen through email by following the format as described here
- The UDD module will have different data queries that will fetch details of Orphaned packages, Popularity Contest and other features as required.
Libraries to be used in app Firstly, to make the app suit latest Android Design principles, the compatibility library ActionBarSherlock is used. To refresh various feeds by staying on same activity, AndroidPullToRefresh is used. Using this library, we can refresh a feed by just swiping down on that page.
Project schedule: I have prepared a schedule that would help me in planning my work at GSoC to be a productive one for me and my organization. My schedule will be as follows:
- May 27 - June 16: During the Community Bonding period, I would acquaint myself with the various feeds that could help me in building the app.
- June 17 - June 30: Building Basic UI with Action bar and a homescreen that displays a search box for PTS. Different Search boxes will be kept in BTS page and UDD also.
- July 1 - July 7: Display list of packages in PTS and then different feeds specific to package.
- July 7 - July 21: Allowing User to favorite packages so that they get displayed on homepage of app.
- July 29 - July 31: Testing of the app that is done till then before Mid Term Evaluations and provide Mid Term Evaluation forms
- Aug 1 - Aug 18: Implementing BTS module using same process as PTS.
- Aug 18 - Aug 30: Implementing Bug Reporting feature using Email.
- Aug 31 - Sept 10: Addition of UDD section with Popularity Contest and Orphaned Packages feed. Addition of new features if necessary.
- Sept 10 - Sept 15: Testing the app for all possible test cases and making UI changes if any.
- Sept 15 - Sept 23: Writing Documentation and comments for code written.
- Sept 24 - Sept 27: Send Final Evaluation Forms and code.
Benefits to Debian: This application eases the process of accessing Debian tools like PTS, BTS and UDD. Reporting bugs can be done on the go and users needn't wait to gain access to a system to use Debian services. Provided the fact that Mobile users are growing rapidly, this application will become a great addition to all Debian users.
Deliverables: A fully tested android app's apk and its source code. The app will be ready to be hosted on Google Play for download by users.
Exams and other commitments: Currently I don't have any commitments during the period of SoC.
Other summer plans: Currently, I don't have any plans apart from SoC during this summer.
Why Debian?: I am student of Computer Science who firmly believes that one can gain great knowledge through practical experience. This drove me towards working on GSoC 2012 with Apache Software Foundation. The same interest is driving me towards applying for GSoC again this year.I chose Debian as my mentoring organization for GSoC 2013 owing to the kind of projects that are offered at this organization. I liked the interaction that happens in the community. I chose this particular project because I am interested in Mobile Application Development and am good at it. My experience with GSoC during the year 2012 made me aware of how useful an opportunity like GSoC is for a developer like me, and this would result in more dedicated work from my end. I feel that these qualities in me makes me a strong candidate who can successfully complete this project.
- Are you applying for other projects in SoC? Yes, I am applying to few other projects.