Tesco's Android Tablet
Reply for Hudl
We created a tablet
(for Tesco)
Hardware
The Android OS
Drivers | Branding
Code Base
Android Open Source Project
Collection of multiple git repositories
Android Compatibility in 3 steps
Obtain the Android source code
Comply with the Compatibility Definition Document
Pass the Compatibility Test Suite
GET the Android GMS
Workflow
Be EQUIPPED
Ubuntu LTS (10.04). From Gingerbread 2.3.x a 64-bit is required
16GB of RAM
30GB disk space
Python 2.6 -- 2.7 e GNU Make 3.81
JDK 6 from Gingerbread onward. JDK 5 for all previous versions
Git 1.7+
Title
repo diff repo forall repo status repo download
Manifest file
Repository Descriptor
Remote Configuration
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="aosp" fetch="../repo" review="https://android-review.googlesource.com/" />
<remote name="xxxx" fetch="." />
<default revision="pharaoh_android4.2" remote="xxxxx" sync-j="4" /> ....
...
Module Configuration
...
<project path="device/xxxxx/xxxx" name="rk/device/xxxxx/Hudl_Tablet"> </project>
<project path="hardware/alsa_sound" name="platform/hardware/alsa_sound"/>
<project path="vendor" name="xx/vendor" />
<project path="packages/tesco_apps" name="platform/packages/tesco_apps" />
...
DOwnload & COmpile
Download source code
INIT: repo init -u https://android.googlesource.com/platform/manifest -b android-4.4.2_r1
SYNC: repo sync
CREATE BRANCH: repo start master –all
Compilation time
DRIVER SCRIPT: https://developers.google.com/android/nexus/drivers#razorkot49h
CLEAN: make clobber
BUILD SETUP: . build/envsetup.sh
LUNCH ENG MODE: lunch aosp_flo-eng
MAKE: make -j16
OUTPUT: $AOSP/out/target/product/flo/
INSTALL ON DEVICE
Flashing
BOOT IN FLASH MODE: Down + Power
UNLOCK OEM: fastboot oem unlock
EXPORT ANDORID ENV VARIABLE: export ANDROID_PRODUCT_OUT={your images location}
FLASH IMAGE: fastboot flashall -w # -w wipes the data
Advice & curiosity
Adoption of a Continuous Integration system
Adoption of a Continuous Inspection system
Unit Testing
UI Testing
Tagging
CyanogenMod - Cyanfox - AOKP ...
Sony release - AOSP for Xperia devices
Android is nothing without Google
Getting Google approval is though
Get their attention
Show the final hardware
Get OK for the OS
Get OK for ANY update of the OS
The office dealing with it is in San Francisco
And they do mistakes as well... test the GMS!
Api Over the Air Update
OTA - how to
Don't crush your town network
Incremental deliveries
Protect yourself from people fishing for the update
Bet on people NOT updating
Learnings
The code base is huge - take your time
The build cycle makes you feel in the '90s - take your time
Test the rest of the planet - not only your apps
that was fun.
Mobilise - Reply for Hudl
By Paolo Di Paola
Mobilise - Reply for Hudl
- 834