Profile cover photo
Profile photo
Evelina Vrabie

Post has attachment

Post has shared content

Post has shared content
Google I/O 2013 App Source Now Available

TL;DR: has been updated for #io13

Every year, a few days before the Google I/O developer conference, the Android team publishes an app on Google Play that has two main goals. The first goal is to help conference-goers and remote viewers navigate their way around Moscone West or watch the keynote and session videos on their Android devices from home.

The second, and arguably more important goal of the app, is to serve as a large-scale demo of Android best practices covering both app design and technical implementation. Like any demo though, it's only useful if you can see how it all works by looking at the source code.

So today we're happy to announce that the Google I/O 2013 app source code is now available! Check it out by clicking the link below:

Google I/O 2013 Android App Source:

The app source demonstrates a number of best practices such as:

• Implementing responsive design with fragments and alternative resources to support phones and tablets
• Using content providers and implicit intents to navigate the app
• Using sync adapters and GCM to keep content fresh across devices in a battery-friendly way
• Integrating Google+ for sign-in, public stream participation, and as a share target
• Integrating Google Play services to include Google Maps (with custom tiles, markers, and info windows) and +1 buttons
• Integrating the YouTube Android Player API to view live streams and recorded session videos, along with 'second-screen' presentation API support
• Exposing multiple entry points to the app with home screen and lockscreen widgets and expandable notifications

This is just a sample of the best practices covered in the app. There are tons of little gems to explore in the source code, available at the project site linked above.

Have any questions or comments on a particular part of the source? Post them in the comments below!

#AndroidDev   #io13

Post has attachment
Here's how I did it, ActionBarCompat, DrawerLayout and Google Maps v2. There were some problems on the way but StackOverflow helped. Any suggestions on how to improve it? #android #actionbarcompat #navigationdrawer

Post has shared content
[Slides] Why your Android Apps Suck
[Slides] Why your Android Apps Suck
31 Photos - View album

Post has shared content
Found this cool website where you can share and browse data visualisations and infographics under CC BY-SA-NC:

Bonus points - site is made with Drupal. :D

Post has shared content
The Android Developer Relations team here at Google is very focused on supporting developers to build great apps at high quality standards.

One of the essential parts of building high quality android apps is testing. Testing should be an integral part of your Android development cycle, to master the challenge of the device ecosystem.

That said I thought it would be a great idea to learn a little bit more about what testing tools/frameworks you as Android developers use in your day to day work and what else you need.

As a starting point I put together a link list of Android testing tools/frameworks/libraries I know and have used (see below).

There is also a form where you can vote for your favorite testing tools here: 

Tools mentioned in the comments will be added to the form as they appear. 

Android testing facilities:

- Android Testing Framework
- UI Automator
- Monkeyrunner

Android testing frameworks:

- Robotium
- Spoon
- AndroidViewClient
- Robolectric
- Fest for Android
- Calabash

Android Test Helpers:

- Hamcrest
- Mockito
- android-mock
- ScalaMock
( - Great Expectations 

Android cloud testing

- Testdroid 

So I'd love to hear your thoughts on the listed tools as well as tools I haven’t heard of yet. And don’t forget the vote. Thanks.

Post has shared content
I’m starting a small new series of articles about Android design on my spare time called #TeaMeal .

Tea Meal is a series of light hearted articles about some quick ideas or experiences I have had or learn about working as an Android designer, for this first edition let’s start with one of the often forgotten but most certainly primordial aspects of design: Fonts and our beloved Roboto.

Yesterday I was playing with the different weights and styles of Roboto while also conceptualizing the different emotions that they could provide and found myself missing a bit of “softness” and “tenderness”, has designers emotions are a vital part of every project and approaching a visual style while projecting the emotions that we or the project requires to evoke on the end users has proven on my experience always a successful strategy.

Roboto is a font of the Sans-serif family [1] and more specifically a Grotesque Sans-serif [2] created to be a fundamental part of the Holo design language with 15 different styles is already a very flexible font, like Holo itself is focused on a very modern, clean and contemporary visual approach but like Zaha Hadid [3] has proven, modernity does not have to be restrained by square lines anymore and so I thought about prototyping a softer style of Roboto or actually let’s just call it “Roboto Rounded”.

Inside the big and expansive world of Sans-serif there are many fonts who have rounded variants, Helvetica being the most famous of the them all has its own rounded variant [4] and one of the new break-out fonts on the last years Museo also has a rounded variant [5] and they all respond to the need of having a softer alternative, one that can transmit a more playful message than their more squared bigger brothers, they are probably not going to be the fonts you choose for your thesis or dissertation work but they do are the ones you’ll choose to say: “I love you” and “love” being the most important of all emotions, pretty much justifies their existence on your font folder and has a part of your creative process while searching for that perfect complement to your designs.

I’m not a font designer on any way shape or form and I think its best to leave it to such stars like Roboto’s very own designer Christian Robertson but I have put together a couple of slides on a very simple design study for “Roboto Rounded”.

Round shapes mean to our brains: Tenderness, Love, Friendship, Care, Support, Protection, Affection and Compassion.

While also being incredibly natural, has nature give us tons of round shapes to gather inspiration from. They also resonate with perfection, there’s nothing more perfect than a full circle, no beginning no end, just a perfect mathematical equation every point of its circumference is equidistant to the center of it, that is incredibly easy to remember and even if you don't see it has a mathematical model you’ll always know how to draw a circle with a piece of paper.

And so it ends this little introduction to the slides content that I hope you find of interest on this tea meal we are having :-)

Thanks to +Christian Robertson  for creating one of the most flexible and beautiful fonts I have had the pleasure to use. This small design study responds to the desire of making the Roboto font family bigger and better.

And yes sometimes I can be something of a font geek and I like rounded fonts.

+AJ Lopez

*Note: All the fonts at the slides are Roboto Rounded unless its a comparison.

*Disclaimer: Please don't judge the kerning of the font and many other inconsistencies on of it at the slides, its just a mock up font.


References sited on the post:

Roboto Rounded (17 photos)
17 Photos - View album

Post has shared content

When I find two utility methods in our code base that have the same exact  flow, with a very small amount of logic difference peppered throughout, and I'm envisioning myself as the ultimate cruft-removal unicorn-riding viking hero when I submit the refactoring change to unify them, and after daydreaming for a few seconds I start doing the actual refactoring, and it all progresses nicely until I get to the handle the actual differences, and the only two solutions I can see is passing multiple boolean flags that branch off in all those "unified" places, or creating a bunch of interfaces that isolate those difference, along with two sets of anonymous inner classes that implement those differences and are being passed to the new unified method, and I'm all like...

Post has shared content

Sometimes we would be sitting in the team meeting discussing the technical aspects of a new feature, and this idea pops into my mind, and before I know any better I say a thing or two about how simple it would be to do this all on the server side, and then a couple of seconds later it's all like...
Wait while more posts are being loaded