【问题标题】:How to track the accessToken facebook in many activities如何在许多活动中跟踪 accessToken facebook
【发布时间】:2015-10-08 10:36:57
【问题描述】:

假设我们有 2 个活动 A 和 B。A 是主要活动,它登录到 facebook 并使用 AccessTokenTracker 类跟踪访问令牌。根据文档,系统应该在活动 A 的 onDestroy() 方法中停止跟踪令牌。问题是我也想在活动 B 中继续跟踪 accessToken。 Activity B 也需要 accessToken 来调用图 API。如果 Activity B 中的 token 过期,我们如何跟踪它?

【问题讨论】:

    标签: android facebook facebook-graph-api access-token


    【解决方案1】:

    如果您需要在活动之间共享参数,有几种方法。单例是比较简​​单的一种:

    class DataHolder{
    
        private AccessToken ac;
    
        void setToken (AccessToken ac)
          {
           this.ac = ac;
          }
    
        AccessToken getToken()
          {
            return ac;
          }
    
    }
    

    如果您想了解更多详情,请阅读this

    【讨论】:

    • 我不想将数据从活动传递到活动。我想在活动 B 时跟踪 accessToken。如果访问令牌在活动 B 上过期,我需要跟踪它并获取新的访问令牌。
    【解决方案2】:

    保存到SharedPreferences怎么样?

    SharedPreferences preferences = getSharedPreferences(PREFS_NAME, MODE_PRIVATE);
    preferences.edit().putString(TOKEN, token).apply();
    

    【讨论】:

    • @matfred 但访问令牌不是字符串。我认为即使我们使用 AccessToken.getToken() 将其更改为字符串,我们也无法稍后在下一个活动中将其更改为 accessToken。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-31
    • 2019-01-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多