Wednesday, May 11, 2016

New trends in All Android-development: a report from San Francisco –

In fact DroidCon – a whole series of conferences, which take place in more than two dozen countries. The main goal – to support the Android ecosystem and provide a platform for discussions and meetings. The audience is going to DroidCon offsuit, but mostly it’s the developers, members of startups and entrepreneurs – all those who are somehow interested in development or business in the key mobile technologies

Last summer, the American company Touchlab held in New DroidCon. York, and Russian Apps4All autumn – in Moscow. Subsequently, the company entered into a partnership and jointly organized DroidCon in San Francisco, where I was lucky enough to get there and. The participation of the Russian side felt – had a lot of developers from Russia, as well as several booths Russian startups. The conference is organized in the best traditions and went great with no overlap – the Russian-American partnership Touchlab Apps4all and would like to wish only good luck

The main conference hall – Spherical Image – RICOH THETA

Opened the conference Google employees – Haas Chet (Chet Haase), a leading developer of Android UI Toolkit and Roman Guy (Romain Guy), a leading developer of a secret project. It all started with a nice statistics of those versions of Android, which in Russia is not so common: in Android Wear has 4,000 applications and 1,500 of dials for clocks, Android TV available manufacturers Sony, Sharp, nVidia and Razer, and Android Auto installed in their cars Audi, GM, Ford, VW. By the way, Android Auto is now available in Russia officially

50 billion -. So many Android applications installed per year

also, it was recalled that the beta version of the Android N, which can be installed on certain models of Nexus. Shows the main feature of the new version: It MW mode, where two applications are running on the screen halves, Mode “picture-in-picture”. Now you can watch videos, working in parallel with another application, and innovation was the Drag-n-Drop mode. But if the first two options are already implemented in Android, and Windows Mobile, the Drag-n-Drop – essentially a new thing for the mobile OS. If supported this option, the user can simply drag and drop files from one application to another, to open them in the final.


The new version will have new templates for notifications and simultaneous support for multiple locales, will be even better work Doze power saving mode. For developers introduced support for interface scalability – now it will be possible to increase not only the fonts, but are themselves controls, so you have to use relative values. Also in the new version promises improved performance for vector graphics (VectorDrawables).

These changes are impressive, but, alas, even the previous version of Android Marshmallow on April 2016 is ranked according to the data from public sources, only 4.6% market of all mobile OS Android. And without proper distribution the new features are not supported by all developers.

What really was greeted with great joy, because it features support for some Java 8. Android is based on Java 7 and deprived of tools such as, for example, lambda expressions. Now it is possible in Gradle-file to support Java 8 functionality to specify the following:

android {

defaultConfig {

jackOptions {

enabled true



compileOptions {

sourceCompatibility JavaVersion.VERSION_1_8

targetCompatibility JavaVersion.VERSION_1_8



at the same time it will be possible to use a lambda expression (support up to Android 2.3), in the interfaces will support static methods and default methods, and annotations for each field can now be repeated several times.

for details, you can see in the video:

Vakim Verdzhes (Joaquim Verges) from Twitter talked about animation in Android. He noted that more and more developers follow the guideline Android. That’s good, because users get the experience that is expected of the ecosystem, but at the same time, applications are similar to each other. One way to highlight the application among others – a quality animation. In his speech, he showed how to transmit View and its location from one Activity to another (initially transparent), as well as shared use of practices of animation, that it did not affect the performance

His performance here:.

A useful was the performance Hyun Ha Dao (Huyen Tue Dao) from Trello. She shared tips on how to make XML-markup interface is cleaner and thus improve the performance and compatibility with your devices. Indeed, developers often just do not know about most of the techniques.

The key importance is the performance. And it depends on the amount of resources used by your application.

If possible, you should use attributes instead of individual View. . For example, to create an image with the text


& lt; LinearLayout & gt;


& lt; TextView

drawablePadding = “…”

drawableEnd = “…” / & gt;

the same advice can be applied The separator elements in the ListView – to use divider attribute instead of individual View

and the main advice was -.. not inherit layout_weight, delete unused View and avoid large attachments

When complication interface is always pay attention to it and look for ways to optimize instead of piling up different View.



& lt; TextView / & gt;

& lt; TextView / & gt;

& lt; TextView / & gt;

& lt; / RelativeLayout & gt;

Read the tips can be in the video:

On DroidCon performed and Idzhit Boyar (Yigit Boyar), working in a team Android UI Toolkit at Google, and before that in the Path command. He shared his experience in the development of applications that support and correctly handle the offline mode. Correctly handle the low-speed connection or lack of it – a problem for many applications. A contained in the report of the statistics shows that the problem is really urgent: 55% of Latin American traffic, 30% in Eastern Europe, 50% in Central and Western Europe, 80% in Africa and 60% of Asia – is traffic to EDGE speed (120Kbit / s up .! 384Kbit / s)

Act locally, sync globally

When designing the API you need to think not in the context of a challenge-response – you need to think about the user, work a key synchronization. It can be stored on a local device data model, including changes, and when you sync to use the auxiliary fields that store version objects or changed data locally. Thanks to this architecture, the user experience of the application is positive, even if the connection was broken

It is also worth to give up blocking interface “Wait” windows “Loading.” – With the right architecture, synchronization is possible without blocking the UI

If there was an error sending data to the server, this simple message (eg, Toast or inscriptions in the interface) is not enough. The user could have closed the application. In this case it is necessary to send a push-notification, and the user will be able to resend. And finally, if the action does not require a connection to the server, it must be made available offline are always

Completed report a simple conclusion: “Local Disk – your bro, and the network – not your bro”

All of the performance is available on the link:

It was once DroidCon, and again leading developers shared their best practices and advice. Speeches were parallel and, alas, not all of them managed to get there. But the records of all presentations are available on YouTube.

Now we wait for Google I / O conference 2016 – a major conference for Android-developers. Until May 18 left quite a bit of time

Related articles:

Why all the hackers! often breaking into smaller sites

? Smartphones running on the Russian promised to release in 2016

The figures of the day . Adolescents are aware of their dependence on the phone

12 most interesting startups finteh straight from London


No comments:

Post a Comment