What does repo init and repo sync actually do?

repo is a python wrapper script for git, its Google Source page defines it as repo – The Multiple Git Repository Tool repo init command initializes repo in the current directory. That’s, it downloads the latest repo source and a manifest.xml file that describes the directory structure of the git repositories, and store all of … Read more

How does Modem code talk to Android code

In almost all android source base as found in the AOSP/CAF/CM source (Android Open Source Project, CodeAurora Forum, Cyanogenmod respectively), will have C code called the rild, (Radio Interface Layer Daemon). This is commonly found within the /hardware/ril of the source tree. This daemon runs from the moment Android boots up, and creates a socket … Read more

Does the Android OS release a wakelock if the app or service holding it is killed?

WakeLock Implementation Overview When we use pm.newWakeLock to create a new wakelock, the PowerManager simply creates a new WakeLock object and returns. The WakeLock object is not a binder object, so it cannot be used through multiple processes. However, in that WakeLock object, it contains a Binder object named mToken. WakeLock(int flags, String tag) { … Read more

How does the Android repo manifest repository work?

First, repo init creates the .repo directory, clones the git repository https://android.googlesource.com/tools/repo to .repo/repo, and the git repository specified with the -u option to a bare repository at .repo/manifests.git. After that, it creates the .repo/manifests directory, converts it into a git repository through creating symbolic links from .repo/manifests/.git to .repo/manifests.git. It then checks out the … Read more

Where is android.os.SystemProperties?

If you use the “reflection” option, you may use the class below package com.etc.etc; import java.io.File; import java.lang.reflect.Method; import android.content.Context; import dalvik.system.DexFile; public class SystemPropertiesProxy { /** * This class cannot be instantiated */ private SystemPropertiesProxy(){ } /** * Get the value for the given key. * @return an empty string if the key isn’t … Read more

How to compile the Android AOSP kernel and test it with the Android Emulator?

Since August 2009 the kernel is no longer part of the standard repo manifest that you get when you follow the instructions to download the source code for the android open source project. The steps that are needed to successfully download, build and run a specific kernel on the emulator are as follows: Get the … Read more