Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/110.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在设备上存储密码_C#_Ios_Xamarin.ios_Xamarin - Fatal编程技术网

C# 在设备上存储密码

C# 在设备上存储密码,c#,ios,xamarin.ios,xamarin,C#,Ios,Xamarin.ios,Xamarin,我有一个按钮,你可以通过输入并重新输入来创建一个新密码 当两者相同时,密码应存储在手机的某个位置以供进一步使用 目前我可以忽略密码安全 在设备上存储和读取密码的最简单方法是什么 btnLogin.TouchUpInside += delegate { if(password.Exists /*My Isolated storage or password file*/){ ReturnToView(); } else{ new UIAlertView("Passw

我有一个按钮,你可以通过输入并重新输入来创建一个新密码
当两者相同时,密码应存储在手机的某个位置以供进一步使用

目前我可以忽略密码安全

在设备上存储和读取密码的最简单方法是什么

btnLogin.TouchUpInside += delegate {
    if(password.Exists /*My Isolated storage or password file*/){
        ReturnToView();
} else{
    new UIAlertView("Password doesn't exists", "Create a new password, to log in", null, "Ok").Show();
}

};
我尝试过类似的方法,但我不知道如何检查
.TXT
文件中是否存在密码

void CreateUser(){    
IsolatedStorageFile fileStorage = IsolatedStorageFile.GetUserStoreForApplication();
    StreamWriter Writer = new StreamWriter(new IsolatedStorageFileStream("Password.txt", FileMode.OpenOrCreate, fileStorage));

    btnCreateUser.TouchUpInside += delegate {
       if(txtPassword.Text == txtRepeat.Text && txtPassword.Text.Length == 4){
           GoBackToView(); //Login
           Writer.WriteLine(txtPassword.Text);
           Writer.Close();
      } //here comes my else function, but that's not important.
    };
}
之后,应在
.TXT
中创建密码。 在名为
Login()
的新方法中,我将执行此操作

IsolatedStorageFile fileStorage = IsolatedStorageFile.GetUserStoreForApplication();
StreamReader Reader = null;
try 
    {
    Reader = new StreamReader(new IsolatedStorageFileStream("Password.txt", FileMode.Open, fileStorage));
    Reader.Close();
    }
catch
    {
    MessageBox.Show("File it not created");
    }

在我的登录方法中的某个地方,我想检查在输入密码和按下登录按钮时是否创建了密码。

您可以将密码存储在NSUserDefaults中。只需创建下面的方法并将密码传递给此方法

-(void)storeLoginCredentials:(NSString*)password    {

    userDetails = [NSUserDefaults standardUserDefaults];
    [userDetails setObject:password forKey:@"password"];

    [userDetails synchronize];

}
然后,如果要检查用户是否登录,可以使用以下方法:

-(BOOL)checkUserSession {

    if ([userDetails objectForKey:@"password"]!= nil ) {
        return YES;
    } else {
        return NO;
    }

}
如果要注销用户,请使用以下方法

-(void)destroyLoginCredentials  {

    NSString *appDomain = [[NSBundle mainBundle] bundleIdentifier];
    [[NSUserDefaults standardUserDefaults] removePersistentDomainForName:appDomain];
}
你可以把密码当作密码

-(NSString *)passwordOfUser {

    return  [userDetails objectForKey:@"password"];
}

您可以将密码存储在NSUserDefaults中。只需创建下面的方法并将密码传递给此方法

-(void)storeLoginCredentials:(NSString*)password    {

    userDetails = [NSUserDefaults standardUserDefaults];
    [userDetails setObject:password forKey:@"password"];

    [userDetails synchronize];

}
然后,如果要检查用户是否登录,可以使用以下方法:

-(BOOL)checkUserSession {

    if ([userDetails objectForKey:@"password"]!= nil ) {
        return YES;
    } else {
        return NO;
    }

}
如果要注销用户,请使用以下方法

-(void)destroyLoginCredentials  {

    NSString *appDomain = [[NSBundle mainBundle] bundleIdentifier];
    [[NSUserDefaults standardUserDefaults] removePersistentDomainForName:appDomain];
}
你可以把密码当作密码

-(NSString *)passwordOfUser {

    return  [userDetails objectForKey:@"password"];
}

您可以将密码存储在NSUserDefaults中。只需创建下面的方法并将密码传递给此方法

-(void)storeLoginCredentials:(NSString*)password    {

    userDetails = [NSUserDefaults standardUserDefaults];
    [userDetails setObject:password forKey:@"password"];

    [userDetails synchronize];

}
然后,如果要检查用户是否登录,可以使用以下方法:

-(BOOL)checkUserSession {

    if ([userDetails objectForKey:@"password"]!= nil ) {
        return YES;
    } else {
        return NO;
    }

}
如果要注销用户,请使用以下方法

-(void)destroyLoginCredentials  {

    NSString *appDomain = [[NSBundle mainBundle] bundleIdentifier];
    [[NSUserDefaults standardUserDefaults] removePersistentDomainForName:appDomain];
}
你可以把密码当作密码

-(NSString *)passwordOfUser {

    return  [userDetails objectForKey:@"password"];
}

您可以将密码存储在NSUserDefaults中。只需创建下面的方法并将密码传递给此方法

-(void)storeLoginCredentials:(NSString*)password    {

    userDetails = [NSUserDefaults standardUserDefaults];
    [userDetails setObject:password forKey:@"password"];

    [userDetails synchronize];

}
然后,如果要检查用户是否登录,可以使用以下方法:

