Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.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
facebook accesstoken存储在SharedReferences(Android)中_Android_Facebook - Fatal编程技术网

facebook accesstoken存储在SharedReferences(Android)中

facebook accesstoken存储在SharedReferences(Android)中,android,facebook,Android,Facebook,我正在尝试存储facebook的accesstoken,以备将来使用。 为此,我想使用SharedReferences 因此,我得到了字符串部分(令牌)和过期日期,如示例所示: final String MY_PREFS_NAME = "MyPrefsFile"; mAccessToken = loginResult.getAccessToken(); SharedPreferences.Editor editor

我正在尝试存储facebook的accesstoken,以备将来使用。 为此,我想使用SharedReferences

因此,我得到了字符串部分(令牌)和过期日期,如示例所示:

                final String MY_PREFS_NAME = "MyPrefsFile";
            mAccessToken = loginResult.getAccessToken();
            SharedPreferences.Editor editor = getApplicationContext().getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE).edit();     
            editor.putString("access_token",mAccessToken.getToken());
            editor.putLong("access_expires", 0);
            editor.apply();
我相信这将在我的应用程序prefs中存储所需的部分。 然后我需要从prefs获取它并创建令牌

            final String MY_PREFS_NAMEX = "MyPrefsFile";
        SharedPreferences sharedPreferencesx = getApplicationContext().getSharedPreferences(MY_PREFS_NAME, Context.MODE_PRIVATE);
        String accessTokenString = sharedPreferencesx.getString("access_token","");
        Date accessTokenExpires = new Date(sharedPreferencesx.getLong("access_expires",0));
        AccessToken accessToken = ???

            session=Session.openActiveSessionWithAccessToken(this, accessToken, callback);
在这里,我不知道如何形成accesstoken和会话。我发现了一个声明:

            AccessToken accessToken = AccessToken.createFromExistingAccessToken(
            accessTokenString,
            accessTokenExpires,
            null,
            null,
            null);
但它不适用于当前的API/SDK

有什么想法吗


thx.

您能解释一下为什么createFromExistingAccessToken不工作吗?您是否得到空值作为响应?当你得到第一个访问令牌时,你在问什么权限?@jonathanrz它说“对于accesstoken类型,方法createFromExistingAccessToken是未定义的”你在使用什么版本的sdk?我记得它是4.19.0,但我如何检查?在你的gradle文件中