Git Product home page Git Product logo

chromium_aaos's Introduction

This repo has a patch to enable chromium to be ran on android automotive, along with scritps to help ease the build process.

Android Setup

cd ~/
git clone https://github.com/zunichky/chromium_aaos.git chromium
cd chromium

Follow the offical google chromium guide
During the "Setting up the build", run gn args out/Release_arm64 and copy the contents of Release_arm64.gn. To build, you could continue to use the offical guide but these instructions going forward will use custom build scripts. It is helpful to still have the chromium guide pulled up while running through this readme.

Building

Dependencies

The following folder structure exists

|$HOME
|  |--chromium
|       pull_latest.sh
|       etc.   
|     |--src  
|  |--Android  
|     |--Sdk  
|        |--build-tools  
|  |--Documents
|     |--KeyStore
|          store.jks

Android build tools is needed for the signing of the aab. I used android studio to create my signing key, but I'm sure there is an terminal command to accomplish creating a .jks.

Apply automotive path to source

Run ./pull_latest.sh. This will:

  1. Fetch the latest chromium code
  2. Apply a patch to make the app "AAOS compatible"
  3. runhooks

Building for target

Making a release

Run ./build_release.sh. This proces will take hours to complete. This will:

  1. Setup parameters based on target architecture
  2. Find latest version file, and bump the major by 1
  3. Run build command to build an app bundle (.aab)
  4. Sign the .aab output file (needed to upload to Play Store) - Will ask to enter password
    Output: $HOME/chromium/src/out/Release_arm64/apks/MonochromePublic6432.aab

Building for emulator

TODO
./build_apk.sh

Uploading to Play Store

TODO

  1. Create dev account
  2. Go to Google Play Console
  3. Create a new app
  4. Add Automotive OS only form factor
  5. Publish app to internal testing
  6. Add privacy statement
  7. Add testers emails
  8. Go to the "Copy link" URL and install the app to your target device

chromium_aaos's People

Contributors

zunichky avatar

Watchers

 avatar

Forkers

pducharme

chromium_aaos's Issues

always get the error : ninja : error: loading build.ninja : No such file or directory.

Hi, trying to build this and got the error :

error : ninja : error: loading build.ninja : No such file or directory.

I did all the steps from Chromium build instruction, then ran the Pull_Latest, copy the args for the release. When trying to run Build_release.sh, I get that error.

Please help, i'm at the last step to be able to build it ! :)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.