GDG Chicago Android

Google Developers Group

Official Google Developers Group Chicago Android

Latest Activity

stacy klimkowski is now a member of GDG Chicago Android
Uki Dominque Lucas posted a discussion

Introduction to Google Glass development

Please +1 our page: is the first meeting of our sister organization GDG Chicago! Come join us to meet other developers who work with and/or are interested in Google technologies! We welcome people of all backgrounds, including non-developers, to join us but kindly ask those who attend to refrain from discussions…See More
Jim Bannon left a comment for Jason L Smith
"Nice to see you joining, Jason.  Welcome!"
Apr 12
Jim Bannon replied to Uki Dominque Lucas's discussion Chicago Android and GTUG - call for speakers
"Does anyone need a copy of the presentation I prepared for last week's GDG - Chicago Android Meetup? TOPIC: Bringing the OFFLINE World to Your ONLINE Presence™. Providing Call2ACTION™ Symbols as the entrance ramp to the Information…"
Apr 12
Jason L Smith is now a member of GDG Chicago Android
Apr 9
David Allen posted a discussion

Xamarin Evolve 2014 - Tickets on Sale 10th April, early list on April 9th.

Xamarin Evolve 2014 - Tickets on Sale 10th April, early list on April 9th.Following from last years amazingly successful  conference, this year Xamarin Evolve will be held in Atlanta from October 6th -10th.Though Xamarin haven't made the location and pricing formally available yet,  understand it will be at the the Hyatt Regency Downtown, and the cost for general entrance to the conference will be $1699 and an all access pass, including training will be $2499.Tickets go on general sale on April…See More
Apr 4
Profile IconMatthew Graves and Jim Bannon joined GDG Chicago Android
Apr 4
Profile IconMike Turner and Tramaine Wells joined GDG Chicago Android
Apr 3


Team Members

Created by Uki Dominque Lucas Mar 2, 2010 at 11:07pm. Last updated by Uki Dominque Lucas May 30, 2013.

Chicago Android Event Sponsorship Levels

Created by Uki Dominque Lucas Jul 7, 2010 at 12:59pm. Last updated by Uki Dominque Lucas Jul 8, 2010.

Chicago Android Workshops

Created by Uki Dominque Lucas May 21, 2010 at 2:25pm. Last updated by Uki Dominque Lucas Jun 28, 2010.


Created by Uki Dominque Lucas Mar 7, 2010 at 10:17am. Last updated by Uki Dominque Lucas Mar 23, 2010.

About us

Created by Uki Dominque Lucas Feb 21, 2010 at 9:06pm. Last updated by Uki Dominque Lucas Mar 2, 2010.


Android News

Here's How To Unlock Three Android Easter Eggs - Business Insider

Here's How To Unlock Three Android Easter Eggs
Business Insider
From wild pranks on April Fools Day to hidden tricks in its search engine, the Google team loves creating surprises for users. Here's how to find Google's Easter eggs, for the three latest versions of its Android operating system.

Android Nokia X: A Windows Phone in disguise - Rappler


Android Nokia X: A Windows Phone in disguise
MANILA, Philippines — Once a dominant force in the world of mobile phones, Finnish cellphone manufacturer Nokia stands in the shadow of its former glory because of decisions made in the past. The landscape would have been different had Nokia adopted ...
Windows Phone 8.1: Finally, a worthy rival to Android and iOS

Android 4.4.2 Rolling Out To Verizon's LG G2 - Android Police

International Business Times UK

Android 4.4.2 Rolling Out To Verizon's LG G2
Android Police
Verizon takes its time getting updates out to devices, but today is finally the big day for owners of the LG G2 on Big Red. The OTA (version VS98024A) has started rolling out to devices, but don't get too excited just yet – Verizon is pushing the ...
Update Galaxy S4 LTE (Snapdragon 600) to Official I9505XXUFNC8 Android 4.4 ...
Google Android KitKat Update 4.4.3 Release Date Announced: Download Will ...
Samsung Galaxy Note 3 Android 4.4 KitKat Update Roundup
 - -

