使用服务模板的功能的基类,该模板用于处理工作线程中的后台任务,以避免在主线程中运行耗时的任务,从而确保应用程序的响应能力。
该课程是Ability的子课程。使用此类后,您无需处理与线程管理相关的工作。
您应该重写onProcessIntent(ohos.aafwk.content.Intent)方法,并使用它来处理所需的任务。此方法将在工作线程中执行。
如果有多个任务,则系统按任务到达时间的顺序一次仅执行一个任务。完成所有任务后,IntentAbility对象将自动停止,并且*您无需调用Ability#stopAbility(Intent intent)即可停止它。
嵌套类摘要
领域摘要
构造器摘要
建设者 |
描述 |
IntentAbility(String名称) |
用于创建IntentAbility实例的构造函数。 |
方法总结
修饰符和类型 |
方法 |
描述 |
protected void |
onCommand(Intent intent,boolean restart) |
不推荐使用。 |
protected void |
onCommand(Intent intent,boolean restart,int startId) |
服务能力启动时回叫。 |
protected abstract void |
onProcessIntent(Intentintent) |
每次该功能启动并调用onCommand(ohos.aafwk.content.Intent,boolean)时,都要调用以处理任务。 |
protected void |
在onStart(Intentintent) |
在该功能开始时调用,并且在整个生命周期中仅调用一次。 |
构造器详细信息
意图能力
公共IntentAbility((String名称)
用于创建IntentAbility实例的构造函数。
参数:
参数名称 |
参数说明 |
名称 |
指示功能名称,该名称也用于标识工作线程。 |
方法细节
onStart
受保护的void onStart(Intent intent)
在该功能开始时调用,并且在整个生命周期中仅调用一次。
您无需为子类覆盖此方法。如果需要,可以通过调用IntentAbility基类中的方法来覆盖它。
覆写:
类Ability中的onStart
参数:
参数名称 |
参数说明 |
意图 |
表示启动此功能时携带的信息。注意:对于服务技能,将传递null。 |
也可以看看:
Ability.onStart(Intent)
onCommand
@Deprecated protected void onCommand(Intent intent,boolean restart)
不推荐使用。服务能力启动时回叫。
您无需为子类覆盖此方法。如果需要,可以通过调用IntentAbility基类中的方法来覆盖它。
覆写:
Ability类中的onCommand
参数:
参数名称 |
参数说明 |
意图 |
指示启动服务功能的意图。 |
重新开始 |
指示启动模式。值为true表示服务能力在销毁后重新启动,值为false表示正常启动。 |
也可以看看:
Ability.onCommand(Intent,boolean)
onCommand
受保护的void onCommand(Intent intent,boolean restart,int startId)
服务能力启动时回叫。
您无需为子类覆盖此方法。如果需要,可以通过调用IntentAbility基类中的方法来覆盖它。
覆写:
Ability类中的onCommand
参数:
参数名称 |
参数说明 |
意图 |
指示服务启动的意图。 |
重新开始 |
指示启动模式。值true表示服务在销毁后重新启动,值false表示正常启动。 |
startId |
指示启动服务功能的次数。每当该异能开始时,startId都会增加1。例如,如果该能力已启动六次,则startId的值为6。 |
也可以看看:
Ability.onCommand(Intent,boolean,int)
onProcessIntent
受保护的抽象void onProcessIntent(Intent intent)
每次该功能启动并调用onCommand(ohos.aafwk.content.Intent,boolean)时,都要调用以处理任务。
您应该为IntentAbility子类重写此方法。此方法将在单独的工作线程而不是主线程中执行,以防止耗时的任务影响应用程序的响应性。
参数:
参数名称 |
参数说明 |
意图 |
指示包含任务信息的Intent对象。 |
请发表评论