Android 周期性 JobService 永远不会启动

2024-01-29

我有一个 JobService,我想定期启动它。 目前,为了进行测试,我正在使用一个简单的:

public class SenderService extends JobService {

    @Override
    public boolean onStartJob(final JobParameters params) {
        new Thread(new Runnable(){
            public void run(){
                try {
                    Thread.sleep(1000);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
                jobFinished(params, false);
            }
        }).start();

        return true;
    }

    @Override
    public boolean onStopJob(JobParameters params) {
        return false;
    }
}

我这样安排工作:

ComponentName serviceName = new ComponentName(this, SenderService.class);

JobInfo jobInfo = new JobInfo.Builder(JOB_ID, serviceName)
        .setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY)
        .setRequiresDeviceIdle(false)
        .setRequiresCharging(false)
        .setPersisted(true)
        .setPeriodic(10000)
        .build();

scheduler = (JobScheduler) getSystemService(Context.JOB_SCHEDULER_SERVICE);

int result = scheduler.schedule(jobInfo);

if (result == JobScheduler.RESULT_SUCCESS) {
    Log.d(LOGTAG, "job created");
} else {
    Log.d(LOGTAG, "job not created");
}

但工作永远不会开始。 如果我删除 setPeriodic(),那么它就会启动(但当然只有一次)。

到底是怎么回事?


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android 周期性 JobService 永远不会启动 的相关文章

  • Android 应用程序因 Firebase 电话身份验证而崩溃

    我正在使用 firebase 进行电话号码身份验证 当我使用我的电话号码时 它会自动验证它 但是当我使用另一个电话号码时 我得到类转换异常 它说 getGoogleApiForMethod 返回 Gms stackoverflow上也有类似
  • 如何挂载加密的APK扩展文件?

    我尝试以这种方式挂载扩展文件 final StorageManager storageManager StorageManager getSystemService STORAGE SERVICE String obbPath Enviro
  • Android 中读取未提交的事务

    我正在进行大量数据库操作 这会向我的数据库添加大约 10 000 条记录 由于这可能需要很长时间 因此最好使用事务 db startTransaction do write operations db setTransactionSucce
  • 删除 Android 中切换按钮的填充

    我正在 android 中创建一个简单的切换按钮并将背景设置为可绘制对象
  • AdMob 广告未显示

    因此 我使用 Play Services SDK 实施了 AdMob 广告 我已经 按照书本 做了所有事情 但广告不会显示 如果我将 AdView 背景设置为白色 它会显示空白 但不显示广告 我正在使用 Fragments 但我将 AdVi
  • 从非风味应用程序引用的 Android 多风味库 - AAPT:找不到资源

    我有包含字符串资源的库
  • Android Surface 与 Canvas 的关系

    Surface 和 Canvas 之间到底是什么关系 请解释 表面是一个缓冲区 画布保存绘图 视图未附加到画布 也不是表面 窗户被绑在 Surface 和 ViewRoot 询问 随后使用的画布表面 通过要绘制的视图 详细答案你可以阅读这篇
  • com.google.android:android:jar 的 dependency.dependency.version' 丢失

    我正在尝试使用 Eclipse 运行一个简单的虚拟 Android 项目 并且我正在尝试使用 Maven amd 我已按照已接受答案的教程进行操作this https stackoverflow com questions 6735562
  • 如何使用 Retrofit 2 和 RxJava 处理分页

    我知道如何处理 Retrofit 响应 但在使用 rx java 处理来自 REST API 的分页时遇到问题 背景 我使用的其余 api 为我提供了以下响应 并在标题中提供了下一页的链接 HTTP 200 OK Allow GET HEA
  • Android - 如何设置所有屏幕的背景颜色?

    维护字体和颜色样式的最佳实践是什么 我制作了一个 color xml 文件 用于更改按钮等单独元素的颜色 但我不确定 Android 希望开发人员如何组织他们的样式 例如 我希望所有屏幕都具有相同的背景颜色 我怎么做 我需要为每个 Acti
  • Android“权限拒绝:无法使用相机”

    我正在学习有关在 Android 应用程序中使用相机的教程 我收到错误 权限被拒绝 无法使用相机 在模拟器和物理设备上运行调试时 我在清单文件中尝试了各种权限 似乎大多数遇到此错误的人都遇到了拼写错误 缺少权限或权限不在清单中的正确位置 这
  • Android键盘点击搜索输入时出现和消失

    我在用谷歌地图 Js API当我搜索一个地方时 我的输入搜索栏工作正常 当我通过 iPhone 设备使用它时 它也工作得很好 但是当我通过Android 设备然后键盘立即出现和消失 我已经找到了一些关于当我按下搜索栏时 android 键盘
  • Android中从一个应用程序向另一个应用程序发送数据时的加密

    我想将敏感数据从一个应用程序发送到另一个应用程序 我使用 Intent 并通过 Bundle 发送数据 现在 我应该使用加密算法来加密要发送的数据 同时接收器应用程序将解密数据 哪种算法最适合移动平台 我浏览过RSA文档 建议不建议用于长文
  • 抽屉式导航不显示片段

    我创建了一个新的 Android Studio 项目 我的 MainActivity 是导航抽屉活动 所以 我无法显示碎片 我在互联网上和这里读过很多帖子 解释 我打开导航抽屉 选择菜单 播客 PodcastsFragment 应该显示 但
  • 在 NumberPicker 中显示更多数字

    我有两个问题 第一个问题是删除 NumberPicker 中的分隔线 我在 Android 中扩展 NumberPicker 来解决这个问题 如下所示 import android content Context import androi
  • Android Studio:src/androidTest 和 src/main 文件夹之间的区别?

    我是 Android Studio 的新手 我的问题是 src androidTest 和 src main 文件夹有什么区别 我所有的课程应该放在哪里 Refer Android Studio 概述 http developer andr
  • API 24 AccessibilityService.dispatchGesture() 方法如何工作?

    通过 API 24 我们有了一种向设备发送手势的方法 但是目前还没有可靠的文档或示例 我正在尝试让它工作 但目前手势每次都会点击 onCancelled 回调 这是我调用该方法的代码 TargetApi 24 private void pr
  • Android 布局以 开头 [重复]

    这个问题在这里已经有答案了 我是 Android 应用程序开发的初学者 我的问题很简单 我似乎无法确定布局文件夹中的 xml 文件是否应以以下开头 当我制作一个入门项目时 它不存在 但我也在读一本书 上面说它应该在那里 正确的方法是什么 嗯
  • Visual Studio代码无法检测到模拟器设备或连接的电话

    I was running my app with vscode using Android emulator or my phone however all of a sudden vscode could not identify an
  • 从 NDK 获取应用程序名称

    我需要从本机端获取我的 Android 应用程序的名称 如下所示 android content context context android content context this current activiy Resources