Android Central

Android 4.4.3 tipped by one of Google's apps

App that helps schools set up tablets mentions Android 4.4.3 in recent changelog

Android 4.4.3 still hasn't been officially announced or anything, but it's still officially pinging our servers, and not in a way that suggests it's just kids playing with their build.prop file. And on April 16 the Google Edu Device Setup app — an official app straight from Google that helps set up tablets purchased through Google Apps for Education — was updated for Android 4.4.3 support.

How to set a lock screen password or fingerprint scan on the Samsung Galaxy S5

By default, the Samsung Galaxy S5 just needs a little swipe to wake up from the lock screen, but anyone with even a tiny sense of security will want something more. The S5 offers a bunch of different ways to keep your device locked when not in use

From the Editor's Desk: Process all the things

As we continue to search for the best smartphone camera, let's take a minute and enjoy the damn pictures

When, exactly, did we become so damn cynical about smartphone cameras? In my lifetime we've gone from Polaroids and those point-and-shoots with the crazy five- or six-shot (I don't remember how many) flashes to friggin' computers with 4- or 16- or even 20-megapixel shooters in our pockets. We're able to take multiple pictures, select, edit and then share them with the world just seconds later. No more 24-hour processing. No more hoping you get the right prints back. No more lugging out large photo albums that you might care about once or twice a year. We have unlimited virtual storage.

So why the hell can't we just enjoy the shots?

Chicago Android Google Group

Chicago Android Logo New

Since the change to GDG prefix on all groups I thought it wold eb nice if we had a new GDG Chicago Android  Logo. Is there any  guidelines I need to follow other than if using the GDGD logo matertials keep in the same spirit of things? Thanks

RE: Hey

take a look, see what you think

Chicago centric android game that helps benefit Chicago charities

You all should check out GoGo Santa, a fun, Chicago-centric online game to promote holiday giving to local non-profit arts education organizations. In GoGo Santa, Santa travels through Chicago neighborhoods, dodging obstacles and collecting coins. Users allocate points earned among five non-profit a


Does anyone know of any good tutorials for geofencing?

Re: Does anybody know of a good pixel-based image editor?

After using Pixelformer, I found it useful for setting pixel values, including the alpha channel, in one operation, and specifying alpha values in hexadecimal rather than percentages; however the move, copy, and resize operations do not appear to work properly, and the export operation does not stor

Android Blog

Android Wear Developer Preview Now Available

By Austin Robison, Android Wear team

Android Wear extends the Android platform to wearables. These small, powerful devices give users useful information just when they need it. Watches powered by Android Wear respond to spoken questions and commands to provide info and get stuff done. These new devices can help users reach their fitness goals and be their key to a multiscreen world.

We designed Android Wear to bring a common user experience and a consistent developer platform to this new generation of devices. We can’t wait to see what you will build.

Getting started

Your app’s notifications will already appear on Android wearables and starting today, you can sign up for the Android Wear Developer Preview. You can use the emulator provided to preview how your notifications will appear on both square and round Android wearables. The Developer Preview also includes new Android Wear APIs which will let you customize and extend your notifications to accept voice replies, feature additional pages, and stack with similar notifications. Head on over to to sign up and learn more.

For a brief introduction to the developer features of Android Wear, check out these DevBytes videos. They include demos and a discussion about the code snippets driving them.

What’s next?

We’re just getting started with the Android Wear Developer Preview. In the coming months we’ll be launching new APIs and features for Android Wear devices to create even more unique experiences for the wrist.

Join the Android Wear Developers community on Google+ to discuss the Preview and ask questions.

We’re excited to see what you build!

Google Developer Day at GDC

Day 2 of Game Developers Conference 2014 is getting underway and today Google is hosting a special Developer Day at Moscone Center in San Francisco.

