UserActivityChannel.GetSessionHistoryItemsForUserActivityAsync Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém o histórico de sessão de uma atividade do usuário.
public:
virtual IAsyncOperation<IVector<UserActivitySessionHistoryItem ^> ^> ^ GetSessionHistoryItemsForUserActivityAsync(Platform::String ^ activityId, DateTime startTime) = GetSessionHistoryItemsForUserActivityAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<IVector<UserActivitySessionHistoryItem>> GetSessionHistoryItemsForUserActivityAsync(winrt::hstring const& activityId, DateTime const& startTime);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<IList<UserActivitySessionHistoryItem>> GetSessionHistoryItemsForUserActivityAsync(string activityId, System.DateTimeOffset startTime);
function getSessionHistoryItemsForUserActivityAsync(activityId, startTime)
Public Function GetSessionHistoryItemsForUserActivityAsync (activityId As String, startTime As DateTimeOffset) As IAsyncOperation(Of IList(Of UserActivitySessionHistoryItem))
Parâmetros
- activityId
-
String
Platform::String
winrt::hstring
Identifica a atividade do usuário para a qual obter o histórico de sessão.
- startTime
- DateTime DateTimeOffset
Obtenha sessões de atividade do usuário que estavam ativas entre startTime e agora.
Retornos
Uma lista de objetos de sessão de atividade do usuário que estavam ativos durante o tempo especificado para a atividade de usuário especificada.
- Atributos
Requisitos do Windows
Família de dispositivos |
Windows 10, version 1803 (introduzida na 10.0.17134.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduzida na v6.0)
|
Exemplos
private async void GetMostRecentActivity()
{
UserActivityChannel channel = UserActivityChannel.GetDefault();
// Gets the 10 most recently engaged UserActivity objects, sorted by engagement EndTime (null EndTimes sort first)
IList<UserActivitySessionHistoryItem> recentActivity = await channel. GetRecentUserActivitiesAsync(maxUniqueActivities: 10);
foreach (var activity in recentActivity)
{
var engagements = await channel.GetSessionHistoryItemsForUserActivityAsync(activity.UserActivity.ActivityId, new DateTimeOffset(DateTime.Now, TimeSpan.FromDays(1)));
long totalEngagementTime = 0;
foreach(var e in engagements)
{
if (e.EndTime != null) // EndTime may be null for active UserActivities
{
totalEngagementTime += e.EndTime.Value.Ticks - e.StartTime.Ticks);
}
// App specific code to display the activity engagement time
}
}
}