public
class
VoiceInteractionService
extends Service
java.lang.Object | ||||
↳ | android.content.Context | |||
↳ | android.content.ContextWrapper | |||
↳ | android.app.Service | |||
↳ | android.service.voice.VoiceInteractionService |
Top-level service of the current global voice interactor, which is providing
support for hotwording, the back-end of a VoiceInteractor
, etc.
The current VoiceInteractionService that has been selected by the user is kept
always running by the system, to allow it to do things like listen for hotwords
in the background to instigate voice interactions.
Because this service is always running, it should be kept as lightweight as
possible. Heavy-weight operations (including showing UI) should be implemented
in the associated VoiceInteractionSessionService
when
an actual voice interaction is taking place, and that service should run in a
separate process from this one.
Constants | |
---|---|
String |
SERVICE_INTERFACE
The |
String |
SERVICE_META_DATA
Name under which a VoiceInteractionService component publishes information about itself. |
Inherited constants | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
From
class
android.app.Service
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
From
class
android.content.Context
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
From
interface
android.content.ComponentCallbacks2
|
Public constructors | |
---|---|
VoiceInteractionService()
|
Public methods | |
---|---|
final
AlwaysOnHotwordDetector
|
createAlwaysOnHotwordDetector(String keyphrase, Locale locale, AlwaysOnHotwordDetector.Callback callback)
Creates an |
int
|
getDisabledShowContext()
Return the value set by |
static
boolean
|
isActiveService(Context context, ComponentName service)
Check whether the given service component is the currently active VoiceInteractionService. |
IBinder
|
onBind(Intent intent)
Return the communication channel to the service. |
void
|
onCreate()
Called by the system when the service is first created. |
void
|
onLaunchVoiceAssistFromKeyguard()
Called when a user has activated an affordance to launch voice assist from the Keyguard. |
void
|
onReady()
Called during service initialization to tell you when the system is ready to receive interaction from it. |
void
|
onShutdown()
Called during service de-initialization to tell you when the system is shutting the service down. |
void
|
setDisabledShowContext(int flags)
Set contextual options you would always like to have disabled when a session is shown. |
void
|
showSession(Bundle args, int flags)
Request that the associated |
Protected methods | |
---|---|
void
|
dump(FileDescriptor fd, PrintWriter pw, String[] args)
Print the Service's state into the given stream. |
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
|
String SERVICE_INTERFACE
The Intent
that must be declared as handled by the service.
To be supported, the service must also require the
BIND_VOICE_INTERACTION
permission so
that other applications can not abuse it.
Constant Value: "android.service.voice.VoiceInteractionService"
String SERVICE_META_DATA
Name under which a VoiceInteractionService component publishes information about itself.
This meta-data should reference an XML resource containing a
<
tag.
voice-interaction-service
>
Constant Value: "android.voice_interaction"
AlwaysOnHotwordDetector createAlwaysOnHotwordDetector (String keyphrase, Locale locale, AlwaysOnHotwordDetector.Callback callback)
Creates an AlwaysOnHotwordDetector
for the given keyphrase and locale.
This instance must be retained and used by the client.
Calling this a second time invalidates the previously created hotword detector
which can no longer be used to manage recognition.
Parameters | |
---|---|
keyphrase |
String :
The keyphrase that's being used, for example "Hello Android". |
locale |
Locale :
The locale for which the enrollment needs to be performed. |
callback |
AlwaysOnHotwordDetector.Callback :
The callback to notify of detection events. |
Returns | |
---|---|
AlwaysOnHotwordDetector |
An always-on hotword detector for the given keyphrase and locale. |
int getDisabledShowContext ()
Return the value set by setDisabledShowContext(int)
.
Returns | |
---|---|
int |
boolean isActiveService (Context context, ComponentName service)
Check whether the given service component is the currently active VoiceInteractionService.
Parameters | |
---|---|
context |
Context
|
service |
ComponentName
|
Returns | |
---|---|
boolean |
IBinder onBind (Intent intent)
Return the communication channel to the service. May return null if
clients can not bind to the service. The returned
IBinder
is usually for a complex interface
that has been described using
aidl.
Note that unlike other application components, calls on to the IBinder interface returned here may not happen on the main thread of the process. More information about the main thread can be found in 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. |
void onCreate ()
Called by the system when the service is first created. Do not call this method directly.
void onLaunchVoiceAssistFromKeyguard ()
Called when a user has activated an affordance to launch voice assist from the Keyguard.
This method will only be called if the VoiceInteractionService has set
supportsLaunchVoiceAssistFromKeyguard
and the Keyguard is showing.
A valid implementation must start a new activity that should use FLAG_SHOW_WHEN_LOCKED
to display
on top of the lock screen.
void onReady ()
Called during service initialization to tell you when the system is ready
to receive interaction from it. You should generally do initialization here
rather than in onCreate()
. Methods such as showSession(Bundle, int)
and
createAlwaysOnHotwordDetector(String, Locale, AlwaysOnHotwordDetector.Callback)
will not be operational until this point.
void onShutdown ()
Called during service de-initialization to tell you when the system is shutting the
service down.
At this point this service may no longer be the active VoiceInteractionService
.
void setDisabledShowContext (int flags)
Set contextual options you would always like to have disabled when a session
is shown. The flags may be any combination of
VoiceInteractionSession.SHOW_WITH_ASSIST
and
VoiceInteractionSession.SHOW_WITH_SCREENSHOT
.
Parameters | |
---|---|
flags |
int
|
void showSession (Bundle args, int flags)
Request that the associated VoiceInteractionSession
be
shown to the user, starting it if necessary.
Parameters | |
---|---|
args |
Bundle :
Arbitrary arguments that will be propagated to the session. |
flags |
int :
Indicates additional optional behavior that should be performed. May
be any combination of
VoiceInteractionSession.SHOW_WITH_ASSIST and
VoiceInteractionSession.SHOW_WITH_SCREENSHOT
to request that the system generate and deliver assist data on the current foreground
app as part of showing the session UI.
|
void dump (FileDescriptor fd, PrintWriter pw, String[] args)
Print the Service's state into the given stream. This gets invoked if
you run "adb shell dumpsys activity service <yourservicename>"
(note that for this command to work, the service must be running, and
you must specify a fully-qualified service name).
This is distinct from "dumpsys <servicename>", which only works for
named system services and which invokes the dump(FileDescriptor, String[])
method
on the IBinder
interface registered with ServiceManager.
Parameters | |
---|---|
fd |
FileDescriptor :
The raw file descriptor that the dump is being sent to. |
pw |
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.
|
Except as noted, this content is licensed under Apache 2.0. For details and restrictions, see the Content License.
Android 6.0 r1 —