[Android Head-Units] MrGreenPants:
<Apologies, unable to provide proper links where required do to lack of posts & this site's spam prevention techniques>

I've been playing around with another Chinese Android head unit (a T7019a from tradesolution.hk), and struck a number of issues also discussed in this thread. I would like to offer up some fixes/workarounds I found that worked for my unit (and remember, these were relevant to

my unit

- other units may require some adaptation).

The following are summaries of postings I made to the ft86club forums [ft86club.com/forums/showthread.php?t=29723].

Boot Logo

I have figured out the format of the .png.logo files and have created an app to convert 360x300 8bpp bitmap with no more than ~220 colours to this format. I need to clean the code up a bit, but will upload the tool later

Boot Animation

A standard Android boot animation (bootanimation.zip) can be created and placed in /data/local. (Placing it there should not require root access). Alternatively, follow the instructions of post #835 of this thread which describes using a Boot Animation manager. I would however point out that the animation dimensions do not have to match the device. A smaller size can be used, and it will be horizontally & vertically centred.

Insufficient Space Errors when downloading from Google Play

Reason: /cache partition too small

Workaround A: Side-loading (manually copy .apk file to unit)

Workaround B: Temporarily change the location of /cache

Prerequisites:

You need to be rooted

Install BusyBox (The app is actually an installer for a low-level linux tool. After installing the app from the store, you need to run it and then click on Install to install/update to the latest version of busy box)

Install 'Cache Fixer'

Steps to fix the cache

Run Cache Fixer

Under 'Move and resize your cache folder to', select 'Data'

A slider bar will appear. Drag it all the way to the right (say 100MB)

Make sure that Force ext4 FileSystem appears and stays checked

Click on 'Move cache'

The Cache Fixer tool will be granted superuser access a couple of times and eventually it should pop up a window saying 'Cache moved' (or something to that effect)

Go back to the play store and install the app that was causing the problem

The cache fixer apps states that the move is only temporary, and will only last until a system reboot (in our case, until you turn the car off). Next time you install a large app, you'll have to go through the process again.

Application Not Installed error

Reason: some applications rely on the Google Maps API (not to be confused with the Google Maps App). If this framework is not present, the app install will fail. Devices need to be certified by Google to be able to ship with the Google Maps API. Non-certified devices, like these head units will be missing this framework.

Workaround: Lengthy. It has been shown to get the 'RaceChrono' app installed (when side-loaded). I suspect this may fix up problem people have been having with 'Tasker'.

Summary

*** Insert standard disclaimer here. If you don't understand what this is doing, you probably should be doing it. If you do it wrong, there is the possibility you could 'brick' your unit. Make sure you have an emergency Android geek on standby - just in case.***

(This is just the quick version, that people familiar with Android will understand. For a step-by-step howto, scroll down...)

Download the correct version of GAPPS from the CyanogenMod wiki

For Gingerbread (2.3), use the CM7 version

Extract the following files to a USB stick:

com.google.android.maps.xml

com.google.android.maps.jar

On the Android device, mount /system with r/w privs

copy .jar file to /system/framework/

copy .xml file to /system/etc/permissions/

Remount /system with r/o privs again

Perform a (soft) reboot

=======

Step-by-step

Requirements

Cheap Chinese head unit running Android (in this case, Gingerbread - 2.3)

Head unit must be 'rooted'

'ES File Manager' installed on head unit. EDIT: Correct name is 'ES File Explorer'

PC running modern OS (capable of navigating into .zip files)

USB stick, pretty much any size (microSD card will also work, but file locations will be slightly different)

On the PC

Get a USB stick.

Download the following file:

[NOTE: This only applies for Android 2.3. For other versions determine the correct file] goo-inside.me/gapps/gapps-gb-20110828-signed.zip

When finished, double click it to open it. There are some directories inside it. Open up the 'system' directory and then the 'framework' directory.

Copy the file 'com.google.android.maps.jar' into the root directory of the USB stick.

Go back up to the 'system' directory in the downloaded .zip file. Open the 'etc' directory, and then the 'permissions' directory.

Copy the file 'com.google.android.maps.xml' into the root directory of the USB stick.

In the system tray, click on the USB icon and choose to safely eject the USB stick.

On the head unit

Hook up the USB stick to the head unit.

Start up ES File Explorer

Click on the bottom right 'view' button. Select 'Small Detail' (so we can see the full filenames)

Navigate to /sdcard/udisk (which should be the usb stick)

Click and hold on 'com.google.android.maps.jar' until the ES File Manager buttons change.

Click on the 'Copy' icon.

Keep clicking on the 'up' icon (top left, chevron), until the directory/screen stops changing.

Click the 'Menu' key.

Expand the 'Tools' menu

Scroll down/select 'Root Explorer'

At the bottom of the pop-up window, select 'Mount R/W'

Next to '/system', click on the RW radio button (the right hand circle), so that a blue dot appears in it.

Click on 'OK'.

If asked, allow ES File Manager to get superuser/root rights.

A notification will pop up indicating that root privs have been granted to ES File Manager

Scroll down and click on the 'system' directory.

Click on the 'framework' directory.

Click on the 'Paste' button.

Click on the clipboard icon (next to the menu bar on the left)

Click on 'Clear' to remove the file from the clipboard.

Go back up to the top level directory (Top left, up button)

Click on the 'sdcard' directory

Click on the 'udisk' directory

Click and hold on the 'com.google.android.maps.xml file.

Click on 'Copy'

Go back up to the top directory.

Go into 'system'

Click on 'etc'

Click on 'permissions'

Click on 'Paste'

Use the 'Menu' button.

Under the 'Tools' section, select 'Root Explorer'

Select 'Mount R/W'

Next to '/system' click on the RO radio button (left circle), so that a blue dot appears in it.

Gracefully shutdown the radio.

Press and hold the Vol knob.

Wait 10 seconds (important! It actually stays on for ~5 seconds just in case you want to turn it back on.)

Press and hold the Vol knob for 3 seconds to turn the unit back on.

It should go through the full start-up sequence (DVD check, boot logo, boot animation)

Easily Toggle screen Bright/Dim/Off

Set up a push of the right hand knob as 'Brightness'. (Allows you to easily toggle between bright/dim/screen off) - great for driving at night.

Press <Home>

Press <Menu>

Press <Settings>

Select 'General'

Select 'Extra Settings'

Enter password (123456)

Select Panel Keys

Click on 'Start' - Background turns yellow & text changes to 'End'

Click on any 'Reserve' (!) - Pop-up menu appears

Select 'Brightness'

Text changes to 'Brightness', background turns yellow

Press <Right Knob>

Brightness/Brightness(L) may/will move to another box, but will have lighter grey background.

Click on 'End'

The same technique can be used to remap the other buttons as well.