作者a020304888a (張小台)
看板AndroidDev
標題[問題] Dropbox OAuth的一些小問題
時間Mon Sep 1 21:48:36 2014
大家好 小弟我最近使用dropbox api
發現一個小問題
如圖
http://imgur.com/sIzISZh
就是每次執行程式都需要允許一下 希望可以只按一次
試了一些方法但沒辦法改善
所以想請問一下有使用過dropbox api的前輩
我是在第一次finishAuthentication後
將dropbox.getSession().getOAuth2AccessToken()存到String
在將String 存到偏好檔
然後之後使用這個app
在用dropbox.getSession().setOAuth2AccessToken(偏好檔所存的String)
但是這樣沒有用所以覺的怪怪的= =不知道哪裡錯了
簡易程式碼:
public void onCreate(Bundle savedInstanceState) {
//setting 是偏好設定檔的物件
setting = getSharedPreferences("PersonSetting", 0);
String accessToken = setting.getString("AccessToken", null);
AndroidAuthSession session = new AndroidAuthSession(new
AppKeyPair(ACCESS_KEY, ACCESS_SECRET));
dropbox = new DropboxAPI<AndroidAuthSession>(session);
if(accessToken == null){
dropbox.getSession().startOAuth2Authentication(MainActivity.this);
} else {
dropbox.getSession().setOAuth2AccessToken(accessToken);
}
}
protected void onResume() {
if (dropbox.getSession().authenticationSuccessful()) {
dropbox.getSession().finishAuthentication();
String accessToken = dropbox.getSession().getOAuth2AccessToken();
setting.edit()
.putString("AccessToken", accessToken)
.commit();
}
}
大概這樣 簡單說就是希望可以在程式跑第一次按允許後,之後就不需要了
以上 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.252.50.154
※ 文章網址: http://www.ptt.cc/bbs/AndroidDev/M.1409579319.A.AAB.html
※ 編輯: a020304888a (111.252.50.154), 09/01/2014 21:50:05
推 henry4343: 印象中就是把token存起來,然後判斷有沒有存token 09/01 22:57
→ henry4343: 有token的話就用token去new dropbox的物件 09/01 22:58
→ henry4343: 沒有的話才跑認證取token 09/01 22:58
→ a020304888a: 我覺的我現在就是用h大說的方法可是就怪怪的= = 09/01 23:44
推 luluking: 你確定onResume那段if有進去嗎 09/04 09:29
→ a020304888a: 有阿 跑下一次可以用log把token print 出來 09/04 15:52
推 henry4343: 那確定token有存進去? 09/05 16:01
我自己試了幾遍 應該是再第一次之後, token丟不進去session
可是不知道問題再哪= = 希望有經驗的高手可以請教一下
※ 編輯: a020304888a (111.252.54.65), 09/09/2014 15:34:17