向 AOSP 添加新应用
Adding a new app to AOSP
我已经能够构建 AOSP。但是,我正在尝试将此应用程序添加到 AOSP 并使用 mm ghetto-unlock 构建它,但我收到错误消息,指出无法找到符号并且 @Override 方法未覆盖任何内容。我相当确定问题在于该应用程序未与正确的库或 API 绑定,但我不确定我做错了什么。任何帮助将不胜感激。
首先确保你有这些库:libs/sc-light-jdk15on-1.47.0.2.jar libs/scprov-jdk15on-1.47.0.2.jar
Override问题是AOSP master分支将TrustAgentService的方法"onSetTrustAgentFeaturesEnabled"修改为"onConfigure",对比lollipop release分支(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
}
......
使其成为系统应用程序并打包到system.img。
Android.mk,把这两行改成这样:
创建一个名为proguard.flags的新文件,其内容:
修改布局文件,所有android:text都要本地化,像这样android:text="@string/string_name"
修改[aosp_root]/build/target/product/full_base.mk,添加你的包名:
就是这样。现在使用 mm/mmm 构建它,它应该安装在 system/app 中,当 运行 使用 make 进行完整构建时,它应该打包在 system.img 中。
我已经能够构建 AOSP。但是,我正在尝试将此应用程序添加到 AOSP 并使用 mm ghetto-unlock 构建它,但我收到错误消息,指出无法找到符号并且 @Override 方法未覆盖任何内容。我相当确定问题在于该应用程序未与正确的库或 API 绑定,但我不确定我做错了什么。任何帮助将不胜感激。
首先确保你有这些库:libs/sc-light-jdk15on-1.47.0.2.jar libs/scprov-jdk15on-1.47.0.2.jar
Override问题是AOSP master分支将TrustAgentService的方法"onSetTrustAgentFeaturesEnabled"修改为"onConfigure",对比lollipop release分支(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
}
......
使其成为系统应用程序并打包到system.img。
Android.mk,把这两行改成这样:
创建一个名为proguard.flags的新文件,其内容:
修改布局文件,所有android:text都要本地化,像这样android:text="@string/string_name"
修改[aosp_root]/build/target/product/full_base.mk,添加你的包名:
就是这样。现在使用 mm/mmm 构建它,它应该安装在 system/app 中,当 运行 使用 make 进行完整构建时,它应该打包在 system.img 中。