アプリケーションでドロップボックスを使用したい。ファイルをアップロードおよびダウンロードするためのサンプルアプリケーションを開発し、認証を要求します。
しかし、ログインポップアップを開きたくありません。
デフォルトのアカウント(シングルアカウント)のログイン詳細を使用して、他のユーザーがドロップボックスにアクセスすることは可能ですか?したがって、どのユーザーもログインポップアップなしでdropboxを直接使用できます。
アプリケーションでドロップボックスを使用したい。ファイルをアップロードおよびダウンロードするためのサンプルアプリケーションを開発し、認証を要求します。
しかし、ログインポップアップを開きたくありません。
デフォルトのアカウント(シングルアカウント)のログイン詳細を使用して、他のユーザーがドロップボックスにアクセスすることは可能ですか?したがって、どのユーザーもログインポップアップなしでdropboxを直接使用できます。
アクセスユーザーアクセストークンペアを手動で設定する方法。
AppKeyPair appKeys = new AppKeyPair(APP_KEY, APP_SECRET);
AndroidAuthSession session = new AndroidAuthSession(appKeys, ACCESS_TYPE);
if (mDBApi == null) {
mDBApi = new DropboxAPI<AndroidAuthSession>(session);
// mDBApi.getSession().startAuthentication(Main.this); //kicks off the web-based authentication
//you'll have to use the web-based authentication UI one-time to get the ######### values
String token_key="#########";
String token_seceret="#########";
AccessTokenPair tokens=new AccessTokenPair(token_key,token_seceret);
mDBApi.getSession().setAccessTokenPair(tokens);
// boolean v=mDBApi.getSession().authenticationSuccessful();
}
ブレークポイントを使用してデバッグモードでアプリケーションを初めて実行するときは、有効なログを詳細に入力してトークンキーとトークンシークレットを取得し、そのクレデンシャルを保存(メモ)してから、上記のコードのように手動で設定すると、正常にログインできます。
はい。彼らのサンプルアプリDBRouletteを見てください。
以下のリンク名からDBRouletteとしてプロジェクトをダウンロードしてください
そして、https: //www.dropbox.com/developersでアプリを作成し、APIキーとシークレットを取得して、これをDBRoulette.javaとAndroidManifest.xmlの両方に追加します...動作します。
onCreate()に書き込みます
AppKeyPair pair = new AppKeyPair(ACCESS_KEY, ACCESS_SECRET);
session = new AndroidAuthSession(pair, AccessType.APP_FOLDER);
dropbox = new DropboxAPI<AndroidAuthSession>(session);
SharedPreferences prefs = getSharedPreferences(DROPBOX_NAME, 0);
String key = prefs.getString(ACCESS_KEY, null);
String secret = prefs.getString(ACCESS_SECRET, null);
if (key != null && secret != null) {
Log.d("key secret", key + " " + secret);
AccessTokenPair token = new AccessTokenPair(key, secret);
dropbox.getSession().setAccessTokenPair(token);
}
if (key == null && secret == null)
dropbox.getSession().startAuthentication(DropboxActivity.this);
そしてonResume()に書き込みます
if (dropbox.getSession().isLinked()) {
try {
loggedIn(true);
doAction();
} catch (IllegalStateException e) {
Toast.makeText(this, "Error during Dropbox authentication",
Toast.LENGTH_SHORT).show();
}
} else if (dropbox.getSession().authenticationSuccessful()) {
try {
session.finishAuthentication();
TokenPair tokens = session.getAccessTokenPair();
SharedPreferences prefs = getSharedPreferences(DROPBOX_NAME, 0);
Editor editor = prefs.edit();
editor.putString(ACCESS_KEY, tokens.key);
editor.putString(ACCESS_SECRET, tokens.secret);
editor.commit();
loggedIn(true);
doAction();
} catch (IllegalStateException e) {
Toast.makeText(this, "Error during Dropbox authentication",
Toast.LENGTH_SHORT).show();
}
}
それは私にとってはうまくいきました