android - java.lang.NoClassDefFoundError: 解析失败: Landroid/app/job/JobInfo$TriggerContentUri;
问题描述
我正在使用带有 addTriggerContentUri 的 JobScheduler 来观察特定内容 uri 的任何变化。当我运行该应用程序时,我得到了上述异常。
解决方案
addTriggerContentUri
在 API 24 (Nougat) 及更高版本的 JobInfo 中可用。如果您在 API 24 以下的任何设备中尝试此操作,您将不会收到任何编译时错误,但在运行时 Android 将尝试在 JobInfo 中查找 addTriggerContentUri,该地址将不可用并抛出上述异常(由以下原因引起
:java.lang.ClassNotFoundException: Didn't find class "android.app.job.JobInfo$TriggerContentUri" on path: DexPathList[[zip file "/data/app/).
解决方案:您可以在调用此方法之前进行 API 级别检查。
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
....
}
推荐阅读
- r - ggplot2和一组抖动/闪避点
- python - 使用python获取子目录列表中的文件名
- javascript - 如何从 SXSSFWorkbook 创建 PIVOT 表 - APACHE POI
- javascript - 如何跨浏览器一致地导出 csv 数据?
- docker - Docker 撰写 yml 替代品
- python - Django Forms.py 将 EmailField 值更改为自动填充 value="{{ user.email }}"
- reactjs - React 在状态更改后重新渲染子组件
- c - 没有数据发送时如何跳过 recv() 函数
- javascript - 使用 WebUSB 从串行设备读取整个响应
- python-3.x - 如何迭代数据类型为列表的数据框中的列