将新应用程序添加到 AOSP

Spy*_*ine 0 android system android-source

我已经能够构建 AOSP。但是,我尝试将此应用程序添加到 AOSP 并使用 mm ghetto-unlock构建它,但我收到错误消息,无法找到符号并且 @Override 方法没有覆盖任何内容。我相当确定问题是该应用程序没有与正确的库或 API 绑定,但我不确定我做错了什么。任何帮助将不胜感激。

wrk*_*wrk 5

首先确保您拥有以下库: libs/sc-light-jdk15on-1.47.0.2.jar libs/scprov-jdk15on-1.47.0.2.jar

覆盖问题是 AOSP master 分支已将 TrustAgentService 的方法“onSetTrustAgentFeaturesEnabled”更改为“onConfigure”,与 lollipop 发布分支相比。( lollipop , master )

因此,如下所示修改 GhettoTrustAgent.java,它应该不会出现错误。

import android.os.PersistableBundle;
import java.util.List;

......

//@Override
//public boolean onSetTrustAgentFeaturesEnabled(Bundle options) {
//    Log.v(TAG, "Policy options received: " + options.getStringArrayList(KEY_FEATURES));
//
//    return true; // inform DPM that we support it
//}

@Override
public boolean onConfigure(List<PersistableBundle> options) {
    return true; // inform DPM that we support it
}

......
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

使其成为系统应用程序并将其打包到system.img中。

  1. Android.mk,将这两行更改为:

    在此输入图像描述

  2. 创建一个名为 proguard.flags 的新文件,及其内容:

    在此输入图像描述

  3. 修改布局文件,所有 android:text 都应该本地化,就像这样 android:text="@string/string_name"

  4. 修改 [aosp_root]/build/target/product/full_base.mk,在其中添加您的包名称:

    在此输入图像描述

就这样。现在使用 mm/mmm 构建它,它应该安装在 system/app 中,并且当使用 make 运行完整构建时,它应该打包在 system.img 中。