UserActivityChannel.GetSessionHistoryItemsForUserActivityAsync Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan riwayat sesi untuk aktivitas pengguna.
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))
Parameter
- activityId
-
String
Platform::String
winrt::hstring
Mengidentifikasi aktivitas pengguna untuk mendapatkan riwayat sesi.
- startTime
- DateTime DateTimeOffset
Dapatkan sesi aktivitas pengguna yang aktif antara startTime dan sekarang.
Mengembalikan
Daftar objek sesi aktivitas pengguna yang aktif selama waktu yang ditentukan untuk aktivitas pengguna yang ditentukan.
- Atribut
Persyaratan Windows
Rangkaian perangkat |
Windows 10, version 1803 (diperkenalkan dalam 10.0.17134.0)
|
API contract |
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v6.0)
|
Contoh
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
}
}
}