随机推荐

  • 参数化类型数组

    我无法确定以下 RHS 中期望的类型参数 ArrayList
  • 有没有办法生成 iOS 表情符号的高分辨率 PNG?

    我已经能够从 iOS 找到 160x160 像素的表情符号 PNG 实际上是 WhatsApp 但它们大致是同一组 但当我将它们导入 XCode 7 时 它们仅显示为 1x 有没有办法使用 Photoshop OS X 或类似工具来创建高分
  • 处理 Quiz Angular 5 中的多个单选按钮

    我是 Angular 新手 正在实施包含多个 MCQ 的测验 但我在选择单选按钮时遇到了麻烦 我的问题也来自数据库和选项 mcq component html
  • 将参数传递给在 docker 容器中运行的 python 脚本

    假设以下设置 网站用 php laravel 编写 用户上传文件 文本 doc pdf 我们有一个 docker 容器 其中包含一个用于将文本转换为 numpy 数组的 python 脚本 我想获取上传的数据并将其传递给 python 脚本
  • 如何在地图上仅显示半径(圆)内的标记?

    所有标记都显示在基于 Firebase 数据纬度和经度的地图上 我想仅在地图上显示圆圈内的标记 当前位置的圆圈半径为 10 公里 这就是我显示 Firebase 中所有标记的方式 LatLng newlocation new LatLng
  • 如何在不使用 bootstrap 的情况下更改 html 和 CSS 中日期选择器/日历图标的位置

    我使用的日历图标 日期选择器默认设置在右侧 输入字段的末尾 我想将日历图标 日期选择器移动到输入字段的开头 我尝试更改它 但无法获得适当的属性来更改它 请任何人都可以帮忙改变它 我正在添加现在看起来像的图片 https i stack im
  • 尝试使引导模式更广泛

    我正在使用这段代码 但模态太薄 div class modal fade bs example modal lg custom modal div class modal dialog modal lg div class modal co
  • 使用魔法位板生成滑动移动

    这是一个关于如何使用魔法位板验证国际象棋中的滑动棋子移动的大局的问题 只是为了澄清 我不是在问how魔法位板在内部工作 现在 关于这个问题的更多细节 我正在使用位板编写棋盘表示 并且我想使用魔术位板验证滑动棋子的移动 有人可以列出如何实现这
  • Elasticsearch - 我需要 JDBC 驱动程序吗?

    Aim 将我的 Elasticsearch 服务器与 SQL 数据库中的新数据和过期数据同步 Issue 我可以通过两种截然不同的方法来实现这一目标 但我不知道哪种方法更好 我也可以pull使用 JDBC River 插件直接连接到 SQL
  • 如何使用 ctypes 读取多字节值

    我想使用 ctypes 结构和联合从字节对象中读取两个连续的 24 位值 这将是 6 个字节 不幸的是 ctypes 读取每个值 32 位 还 sizeof报告结构比预期大 Using pack 1没有带来预期的结果 具有最小结构和二进制示
  • Android GPS 查询位置数据不正确

    我没有为此使用模拟位置 事实上 代码上周运行良好 我有一个应用程序 它收集 GPS 数据并使用应用程序本身生成的 X Y 坐标输出谷歌地图链接 我不是 100 确定为什么它没有按应有的方式工作 但是当我请求应用程序根据手机提供的 GPS 位
  • 有没有办法让 CGAL 的折线简化适用于内部/共享边界?

    我一直在尝试借助此方法对属于地图的多边形进行线条简化CGAL指南 https doc cgal org latest Polyline simplification 2 index html 例如韩国 这是一个韩国截图 https i st
  • Ruby on Rails:从另一个模型调用实例方法

    我有一个比赛模型和一个团队模型 我想在保存比赛后运行一个实例方法 在团队模型内编写 这就是我所拥有的 team rb def goals sum unless goal count cache goal count a goals sum
  • 如何检查系统音频是否静音?

    I found 这个答案 https stackoverflow com a 40545562 15498建议使用 核心音频 dll API https www dllme com dll files coreaudioapi dll ht
  • GWT:如何使用 UIBinder 在 Anchor 中嵌入小部件

    我想在 UIBinder 中使用以下内容 以便我可以以编程方式设置href我的代码中的链接
  • Visual Studio C++ 中的 msmpi.dll 错误消息

    我正在研究 mpi 但我一直收到此错误消息 程序无法启动 因为您的计算机缺少 msmpi dll 尝试 重新安装程序以解决此问题 所以我的问题是 卸载Visual Studio并重新安装可以解决这个问题吗 或者我应该使用电脑修复工具包程序和
  • 从表单应用程序 c# 启动停止服务

    如何从 C 表单应用程序启动和停止 Windows 服务 添加参考System ServiceProcess dll 然后您可以使用服务控制器 http msdn microsoft com en us library yb9w7ytd c
  • 如何避免在 Apollo Server V2 的错误响应中将错误集合包装在错误对象中

    我们正在将 Apollo Graphql Server v1 项目迁移到 v2 我们注意到错误响应格式发生了变化 在 v2 中 响应中的错误列表包含在错误对象中 但是 在 v1 中 情况并非如此 我们希望有一个一致的标准 并且不在 v2 中
  • 什么是 Array.map(Function.call,Number)

    var array1 1 4 9 16 map1 array1 map Function call Number 为什么map1的输出是 0 1 2 3 这个map函数是做什么的 Array prototype map https deve
  • Android 周期性 JobService 永远不会启动

    我有一个 JobService 我想定期启动它 目前 为了进行测试 我正在使用一个简单的 public class SenderService extends JobService Override public boolean onSta