Join us at the sessions

Building on yesterday’s announcements for game developers, we'll be presenting a series of sessions that walk you through the new features, services, and tools, explaining how they work and what they can bring to your games.

We'll also be talking with you about how to reach and engage with hundreds of millions of users on Google Play, build Games that scale in the cloud, grow in-game advertising businesses with AdMob, track revenue with Google Analytics, as well as explore new gaming frontiers, like Glass.

If you’re at the conference, the Google Developer Day sessions are a great opportunity to meet the developer advocates, engineers, and product managers of the Google products that drive users, engagement and retention for your games. If you’re remote, we invite you to sit-in on the sessions by joining the livestream below or on Google Developers channel on YouTube.

The Developer Day sessions (and livestream) kick off at 10:00AM PDT (5:00PM UTC). A complete agenda is available on the GDC Developer Day page.

LiquidFun 1.0

Last December we announced the initial release of LiquidFun, a C++ library that adds particle physics, including realistic fluid dynamics, to the open-source Box2D.

To get Google Developer Day started, we’re releasing LiquidFun 1.0, an update that adds multiple particle systems, new particle behaviors, and other new features.

Check out the video below to see what Liquid Fun 1.0 can do, visit the LiquidFun home page, or join today's LiquidFun session at Google Developer Day to learn how LiquidFun works and how to use particle physics in your games. The session starts at 4:35PM PDT (11:35PM UTC).

Google Play services 4.3


Google Play services 4.3 has now been rolled out to the world, and it contains a number of features you can use to improve your apps. Specifically, this version adds some new members to the Google Play services family: Google Analytics API, Tag Manager, and the Address API. We’ve also made some great enhancements to the existing APIs; everything to make sure you stay on top of the app game out there.

Here are the highlights of the 4.3 release.

Google Analytics and Google Tag Manager

The Analytics API and Google Tag Manager has existed for Android for some time as standalone technologies, but with this release we are incorporating them as first class citizens in Google Play services. Those of you that are used to the API will find it very similar to previous versions, and if you have not used it before we strongly encourage you to take a look at it.

Google Analytics allows you to get detailed statistics on how you app is being used by your users, for example what functionality of your app is being used the most, or which activity triggers users to convert from an advertised version of an app to paid one. Google Tag Manager lets you change characteristics of your app on-the-fly, for example colors, without having to push an update from Google Play.

Google Play Games services Update

The furious speed of innovation in Android mobile gaming has not slowed down and neither have we when it comes to packing the Google Play Game services API with features.

With this release, we are introducing game gifts, which allows players to send virtual in-game requests to anyone in their Google+ circles or through player search. Using this feature, the player can send a 'wish' request to ask another player for an in-game item or benefit, or a 'gift' request to grant an item or benefit to another player.

This is a great way for a game to be more engaging by increasing cross player collaboration and social connections. We are therefore glad to add this functionality as an inherent part of the Games API, it is an much-wanted extension to the multi-player functionality included a couple of releases ago. For more information, see: Unlocking the power of Google for your games.

Drive API

The Google Drive for Android API was just recently added as a member of the Google Play services API family. This release adds a number of important features:

  • Pinning - You can now pin files that should be kept up to date locally, ensuring that it is available when the user is offline. This is great for users that need to use your app with limited or no connectivity
  • App Folders - An app often needs to create files which are not visible to the user, for example to store temporary files in a photo editor. This can now be done using App Folders, a feature is analogous to Application Data Folders in the Google Drive API
  • Change Notifications - You can now register a callback to receive notifications when a file or folder is changed. This mean you no longer need to query Drive continuously to check if the data has changed, just put a change notification on it

In addition to the above, we've also added the ability to access a number of new metadata fields.

Address API

