UserActions

public abstract class UserActions extends Object

Provides methods for logging actions that the user takes in the app.

This is a simple example for logging that the user has started to view an article:

UserActions.getInstance(getApplicationContext()).start(
   Actions.newView(
     "Index your app with Google App Index",
     "//example.net/articles/02101984.html"));
 

Constant Summary

String APP_INDEXING_API_TAG The tag used for logging debug information for calls to UserActions class.

Public Constructor Summary

Public Method Summary

abstract Task<Void>
end(Action action)
Logs that the user has stopped doing something in the app.
synchronized static UserActions
getInstance(Context context)
Returns an instance of UserActions.
abstract Task<Void>
start(Action action)
Logs that the user has started doing something in the app.

Inherited Method Summary

Constants

public static final String APP_INDEXING_API_TAG

The tag used for logging debug information for calls to UserActions class.

To enable logging:
adb shell setprop log.tag.UserActions DEBUG

Constant Value: "UserActions"

Public Constructors

public UserActions ()

Public Methods

public abstract Task<Void> end (Action action)

Logs that the user has stopped doing something in the app.

Use this method for a user action of some duration that has come to an end, like when the user has finished viewing an article or stopped listening to a song, as well as for instantaneous actions the user has taken, such as sending a message or adding a song to a playlist. For these instantaneous actions, don't call start(Action) at all, but just end(Action).

Parameters
action The Action describing either the instantaneous action the user has just taken, or the more long-lived activity the user has stopped doing in the app; for the latter start(Action) should be called before calling end(Action).
Returns
  • A Task indicating the result of the operation.

public static synchronized UserActions getInstance (Context context)

Returns an instance of UserActions.

This variant does not require Firebase initialization. Instead, the application context is inferred from the context that is explicitly passed in.

public abstract Task<Void> start (Action action)

Logs that the user has started doing something in the app.

Use this method for a user action of some duration, like viewing an article, or listening to a song. If the action is instantaneous, such as sending a message or adding a song to a playlist, then make a single call to end(Action) instead.

Parameters
action The Action describing what the user has started doing in the app.
Returns
  • A Task indicating the result of the operation.