Android Things上的IllegalAccessError

时间:2018-03-06 23:22:21

标签: android-things

我的应用在更新到最新的Android Things后抛出IllegalAccessError 预习。我有以下代码来检查OTA更新:

UpdateManager manager = new UpdateManager();
manager.performUpdateNow(UpdateManager.POLICY_CHECKS_ONLY);

当我运行此代码时,我得到以下错误输出:

java.lang.IllegalAccessError: Method 'void com.google.android.things.update.UpdateManager.<init>()' is inaccessible to class 'com.example.android.things.screensettings.MainActivity' (...)

此代码之前有效,为什么在更新后才开始这样做?

1 个答案:

答案 0 :(得分:3)

从预览7开始,Android Things API服务不会构建为新的 实例。它们通过getInstance()作为单身人士访问 更符合Android API范例。

请务必更新您的应用以使用预览7 SDK:

dependencies {
    compileOnly 'com.google.android.things:androidthings:0.7-devpreview'
}

然后修改您的代码以使用getInstance()代替:

UpdateManager manager = UpdateManager.getInstance();
manager.performUpdateNow(UpdateManager.POLICY_CHECKS_ONLY);

查看Android内容API reference 验证您调用的任何其他API是否已更改。