问题标签 [android-intentservice]

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.

0 投票
5 回答
17174 浏览

android - android设计注意事项:AsyncTask vs Service(IntentService?)

我正在设计一个需要执行以下步骤的android应用程序:

  1. 用户按下按钮或以其他方式指示“同步数据”。
  2. 同步过程将使用 REST Web 服务将数据移入和移出服务器。
  3. 数据将本地存储在 sqlite 数据库中。
  4. 同步过程应向 UI 提供状态更新/消息
  5. 不应允许用户在同步过程中徘徊到应用程序的其他部分并做更多的工作。

第一次运行同步过程可能需要 10-20 分钟。初始同步后,传输和存储的数据将减少,我预计该过程需要 1-2 分钟或更短的时间。

我一直在阅读有关 androidAsyncTask和使用服务的各种示例的大量信息……但我并不完全理解选择一种设计而不是另一种设计的设计注意事项和权衡取舍。我目前使用 AsyncTask 将我的演示项目存根。观看(大部分)开发 Android REST 客户端应用程序后: http ://code.google.com/events/io/2010/sessions/developing-RESTful-android-apps.html#我对此处描述的设计模式感到困惑感觉过于复杂,也许是因为我只是“不明白”。

我来自 java、spring、web 和桌面应用程序背景。在手持设备方面进行思考和设计对我来说是相当新鲜的。(更改屏幕布局时会发生什么?当我运行同步时电话响起会发生什么?)退后两步,如果初始同步将是一个如此漫长的运行过程,有没有更好的方法我要考虑问题->解决方案、用户体验、用户对手机上运行的应用程序的期望?

很想听听一些更有经验的安卓开发者的意见,他们已经在这些问题上苦苦挣扎。

0 投票
5 回答
63453 浏览

android - Android RuntimeException:无法实例化服务

我想创建一个将在单独的线程(而不是 UI 线程)上运行的服务,所以我实现了一个扩展 IntentService 的类。但我没有运气。这是代码。

Activity 按钮中的服务消费点击:

0 投票
2 回答
4229 浏览

android - 向 IntentService 询问有关其队列的信息

我有一个 IntentService 排队需要对我的 Web 服务器进行的 Web 服务调用。因此,每个 Intent 都是要进行的 Web 服务调用。

我想设置一些东西,我的应用程序可以询问这个 IntentService 是否有任何包含特定数据的 Intent(IE:“你是否已经在等待向云询问 x 数据?或者我需要告诉你做吗?”)。

关于如何扩展 IntentService 来做到这一点有什么建议吗?IntentService的Intent队列可以遍历吗?还是我需要获取 IntentService 代码并对其进行更改?

我唯一的另一个想法是向数据库中添加一个表并记录队列中的调用,完成后从表中删除每个日志。

0 投票
5 回答
8938 浏览

android - Android:intentservice,如何中止或跳过handleintent队列中的任务

我有一个调用意图服务(“DownloadService”)的活动(“ApplicationActivity”)

IntentService 在后台从互联网下载文件,但我希望能够中止特定的下载............

因此,假设我将 5 个文件放入队列中:文件 1、2、3、4、5

意图服务开始下载数字 1,然后是第二个,依此类推.... 1)有没有办法让意图服务在方法句柄事件中中止您目前正在做的事情(在这种情况下下载文件1) 并开始下载下一个?

2)是否可以从队列中删除元素,例如在下载文件1时,从队列中删除文件4,以便在数字3之后直接进入5?

很快,我需要一种与队列通信的方法来执行这两个简单的操作,但我在互联网上没有发现任何有用的东西:(

肿瘤坏死因子

0 投票
8 回答
115784 浏览

android - IntentService 和 Service 有什么区别?

你能帮我理解anIntentService和a之间的区别Service吗?

0 投票
11 回答
325450 浏览

android - Android平台中的Service vs IntentService

我正在寻找一个可以IntentService用 a 不能完成的事情的例子Service(反之亦然)?

我也相信IntentServicea 在不同的线程中运行而 aService不会。因此,据我所知,在自己的线程中启动服务就像启动IntentService. 那是对的吗?

0 投票
1 回答
793 浏览

android - 仅当我的应用在 Android 中未处于活动状态/前台时才从 IntentService 通知用户

我有一个IntentService不时运行的通知用户添加一些东西。如果用户在我的应用程序中(在其中一项活动中),我不想发送通知。有没有简单的方法来实现它?

一种方法是在/或/中设置一个布尔值并将MyApplication其设置为 true 。这是正确的方法吗?onStartonStoponResumeonPause

0 投票
2 回答
28014 浏览

android - Android IntentService 无法实例化类;没有空的构造函数

我有一个MainActivity需要访问在线 API 的类(因此使用网络资源)。这需要我在单独的文件中创建的后台线程HttpRequestService.java

MainActivity.java:

HttpRequestService.java:

这是 LogCat:

我认为重要的部分是can't instantiate class com.example.HttpRequestService; no empty constructor. 我见过其他几个类似的讨论,但他们都能够解决问题,因为他们的类是他们的 MainActivity 的子类。所以他们只是使子类静态并解决了问题。不幸的是,作为一个单独的类HttpRequestService不能是静态的。有什么建议么?

0 投票
1 回答
6496 浏览

android - Android InstantiationException:没有空的构造函数

当我尝试启动 IntentService 时收到 InstantiationException。我在这里查看了其他线程,但答案并没有解决我的问题。我的服务类确实有一个默认构造函数。这是我的服务课程。(它在文件 FindMeService.java 中定义,这是该文件中唯一的类。)

}

我通过从活动内部调用 startService() 来启动服务。日志内容如下:

这是我开始服务的方式

这是清单文件的相关部分

0 投票
2 回答
164 浏览

android - IntentService 没有启动

IntentService在课堂上有这个。意图服务未启动。我究竟做错了什么?

我从一个方法开始:

我在 Manifest 中注册了它: