C# 如何在UWP中获取Windows应用商店(非本地)帐户名?
我目前正在开发一个UWP应用程序,我想从商店中获取用户名(用于分析) 我想将其保存在数据库中,并在应用程序打开时更新日期时间,这将为我提供应用程序见解。如何在Windows应用商店帐户上获取用户名(或将用户与其他用户分开的唯一ID)。 我不想保存本地帐户名,正如其他问题中所描述的那样。C# 如何在UWP中获取Windows应用商店(非本地)帐户名?,c#,uwp,C#,Uwp,我目前正在开发一个UWP应用程序,我想从商店中获取用户名(用于分析) 我想将其保存在数据库中,并在应用程序打开时更新日期时间,这将为我提供应用程序见解。如何在Windows应用商店帐户上获取用户名(或将用户与其他用户分开的唯一ID)。 我不想保存本地帐户名,正如其他问题中所描述的那样。 提前感谢。使用ApplicationData.Current.RoamingFolder存储要为用户保留的信息。为了能够区分不同的用户,请将唯一的id保存到此文件夹,这样您就可以开始了 public async
提前感谢。使用
ApplicationData.Current.RoamingFolder
存储要为用户保留的信息。为了能够区分不同的用户,请将唯一的id保存到此文件夹,这样您就可以开始了
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);
}
}
公共异步任务GetUserIdAsync()
{
var fileName=“user\u id”;
var folder=ApplicationData.Current.RoamingFolder;
var file=await folder.TryGetItemAsync(文件名);
if(file==null)
{
//如果文件不存在,我们将创建一个新的guid
var storageFile=await folder.CreateFileAsync(文件名);
var newId=Guid.NewGuid().ToString();
wait FileIO.WriteTextAsync(storageFile,newId);
返回newId;
}
其他的
{
//否则我们将返回已经存在的guid
var storageFile=await folder.GetFileAsync(文件名);
返回wait FileIO.ReadTextAsync(存储文件);
}
}
您可以将包含唯一ID的文件保存到
ApplicationData.Current.RoamingFolder
文件夹中。此文件夹跨同一用户的所有设备同步,因此允许您进行查看。如果你想要一个库来为你提供洞察,你也可以查看hockeyapp(),希望它能支持uwp应用,因为我认为它是hockeyapp的下一个级别,所以我现在将把这些数据写入数据库。此外,在文档中搜索“ApplicationData.Current.RoamingFolder”似乎不会返回唯一的内容。你知道我应该使用哪种财产吗?谢谢它只是一个普通的文件夹;因此,您可以创建一个文件user\u id
,用Guid填充该文件以标识您的用户。我要做一个简短的例子,把它作为答案贴出来,把它标记为答案!谢谢,谢谢,谢谢!!!