0

我正在寻找一种更安全的方式来在设备上保持用户特定信息的登录状态,我想确保无法检索到这些信息。我发现了一个解决方案,即````````````````````在Android设备上保存用户特定数据/访问令牌的安全方式

 var personalData = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal); 
     if (!Directory.Exists(personalData)) 
     { 
      Console.WriteLine("Directory does not exist."); 
     } 
     else 
     { 
      Console.WriteLine("Directory exists."); 
      File.AppendAllText(personalData + @"/" + filename, String.Format("{0}={1}", key, value)); 
     }` 

这是做我想做的正确方法吗?或者我应该考虑SQL Lite? 任何人都可以请指导,我只是初学android/Xamarin。

回答

0

如果你想要一些非常快速和跨平台的东西,我会建议这个插件:https://github.com/sameerkapps/SecureStorage。 它使用Android上的KeyStore和iOS中的Key-chain来保存数据。

我在Android和iOS中使用它没有问题。实现不到5分钟,我用它来存储我的oAuth2流的访问令牌。 缺点是您需要对安全密码进行硬编码,这是某人可以进行反向工程以访问您的数据。解决这个问题的办法(如果你真的需要这种安全级别的话)就是每次会话从服务器检索一次安全密钥,但是当设备网络不可用时这可能是个问题。

+0

谢谢,这真的很有帮助 –

+0

@Mayayab你应该在正确的时候选择正确的答案:) – xleon