如何在UWP中获取Windows Store(非本地)帐户名称?

时间:2017-04-08 11:55:53

标签: c# uwp

我目前正在开发一个UWP应用程序,我希望从商店(用于分析)获取用户的名称。

我想将其保存在数据库中并在应用打开时更新DateTime,这将为我提供应用洞察。如何在Windows应用商店帐户中获取用户名(或将用户与其他用户分开的唯一ID)。 我不想保存本地帐户名称,正如其他问题所述。 提前谢谢。

1 个答案:

答案 0 :(得分:1)

使用ApplicationData.Current.RoamingFolder存储您要为用户保留的信息。为了能够区分不同的用户,将唯一的ID保存到此文件夹中,您就可以了![/ p>

public async Task<string> GetUserIdAsync()
{
    var fileName = "user_id";
    var folder = ApplicationData.Current.RoamingFolder;
    var file = await folder.TryGetItemAsync(fileName);
    if (file == null)
    {
        //if file does not exist we create a new guid
        var storageFile = await folder.CreateFileAsync(fileName);
        var newId = Guid.NewGuid().ToString();
        await FileIO.WriteTextAsync(storageFile, newId);
        return newId;
    }
    else
    {
        //else we return the already exising guid
        var storageFile = await folder.GetFileAsync(fileName);
        return await FileIO.ReadTextAsync(storageFile);
    }
}