问题标签 [jobintentservice]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 奥利奥上的长网操作
在我的 Android 应用程序中,用户可以选择在离线模式下使用该应用程序。当用户选择进入离线模式时,我会从服务器下载所有内容(甚至可能需要长达 7 分钟)以供离线使用。此后应用程序的使用取决于离线内容的下载。我正在使用一项服务来下载离线内容。但如果应用程序进入后台,该服务可能无法在 Android 8 中运行。那么下载适用于 Android 8 的离线内容的最佳方法是什么?是一个foreground service
还是JobIntentService
一个WorkManager
?
android - 隐式启动 JobIntentService
如您所知,这就是我们触发 a 的方式JobIntentService
:
在这种方法中,我们知道要启动哪个服务并将其类传递给方法。
这是我的问题:有什么方法可以 隐式启动服务?
为什么我需要这个?我正在开发一个库,有时应该启动开发人员扩展的服务,显然我无法从库中访问它
我试过什么?我使用IntentService
(使用意图过滤器)实现了它,并且在 O 之前的设备上运行良好,但对于 Android Oreo,我收到了这个崩溃日志:
致命异常:java.lang.IllegalStateException:不允许启动服务 Intent { act=someAction pkg=somePackage (has extras) }:应用程序在后台 uid UidRecord{de24eda u0a238 RCVR idle procs:1 seq(0,0,0) }
所以我搬到了JobIntentService
,现在的问题是我不能隐式启动它。
任何解决方案或替代方案将不胜感激。
java - java.lang.IllegalArgumentException:Oreo 中的给定工作不是活动异常,而我在整个应用程序中使用唯一的作业 ID
如何处理这种异常?当我在整个应用程序中使用唯一的工作 ID 时,Oreo 中的给定工作不是活动异常。
android - 在 Oreo 的 JobInetentService 中的 requestLocationUpdates 出现错误
我已经编写了一个基于 GPS的定位服务,我在其中调用requestLocationUpdates
以获取更新的位置并使其正常工作,但是当我针对Android Oreo时,我已经替换Service
为JobIntentService
.但是当我运行应用程序时出现错误。请提供解决方案。
我的课
我正在通过以下代码开始服务
android - SecurityException:调用者不再运行,上次停止
描述:
对于拥有 android 8 (Oreo) + 设备的用户,我们一直在 Fire Base 控制台上观察到此崩溃。堆栈跟踪显示它是导致此致命异常的内部方法。
环境和设备详细信息
设备信息:
- 设备:三星、华为、HMD Global、小米等
- 操作系统版本:Android 8.0 (Oreo)、Android 9.0 (Pie)
- 崩溃百分比:Android 8.0 (99%)、Android 9.0 (1%)
OneSignal SDK 版本:
堆栈跟踪信息
我们 99% 的崩溃发生在 Android O 上,其中大量用户使用三星设备(但这似乎不是三星独有的问题,还有相当数量的 HTC、LG、谷歌等。 设备)
如果您需要更多信息,请告诉我。
java - JobIntentService 不会像 IntentService 一样在完成后删除线程
我有来自官方文档的 JobIntentService:
在运行此服务之前,调用后Thread.activeCount()
我得到了 33 号。结束第一次运行的服务后,我得到了 34,接下来是 35,依此类推。
为什么 ?有人可以解释一下吗?结束后如何杀死这个线程?这是 JobIntentService 的正常行为吗?IntentService 完美运行,结束后总是杀死一个线程。
我使用以下片段从片段启动此服务:
无论如何,如果我以这种方式启动服务:
JobIntentService 也没有删除线程
android - IllegalArgumentException:没有这样的服务 ComponentInfo{JobIntentService}
所以关于这个问题的答案对我没有帮助,我已经声明了所有权限并且已经在我的代码中接受了答案。
AppInfoJobService
(CustomJobIntentService) 在 Android OS 8+ 设备上引发以下错误,并且很少发生,无法重现。我们enqueueWork in BaseActivity
's onCreate
。我们主要有一个activity和fragments。
android - 如何解决 AsyncTask 的 RejectedExecutionException?
我在以下方法中从 JobIntentService 调用 asyncTask
但是得到以下异常
android - JobIntentService 在某些设备中无法正常启动?
以前IntentService
用于通过 AlramManager 触发后台服务。现在我将触发后台进程更改IntentService
为JobIntentService
从服务器获取数据。在某些JobIntentService
不触发的设备中,只有在打开应用程序后才会触发。
设置警报管理器
广播接收器类
JobIntentService 类
我的编码有什么问题吗?帮我解决问题。
android - 无法从 JobIntentService 执行 LocalBroadcastManager
我有一个 JobIntentService,如果满足某些条件,它必须启动我的 MainActivity 接收的 LocalBroadCastManager。
我是这样做的:
在我的主要活动中以这种方式定义了 LocalBroadCastManager:
到目前为止,我使用的类似代码使用的是服务而不是 JobIntentServices,但是从 API 26 开始,在某些我需要的情况下不再可能执行服务,因此我需要使用 JobIntentServices。
代码是这样的:
我该怎么做才能让 JobIntentService 成功启动 LocalBroadcastManager?
我无法提供有关错误的更多详细信息,因为在模拟器上执行时它只是以“尽管代码处于 try, catch 块中,但应用程序已停止工作消息完成应用程序。这也基本上是不可能的,因为我的计算机资源用于在模拟器中调试 API 26 以获取更多信息,而且我没有具有 API 26 的物理设备。