Xamarin.forms 表单将用户保存在共享函数中

Xamarin.forms 表单将用户保存在共享函数中,xamarin.forms,xamarin.android,xamarin.ios,Xamarin.forms,Xamarin.android,Xamarin.ios,我用我创建的SharedFunctions界面在手机中保存了一个令牌 在IOS中: 在Android中: public void SaveAccessToken(string token) { var mSharedPrefs = PreferenceManager.GetDefaultSharedPreferences(Android.App.Application.Context); var mPrefsEditor = mSharedPrefs.Edit(); m

我用我创建的SharedFunctions界面在手机中保存了一个令牌 在IOS中:

在Android中:

public void SaveAccessToken(string token)
{
    var mSharedPrefs = PreferenceManager.GetDefaultSharedPreferences(Android.App.Application.Context);
    var mPrefsEditor = mSharedPrefs.Edit();

    mPrefsEditor.PutString("AccessToken", token);
    mPrefsEditor.Commit();
    mPrefsEditor.Dispose();
    mSharedPrefs.Dispose();
}
我还想保存一个对象而不是一个字符串。

看一看,似乎写一个对象有点受限,因此我建议您换一种方式:使用Newtonsoft.JSON(或另一个JSON库)序列化对象,然后写序列化的对象

对于iOS:

public void SaveAccessToken(字符串键,T值)
{
var serializedObject=JsonConvert.SerializeObject(值);
NSUserDefaults.StandardUserDefaults.SetString(serializedObject,键);
}
Android也是如此

public void SaveAccessToken(字符串键,T值)
{
var serializedObject=JsonConvert.SerializeObject(值);
var mSharedPrefs=PreferenceManager.getDefaultSharedReferences(Android.App.Application.Context);
var mPrefsEditor=mSharedPrefs.Edit();
mPrefsEditor.PutString(serializedObject,key);
mPrefsEditor.Commit();
mPrefsEditor.Dispose();
mSharedPrefs.Dispose();
}

您的问题是什么?我在示例中保存了字符串。但在另一个函数中,我想保存object,很高兴我能提供帮助:)
public void SaveAccessToken(string token)
{
    var mSharedPrefs = PreferenceManager.GetDefaultSharedPreferences(Android.App.Application.Context);
    var mPrefsEditor = mSharedPrefs.Edit();

    mPrefsEditor.PutString("AccessToken", token);
    mPrefsEditor.Commit();
    mPrefsEditor.Dispose();
    mSharedPrefs.Dispose();
}