-(BOOL)checkUserSession {

    if ([userDetails objectForKey:@"password"]!= nil ) {
        return YES;
    } else {
        return NO;
    }

}
如果要注销用户,请使用以下方法

-(void)destroyLoginCredentials  {

    NSString *appDomain = [[NSBundle mainBundle] bundleIdentifier];
    [[NSUserDefaults standardUserDefaults] removePersistentDomainForName:appDomain];
}
你可以把密码当作密码

-(NSString *)passwordOfUser {

    return  [userDetails objectForKey:@"password"];
}
该文件可翻译为:

void StoreLoginCredentials(string password)
{
    var userDetails = NSUserDefaults.StandardUserDefaults;
    userDetails.SetString(password, "password");
    userDetails.Synchronize();
}

bool CheckUserSession()
{
    var userDetails = NSUserDefaults.StandardUserDefaults;
    return userDetails["password"] != null;
}

bool DestroyLoginCredentials()
{
    var defaults = NSUserDefaults.StandardUserDefaults;
    defaults.RemovePersistentDomain(NSBundle.MainBundle.BundleIdentifier);
    return defaults.Synchronize();
}

string PasswordOfUser()
{
    var userDetails = NSUserDefaults.StandardUserDefaults;
    return userDetails["password"];
}
该文件可翻译为:

void StoreLoginCredentials(string password)
{
    var userDetails = NSUserDefaults.StandardUserDefaults;
    userDetails.SetString(password, "password");
    userDetails.Synchronize();
}

bool CheckUserSession()
{
    var userDetails = NSUserDefaults.StandardUserDefaults;
    return userDetails["password"] != null;
}

bool DestroyLoginCredentials()
{
    var defaults = NSUserDefaults.StandardUserDefaults;
    defaults.RemovePersistentDomain(NSBundle.MainBundle.BundleIdentifier);
    return defaults.Synchronize();
}

string PasswordOfUser()
{
    var userDetails = NSUserDefaults.StandardUserDefaults;
    return userDetails["password"];
}
该文件可翻译为:

void StoreLoginCredentials(string password)
{
    var userDetails = NSUserDefaults.StandardUserDefaults;
    userDetails.SetString(password, "password");
    userDetails.Synchronize();
}

bool CheckUserSession()
{
    var userDetails = NSUserDefaults.StandardUserDefaults;
    return userDetails["password"] != null;
}

bool DestroyLoginCredentials()
{
    var defaults = NSUserDefaults.StandardUserDefaults;
    defaults.RemovePersistentDomain(NSBundle.MainBundle.BundleIdentifier);
    return defaults.Synchronize();
}

string PasswordOfUser()
{
    var userDetails = NSUserDefaults.StandardUserDefaults;
    return userDetails["password"];
}
该文件可翻译为:

void StoreLoginCredentials(string password)
{
    var userDetails = NSUserDefaults.StandardUserDefaults;
    userDetails.SetString(password, "password");
    userDetails.Synchronize();
}

bool CheckUserSession()
{
    var userDetails = NSUserDefaults.StandardUserDefaults;
    return userDetails["password"] != null;
}

bool DestroyLoginCredentials()
{
    var defaults = NSUserDefaults.StandardUserDefaults;
    defaults.RemovePersistentDomain(NSBundle.MainBundle.BundleIdentifier);
    return defaults.Synchronize();
}

string PasswordOfUser()
{
    var userDetails = NSUserDefaults.StandardUserDefaults;
    return userDetails["password"];
}


您可以使用NSUserDefaults,如果您的应用程序使用的是CoreData,您也可以使用它。您可以制作一个代码示例吗?无意冒犯,但堆栈溢出不是为了询问任何代码。请先自己试一试。如果你被困在什么地方,我们可以帮忙。如果我没说错的话,你想为一个应用程序建立一个登录系统,对吗?这是正确的,但我会尝试看看我是否能找到任何东西。你可以使用NSUserDefaults,如果你的应用程序使用的是CoreData,你也可以使用它。你能做一个代码示例吗?无意冒犯,但堆栈溢出不是为了询问任何代码。请先自己试一试。如果你被困在什么地方,我们可以帮忙。如果我没说错的话,你想为一个应用程序建立一个登录系统,对吗?这是正确的,但我会尝试看看我是否能找到任何东西。你可以使用NSUserDefaults,如果你的应用程序使用的是CoreData,你也可以使用它。你能做一个代码示例吗?无意冒犯,但堆栈溢出不是为了询问任何代码。请先自己试一试。如果你被困在什么地方,我们可以帮忙。如果我没说错的话,你想为一个应用程序建立一个登录系统,对吗?这是正确的,但我会尝试看看我是否能找到任何东西。你可以使用NSUserDefaults,如果你的应用程序使用的是CoreData,你也可以使用它。你能做一个代码示例吗?无意冒犯,但堆栈溢出不是为了询问任何代码。请先自己试一试。如果你被困在什么地方,我们可以帮忙。如果我没有错的话,你想为一个应用程序建立一个登录系统,对吗?这是正确的,但我会尝试看看我是否能找到任何东西。你能用本机做吗?我没有使用Xcode,很抱歉给您带来不便。您能用本机吗?我没有使用Xcode,很抱歉给您带来不便。您能用本机吗?我没有使用Xcode,很抱歉给您带来不便。您能用本机吗?我没有使用Xcode,很抱歉给您带来不便。