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,很抱歉给您带来不便。