Most visited

Recently visited

Added in API level 21

VoiceInteractionSessionService

public abstract class VoiceInteractionSessionService
extends Service

java.lang.Object
   ↳ android.content.Context
     ↳ android.content.ContextWrapper
       ↳ android.app.Service
         ↳ android.service.voice.VoiceInteractionSessionService


活动的语音交互会话,由 VoiceInteractionService发起。

Summary

Inherited constants

From class android.app.Service
From class android.content.Context
From interface android.content.ComponentCallbacks2

Public constructors

VoiceInteractionSessionService()

Public methods

IBinder onBind(Intent intent)

将通信信道返回给服务。

void onConfigurationChanged(Configuration newConfig)

设备配置在组件运行时发生更改时由系统调用。

void onCreate()

服务第一次创建时由系统调用。

void onLowMemory()

这在整个系统内存不足时调用,并且主动运行的进程应该修剪内存使用情况。

abstract VoiceInteractionSession onNewSession(Bundle args)
void onTrimMemory(int level)

当操作系统确定进程从其进程中删除不需要的内存是一个好时机时调用。

Protected methods

void dump(FileDescriptor fd, PrintWriter writer, String[] args)

将服务的状态打印到给定的流中。

Inherited methods

From class android.app.Service
From class android.content.ContextWrapper
From class android.content.Context
From class java.lang.Object
From interface android.content.ComponentCallbacks2
From interface android.content.ComponentCallbacks

Public constructors

VoiceInteractionSessionService

Added in API level 21
VoiceInteractionSessionService ()

Public methods

onBind

Added in API level 21
IBinder onBind (Intent intent)

将通信信道返回给服务。 如果客户端无法绑定到服务,可能会返回null。 返回IBinder通常是一个复杂的界面已经described using aidl

请注意,与其他应用程序组件不同,此处返回的IBinder接口调用可能不会发生在进程的主线程上 有关主线程的更多信息可以在Processes and Threads中找到。

Parameters
intent Intent: The Intent that was used to bind to this service, as given to Context.bindService. Note that any extras that were included with the Intent at that point will not be seen here.
Returns
IBinder Return an IBinder through which clients can call on to the service.

onConfigurationChanged

Added in API level 21
void onConfigurationChanged (Configuration newConfig)

设备配置在组件运行时发生更改时由系统调用。 请注意,与活动不同,当配置更改时,其他组件不会重新启动:它们必须始终处理更改的结果,例如通过重新获取资源。

在调用此函数时,您的Resources对象将被更新为返回与新配置相匹配的资源值。

欲了解更多信息,请阅读 Handling Runtime Changes

Parameters
newConfig Configuration: The new device configuration.

onCreate

Added in API level 21
void onCreate ()

服务第一次创建时由系统调用。 不要直接调用这个方法。

onLowMemory

Added in API level 21
void onLowMemory ()

这在整个系统内存不足时调用,并且主动运行的进程应该修剪内存使用情况。 虽然没有定义它的确切位置,但通常会在所有后台进程都被终止时发生。 也就是说,在达到托管服务和前台UI的杀死进程之前,我们希望避免杀死。

你应该实现这个方法来释放你可能持有的任何缓存或其他不必要的资源。 系统将从此方法返回后为您执行垃圾回收。

优选地,您应该从ComponentCallbacks2实施onTrimMemory(int) ,以基于不同级别的内存需求逐步卸载资源。 该API可用于API级别14和更高的,所以你应该只使用这个onLowMemory()方法,旧版本的回退,可以治疗一样onTrimMemory(int)TRIM_MEMORY_COMPLETE水平。

onNewSession

Added in API level 21
VoiceInteractionSession onNewSession (Bundle args)

Parameters
args Bundle
Returns
VoiceInteractionSession

onTrimMemory

Added in API level 21
void onTrimMemory (int level)

当操作系统确定进程从其进程中删除不需要的内存是一个好时机时调用。 例如,当它进入后台并且没有足够的内存来保持尽可能多的后台进程运行时,会发生这种情况。 您不应该与级别的确切值进行比较,因为可能会添加新的中间值 - 如果值大于或等于您感兴趣的级别,通常需要比较。

要在任何点检索处理当前的修剪水平,可以使用 ActivityManager.getMyMemoryState(RunningAppProcessInfo)

Parameters
level int: The context of the trim, giving a hint of the amount of trimming the application may like to perform. May be TRIM_MEMORY_COMPLETE, TRIM_MEMORY_MODERATE, TRIM_MEMORY_BACKGROUND, TRIM_MEMORY_UI_HIDDEN, TRIM_MEMORY_RUNNING_CRITICAL, TRIM_MEMORY_RUNNING_LOW, or TRIM_MEMORY_RUNNING_MODERATE.

Protected methods

dump

Added in API level 21
void dump (FileDescriptor fd, 
                PrintWriter writer, 
                String[] args)

将服务的状态打印到给定的流中。 如果您运行“adb shell dumpsys activity service <yourservicename>”(注意,要使此命令生效,服务必须正在运行,并且您必须指定完全限定的服务名称),则会调用此命令。 这与“dumpsys <servicename>”不同,后者仅适用于命名系统服务,并在使用ServiceManager注册的IBinder接口上调用dump(FileDescriptor, String[])方法。

Parameters
fd FileDescriptor: The raw file descriptor that the dump is being sent to.
writer PrintWriter: The PrintWriter to which you should dump your state. This will be closed for you after you return.
args String: additional arguments to the dump request.

Hooray!