This release will also includes a new Address API, which allows developers to request access to addresses for example to fill out a delivery address form. The kicker is the convenience for the user; a user interface component is presented where they select the desired address, and bang, the entire form is filled out. Developers have been relying on Location data which works very well, but this API shall cater for cases where the Location data is either not accurate or the user actually wants to use a different address than their current physical location. This should sound great to anyone who has done any online shopping during the last decade or so.

That’s it for this time. Now go to work and incorporate these new features to make your apps even better!
And stay tuned for future updates.

For the release video, please see:
DevBytes: Google Play Services 4.3

For details on the APIs, please see:
Google Analytics
Google Tag Manager
Google Play Games services Gifts
Google Drive Android API - Change Events
Google Drive Android API - Pinning
Google Drive Android API - App Folder
"">Address API

Google Dev @ UkiTech Blog

PostgreSQL: postGIS functions

Change to Posgres (database user)

pi@raspberrypi /home/uki $ su postgres

Select correct database

postgres@raspberrypi:/home/uki$  psql -d polygons
psql (9.1.12)
Type "help" for help.


To exit PostgreSQL shell

polygons=# \q

Select number of Points per Polygon in database

polygons=# select ST_NPoints(polygon) from polygon;

107ms on Respberry Pi


Select polygons for the GEO point

polygons=# select ST_NPoints(polygon) points from polygon where ST_Contains(polygon, ST_GeomFromText('POINT(-89.2535979 37.9210949)'));

Alternatively you can run query from Linux user prompt

postgres@raspberrypi:/home/pi$ psql -d polygons -c 'select ST_NPoints(polygon) from polygon;' 

If you testing timing of your query then you have to turn it on

polygons=# \timing

Timing is on.
polygons=# select ST_NPoints(polygon) from polygon;
Time: 17.256 ms

Raspberry Pi, PostGre SQL GEO fencing and Java

Logging Remotely to Raspberry

You can do all following in this tutorial from remote location using Secure Shell in command line:

 $ ssh 7x.xy.yy.x -l uki
uki@7x.xy.yy.x's password:
Linux raspberrypi 3.10.25+ #622 PREEMPT Fri Jan 3 18:41:00 GMT 2014 armv6l

You have to have permissions to install stuff

$ sudo apt-get install postgis
[sudo] password for uki:
uki is not in the sudoers file.  This incident will be reported.
uki@raspberrypi ~ $ su pi

Install PostGIS for GEO fencing

pi@raspberrypi ~ $ sudo apt-get install postgis
Reading package lists... Done
Building dependency tree    
Reading state information... Done
Suggested packages:
The following NEW packages will be installed:
0 upgraded, 1 newly installed, 0 to remove and 43 not upgraded.
Need to get 573 kB of archives.
After this operation, 1,930 kB of additional disk space will be used.
Get:1 wheezy/main postgis armhf 1.5.3-2+b1 [573 kB]
Fetched 573 kB in 8s (64.3 kB/s)                                                                                                        
Selecting previously unselected package postgis.
(Reading database ... 70358 files and directories currently installed.)
Unpacking postgis (from .../postgis_1.5.3-2+b1_armhf.deb) ...
Processing triggers for man-db ...
Setting up postgis (1.5.3-2+b1) ...
pi@raspberrypi ~ $

Change password for linux user for postgre

pi@raspberrypi ~ $ sudo passwd postgres
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
pi@raspberrypi ~ $

Install postgis plugin for PostGre

pi@raspberrypi ~ $ sudo apt-get install postgresql-9.1-postgis
Reading package lists... Done
Building dependency tree    
Reading state information... Done
The following extra packages will be installed:
  libgeos-3.3.3 libgeos-c1 libproj0 proj-data
Suggested packages:
The following NEW packages will be installed:
  libgeos-3.3.3 libgeos-c1 libproj0 postgresql-9.1-postgis proj-data
