从应用程序代码访问Androids UpdateEngine(或其他SystemApi类)

时间:2017-07-06 06:23:26

标签: java android android-source

我正在尝试编写系统更新程序,该应用程序使用Android 7+的UpdateEngine。但是,我似乎无法从我的java代码访问它,因为该类及其方法都标有@SystemApi。

我将我的应用程序集成到AOSP树中,但是我无法从我的应用程序目录开始成功编译:当我在app目录中运行 mm 时,我直接得到以下错误:

  

无法解析导入android.os.UpdateEngine

如果我只是将import语句添加到已经存在的aosp system-app中,也会发生这种情况。

从应用程序使用UpdateEngine(或实际上任何其他@SystemApi)的正确方法是什么?我不想通过删除所有SystemApi和破坏兼容性来更改android api。

1 个答案:

答案 0 :(得分:3)

当然,我在发布问题后立即找到解决方案......

万一其他人将来偶然发现这个问题 - 问题是我在Android.mk中定义了以下SDK版本:

  

LOCAL_SDK_VERSION:=当前

更改sdk版本后,系统API(以及UpdateEngine)可以访问,如下所示:

  

LOCAL_SDK_VERSION:= system_current