Family Tree: Android App
Our Silverlight-based Family Tree app now has a companion Android app. Both apps work off the same data but
present that data in different ways.
The Silverlight app displays a family tree as a tree structure drawn on a large surface. This can be viewed online and scrolled, zoomed and printed.
However, carrying a laptop or an A0 piece of paper around when tramping round churchyards looking for ancestral graves isn't very convenient,
especially when it's drizzling or windy.
So Mark created an Android version of the app so that your family tree can be carried around on an Android-based mobile phone.
Rather than trying to scroll
or zoom on a mobile phone, the Android app displays a family tree one family at a time. You can navigate to ancestors by clicking the parents, and navigate to
descendants by clicking children.
Download
The Android app is written in Java and is available for download as a complete
Eclipse Workspace, to make it easier to get up and running.
Please note that the Java code is a port from C# and follows Microsoft indentation style, rather than K & R style. In order to
make it more easy to keep the Java model in sync with the C# model, many C# properties have simply become public members.
The Java code demonstrates a number of aspects not found (or needed) in the C# code:
- An Android alert dialog that is "modal" in the sense used in .NET
- Reading files from the internet in an Android program.
- Drawing lines on a surface linking buttons floating above the surface.
Building your Tree
If you would like to build your own family tree and then host it on your website and make it available via the Android app, then
the best course of action would probably be as follows:
- Start by making an XML file to define your tree, and load this using the Silverlight app online.
- Once the tree is started, download the Silverlight app's source code and replace our embedded trees with your own.
You can now continue work on your tree inside Visual Studio.
- When you are ready, build your version of the Silverlight app and install it on your website.
- Donwload the Android app's source code, and replace its embedded trees with your own.
- Store updated versions of the XML file(s) on your web site and fixup your version of the Android app to access them.
- Add this as download from your website, and perhaps give us a mention!
If your website hosting company will not execute Silverlight .xap files, as is the case with Fasthosts, just rename it as a
.zip file.
Screenshots
The first screen shows a set of buttons that form a menu of the available
family trees. By default, the app used embedded trees but radiobuttons give the option of retrieving a more up-to-date
version from the internet.
Selecting one of the family tree buttons shows the "prime family" from the tree, as shown in
the second screenshot. The yellow arrows indicate that pressing either of the parent buttons will move to the
parent's birth family.
The third screenshot shows Mark's birth family, with his parents, sisters. Spouses are shown in pink.
Yellow arrows link direct ancestors of the prime family parents, whilst red arrows show relatives: siblings, cousins, etc.
When a yellow arrow is shown next to a parent button to indicate the parent has ancestors, a hyperlink
to the earliest known ancestor is also provided. Our family tree is deepest on Mark's mother's side, so pressing the hyperlink under
Jean Davies causes the earliest known ancestor in the tree to be displayed as shown in the fourth screenshot.
The screenshot shows the earliest known ancestor, Thomas Eachus, born in 1532. It also shows that he is Mark's
great x 12 grandfather.
Eachus is an old Cheshire surname. As a child, Mark used to buy Meccano from Eachus Bros toyshop in Northwich,
never guessing that the proprietor was probably an 11th or 12th cousin! Then again, half the population of Cheshire are probably
our 12th cousins.
The Android app came in very useful a few weekends ago, when we discovered Mark's great-grandmother's
grandparents' gravestone in St. Mary's church in Whitegate. Whitegate is just two miles from Mark's father's house in Cuddington.