How to compile native C library and daemon using ?

To compile any c library inside android, we need to write an makefile, for reference please check below, In below makefile we assume, you have a C library code in library_source.c file and application using this c library in main.c To compile as Shared Library, LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_SRC_FILES := library_source.c LOCAL_C_INCLUDES … Read more

How to create a native daemon and run from init.rc in Android

Android’s init is located at the root of the filesystem i.e. /init and also it uses different naming conventions than normal linux init, so its advised to first try and understand the details of android init Language, from system/core/init/readme.txt you can also check in the source code you have or click the link here. Now, … Read more

Compiling Android application as part of AOSP source code

This post details about how you can integrate your Android application as part of Android OpenSource Build system to get it compiled using command line. Normally Android applications are developed using Android Studio and it generates build.gradle to configure and compile the application, but when you want to get this same application compiled as part … Read more

Adding a new board or platform to android source & build

add a file In the products directory, create an file that point to (and is responsible for finding) the individual product make files. # # This file should set PRODUCT_MAKEFILES to a list of product makefiles # to expose to the build system. LOCAL_DIR will already be set to # the directory containing … Read more

Solved : java.lang.OutOfMemoryError: Java heap space

When I was trying to compile latest repo sync Android source code ( Android 10 ), and tried to compile demo application, I got an error as, [bash] Exception in thread "main" java.lang.OutOfMemoryError: Java heap space at java.base/java.util.AbstractList.subList( at com.intellij.psi.stubs.StubList.getChildrenStubs( at com.intellij.psi.stubs.MaterialStubList$1.visitStub( at com.intellij.psi.stubs.MaterialStubList$1.visitStub( at com.intellij.psi.stubs.MaterialStubList$1.visitStub( at com.intellij.psi.stubs.MaterialStubList$1.visitStub( at com.intellij.psi.stubs.MaterialStubList$1.visitStub( at com.intellij.psi.stubs.MaterialStubList.createOptimizedCopy( at com.intellij.psi.stubs.MaterialStubList.finalizeLoadingStage( at … Read more

Use repo on Windows to download android source

Android had developed repo tool to download huge android source code, primarily keeping in mind of development on Ubuntu / Linux and MacOS, but there are lot of people who just has access to Windows, so this post is to help those people with Windows, who can use below steps to download / repo sync … Read more

Understanding Android AOSP build system

Starting Steps source build/ This adds functions like “lunch” into environment. Check build/ for more details. You can check all added functions ( which also acts like a command ) by, $ cat build/ | grep function OR [bash] $ cat build/ | sed -n "/^[ \t]*function /s/function \([a-z_]*\).*/\1/p" | sort | uniq [/bash] The … Read more

How to install Android Studio for 64 bit Ubuntu machines ?

Note: Android no longer supports Studio for 32 bit Linux / Ubuntu platforms hence you will need only 64 bit platforms for development on Ubuntu. The prerequisite to make sure we can compile Android applications using command line, is we need to install JDK as, $ sudo apt-get install openjdk-8-jdk Visit website on “Download … Read more

How to install Android Studio for 32 bit and 64 bit Windows machines ?

Visit website Click on “Download Android Studio” button to download latest version of Android Studio. The latest version available while we installed was 3.4 for Windows 64-bit. Once you click on Download, you will be asked to Accept the terms and conditions. After accepting, it will download an exe at your machine. For 64 … Read more