How do I unlock the AOSP app?

Background

I am working on a dialer application. I am ready to make the application open source. I tried very hard to unlock the AOSP dialer ( link ).

However, I have no previous experience in using the AOSP application. A few hours later it was very difficult for me.

I tried the method

I am doing my work using Android Studio. I copied the resources and source code of the AOSP components as modules in my project. Dependencies can be resolved.

Main difficulties

  • Too many dependencies. From the make file ( link ), the dialer depends on ContactsCommon ( link ), InCallUI ( link ), android-common ( link ), vcard ( link ), etc. I tried to resolve dependencies by importing these modules. However, much more problems arose.

  • Permissions can only be granted as a system application.

  • There are methods visible only to system applications. They are hidden from the user application.

  • String resources with duplicate product names and attributes. I read that they should be processed at the preliminary compilation time. However, is it possible to handle them with Gradle?

goal

My goal is to publish an advanced dialer application similar to ExDialer ( link ). I do not make another dialer to replace the original dialer in the custom ROM.

Thus, many dependencies and permissions are not needed at all. I just don’t know how to separate the System and User parts from the AOSP application.

Proposed method

Most likely, I will copy and modify the resources and source code instead of deploying the original AOSP dialer. Are their best ways to fork an AOSP application to reuse existing resources and source code?

+6
source share

Source: https://habr.com/ru/post/974405/


All Articles