0 upgraded, 5 newly installed, 0 to remove and 43 not upgraded.
Need to get 4,460 kB of archives.
After this operation, 11.9 MB of additional disk space will be used.
Do you want to continue [Y/n]? yes
Get:1 wheezy/main libgeos-3.3.3 armhf 3.3.3-1.1 [576 kB]
Get:2 wheezy/main postgresql-9.1-postgis armhf 1.5.3-2+b1 [665 kB]
Get:3 wheezy/main libgeos-c1 armhf 3.3.3-1.1 [165 kB]
Get:4 wheezy/main proj-data armhf 4.7.0-2 [2,940 kB]
41% [4 proj-data 406 kB/2,940 kB 14%]                                                                                          219 kB/42% [4 proj-data 457 kB/2,940 kB 16%]                                                                             43% [4 p44Get:5 wheezy/main libproj0 armhf 4.7.0-2 [114 kB]                                
Fetched 4,460 kB in 30s (148 kB/s)                                                                                            
Selecting previously unselected package libgeos-3.3.3.
(Reading database ... 70370 files and directories currently installed.)
Unpacking libgeos-3.3.3 (from .../libgeos-3.3.3_3.3.3-1.1_armhf.deb) ...
Selecting previously unselected package libgeos-c1.
Unpacking libgeos-c1 (from .../libgeos-c1_3.3.3-1.1_armhf.deb) ...
Selecting previously unselected package proj-data.
Unpacking proj-data (from .../proj-data_4.7.0-2_armhf.deb) ...
Selecting previously unselected package libproj0.
Unpacking libproj0 (from .../libproj0_4.7.0-2_armhf.deb) ...
Selecting previously unselected package postgresql-9.1-postgis.
Unpacking postgresql-9.1-postgis (from .../postgresql-9.1-postgis_1.5.3-2+b1_armhf.deb) ...
Setting up libgeos-3.3.3 (3.3.3-1.1) ...
Setting up libgeos-c1 (3.3.3-1.1) ...
Setting up proj-data (4.7.0-2) ...
Setting up libproj0 (4.7.0-2) ...
Setting up postgresql-9.1-postgis (1.5.3-2+b1) ...
pi@raspberrypi ~ $

Install Java 7 on Raspberry Pi

pi@raspberrypi ~ $ sudo apt-get update && sudo apt-get install oracle-java7-jdk
Hit stable Release.gpg
Hit stable Release                                                                              
Hit wheezy Release.gpg                                                                      
Hit stable/non-free armhf Packages                                                              
Hit wheezy Release                                                                          
Hit wheezy/rpi armhf Packages                                                                
Get:1 wheezy Release.gpg [490 B]                                                          
Ign stable/non-free Translation-en_GB                                                          
Get:2 wheezy Release [14.4 kB]                                    
Hit wheezy Release.gpg                                              
Ign stable/non-free Translation-en                                  
Hit wheezy Release                                                  
Get:3 wheezy/main armhf Packages [7,426 kB]
Hit wheezy/main armhf Packages                
Ign wheezy/rpi Translation-en_GB            
Ign wheezy/rpi Translation-en              
Ign wheezy/main Translation-en_GB
Ign wheezy/main Translation-en
Hit wheezy/contrib armhf Packages                                                          
Hit wheezy/non-free armhf Packages                                                        
Hit wheezy/rpi armhf Packages                                                              
Ign wheezy/contrib Translation-en_GB                                                      
Ign wheezy/contrib Translation-en
Ign wheezy/main Translation-en_GB
Ign wheezy/main Translation-en
Ign wheezy/non-free Translation-en_GB
Ign wheezy/non-free Translation-en
Ign wheezy/rpi Translation-en_GB
Ign wheezy/rpi Translation-en
Fetched 7,441 kB in 1min 35s (77.9 kB/s)      
Reading package lists... Done
Reading package lists... Done
Building dependency tree    
Reading state information... Done
oracle-java7-jdk is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 44 not upgraded.
pi@raspberrypi ~ $

Verify Version of Java 

uki@raspberrypi ~ $ java -version
java version "1.7.0_40"
Java(TM) SE Runtime Environment (build 1.7.0_40-b43)
Java HotSpot(TM) Client VM (build 24.0-b56, mixed mode)
uki@raspberrypi ~ $

Switching to postgres user

uki@raspberrypi ~ $ su postgres

Creating new PostGre Database 

postgres@raspberrypi:/home/uki$ createdb -E UTF8 polygons

Initialize PostGIS

postgres@raspberrypi:/home/uki$  psql -d polygons -f /usr/share/postgresql/9.1/contrib/postgis-1.5/postgis.sql
... many more

Initialize Spatial functions

postgres@raspberrypi:/home/uki$  psql -d polygons -f /usr/share/postgresql/9.1/contrib/postgis-1.5/spatial_ref_sys.sql
... many more

Changing database 

postgres@raspberrypi:/home/uki$ psql -d polygons
psql (9.1.12)
Type "help" for help.


Check if postgis is OK

polygons=# SELECT PostGIS_full_version();
 POSTGIS="1.5.3" GEOS="3.3.3-CAPI-1.7.4" PROJ="Rel. 4.7.1, 23 September 2009" LIBXML="2.8.0" USE_STATS
(1 row)


Change database user password

polygons=# ALTER USER postgres PASSWORD 'XYZ_secure';

Secure Copy your Java Jar to Pi

@ libs $ scp XYZ-1.0.jar pi@7x.xy.yy.x:/home/pi
pi@7x.xy.yy.x's password:
XYZ-1.0.jar                                                                           100%
9601KB 384.1KB/s   00:25  
@ libs $

Run your Java program on Raspberry Pi

pi@raspberrypi ~ $ java -jar XYZ-1.0.jar -params
Connected to jdbc:postgresql://localhost/polygons

CREATE TABLE gps_points (

... up to you what you want to do

PostgreSQL getting started

PostGreSQL site

Download and Run

  • Installation Directory: /Library/PostgreSQL/9.3
  • Data Directory: /Library/PostgreSQL/9.3/data
  • Set superuser password
  • set port e.g. 5432
  • set locale e.g en_US.UTF-8
  • Launch Stack Builder

Stack Builder 3.1.1

  • Database Drivers
    - pgJDBC v9.3-1100-1
  • Spacial Extensions
    - PostGIS 2.1
  • Select download dir e.g. /Applications/DB/PostGre/Extensions
  • finish installations

Check Database Size

$ cd /Library/PostgreSQL/9.3

$ ls -alt | grep data
drwx------  22 postgres  daemon    748 Apr  3 14:31 data

4) PostgreSQL client (UI)
  • pgAdmin3

Set PATH to PostgreSQL

$ edit ~/.profile
# PostGreSQL
export POSTGRE_HOME=/Library/PostgreSQL/9.3
export PATH=${PATH}:${POSTGRE_HOME}/bin

Sandbox Directory

create yourself a sandbox directory to play in
$ cd /Applications/DB/PostGre/sandbox 


Adding and checking users

@ sandbox $ psql --user=postgres template1 -c '\du'

List of roles

Role name  |                   Attributes                   | Member of 
 postgres  | Superuser, Create role, Create DB, Replication | {}

 uki       | Password valid until infinity                  | {}

Create Dump

creating postGreSQL database backup
@ sandbox $ pg_dump -Fp --user=postgres --dbname=gps_points --format=plain --clean --create  --file=gps_points.sql 
@ sandbox $ ls

Terminal (Command Line)

@ 9.3 $ sudo su
@ 9.3 $ su - postgres

uki:~ postgres$

Check Database Size

SELECT pg_size_pretty(pg_database_size('polygons'))
SELECT pg_size_pretty(pg_relation_size('gps_points'))

Chicago Android events



  • Add Photos
  • View All






© 2014   Created by Uki Dominque Lucas.

Badges  |  Report an Issue  |  Terms of Service