📜 ⬆️ ⬇️

VK Contest: Messenger for Android. How it was!?

Enjoy your day!

How many people want to do development for Android, but due to certain circumstances, everything still can not start (someone does not have time, someone is bored just to solve examples, laziness, uncertainty)? How many people add every seemingly interesting and useful article on the site to your favorites and score? Before the VKontakte contest for the development of an instant messenger for Android, I was among the users described above. But at one fatal moment, everything changed ...

A little more than a month ago, a post flashed on the Habré that a VKontakte announced a contest for an instant messenger for Android. I don’t know why and why, I’m straightforward as a kapets wanted to jump into this train, which was done. For the purposes initially there was no clause about the prize fund. I do not believe that the guy who first started writing will be able to write an essay on at least 3. After all, there are quite a lot of participants in the competition and there are specials. offices that also travel on this train. In addition, a permanent place of work does not distract you from developing an application during working hours, therefore, if you subtract time for work, sleep, family, there is very little data from the conditions of the competition for 1.5 months. But (in my opinion), in 1.5 months it is more than realistic for a beginner to make a fully functional project.

In this article, I would like to share links to resources that in one way or another contributed to the progress towards the stated goal. I hope that in the comments someone will share their list of solutions.
')
So, remember the details:

In the application, the application should look something like this:



This is my first "project" for Android. In a fairly short time (defined by the condition of the problem), it was possible to learn a lot of new and interesting features of the development for Android and mechanisms for solving specific problems.

The initial stage of becoming android developer for me was the study of the following lessons . Quite understandable for novice developer lessons, the number of which is constantly increasing. These lessons give basic knowledge, which is very good for a beginner to navigate the topic.

Taking a pencil, I put an approximate plan of action and made my fatal mistake. And the mistake was in the absence of at least approximate dates of the functionality.



The data on the task condition of the image of interface elements, for the most part, had to be processed before use.

I started my work with Tabs:

Then I decided to use the animation

Soon it was time for interaction with the VKontakte API. The article gave me a good impulse.

Then it's time to customize the listviews.

Loading avatars

Work with AsyncTask

To work with the database

Decompile apk

Push notifications

But happiness would never have been so complete if a couple of weeks before the end of the contest Google had not released a new version of GCM. By creating such a gesture, problems for many participants in the competition. For those who did not have time to get the C2DM details, there are two ways left: use the new GCM or decompile one of the applications laid out in the market.

Well, do not forget google in conjunction with stackoverflow still work wonders.

Examples of the work of participants in the competition can be viewed in the market ( one , two , three , four ). On the first link, the author has released a lot of versions. All these projects can be decompiled and have a look at how someone implemented this or that part of the functionality.

In the end, I was able to quickly understand some of the principles of the Android application (it is worth to highlight AsyncTask and work with ListView). Unfortunately, yesterday I decided to get off the train, because I just do not have time to provide a "fully completed work" at 21:00 MSK 10/07/12. Alas.

I didn’t publish my unfinished application in the market because there are no plans for its improvement and support.

Good luck to the participants.

UPD: dirty code

Source: https://habr.com/ru/post/147335/


All Articles