【发布时间】:2016-01-29 10:09:34
【问题描述】:
UWP 应用的应用数据存储在 C:\Users\[username]\AppData\Local\Packages\[package_id]
子文件夹 AC\Microsoft\CryptnetFlushCache\MetaData 似乎包含通过 HttpClient 安全访问的网站的记录。研究表明,此文件夹及其同级文件夹是 SSL/TLS 的缓存。
如何从我自己的程序中清除此缓存?
【问题讨论】:
UWP 应用的应用数据存储在 C:\Users\[username]\AppData\Local\Packages\[package_id]
子文件夹 AC\Microsoft\CryptnetFlushCache\MetaData 似乎包含通过 HttpClient 安全访问的网站的记录。研究表明,此文件夹及其同级文件夹是 SSL/TLS 的缓存。
如何从我自己的程序中清除此缓存?
【问题讨论】:
在UWP应用中,有ApplicationData相关的API,例如ApplicationData.ClearAsync方法,但它只能从本地、漫游和临时应用数据存储中删除所有应用数据。
我们可以使用Directory.Delete的方法删除这个AC文件夹。
例如:
public static void Clean()
{
try
{
StorageFolder localDirectory = ApplicationData.Current.LocalFolder;
string path = localDirectory.Path;
path = path.Substring(0, path.LastIndexOf("\\")) + @"\AC\Microsoft\CryptnetFlushCache\MetaData";
Directory.Delete(path, true);
}
catch (Exception ex)
{
Debug.WriteLine("ERROR CLEANING CACHE: " + ex.Message);
}
}
但是没有文档描述存储在此文件夹中的详细文件,因此这可能会导致您的应用出现意外行为/结果。
【讨论】: