thisリンクを参照すると、私は自分のアプリケーションにuber sdkを統合しました。私は自分のクライアントIDとクライアントの秘密を持つuber開発者サイトに自分のアプリケーションを登録しました。 UBER SDK androidでユーザーを認証する方法は?
は、私のアプリケーションクラスに以下のコードを追加しました:UberSdk.initialize(this, "MY_CLIENT_ID");
UberSdk.setRedirectUri( "MY_REDIRECT_URI");
UberSdk.setSandboxMode(true);
はその後、私のフラグメントに:
のOnCreate():
accessTokenManager = new AccessTokenManager(getContext());
loginManager = new LoginManager(accessTokenManager);
List<Scope> scopes = new ArrayList<Scope>();
scopes.add(Scope.PROFILE);
scopes.add(Scope.RIDE_WIDGETS);
Date expirationTime = new Date(System.currentTimeMillis());
String token = "Token";
AccessToken accessToken = new AccessToken(expirationTime, scopes, token);
accessTokenManager.setAccessToken(accessToken);
Log.d("ttt", "accessToken: " + accessTokenManager.getAccessToken());
loginManager.loginWithScopes(getActivity(), scopes);
onActivityResult():
LoginCallback loginCallback = new LoginCallback() {
@Override
public void onLoginCancel() {
// User canceled login
Log.d("ttt", " User canceled login ");
Toast.makeText(getContext(), "User canceled login", Toast.LENGTH_SHORT).show();
}
@Override
public void onLoginError(@NonNull AuthenticationError error) {
// Error occurred during login
Log.d("ttt", "Error occurred during login");
Toast.makeText(getContext(),"Error occurred during login",Toast.LENGTH_SHORT).show();
}
@Override
public void onLoginSuccess(@NonNull AccessToken accessToken) {
// Successful login! The AccessToken will have already been saved.
Log.d("ttt", "Successful login! ");
Toast.makeText(getContext(),"Successful login!",Toast.LENGTH_SHORT).show();
}
};
loginManager.onActivityResult(requestCode, resultCode, data, loginCallback);
私は、リダイレクトURIを追加する方法を見当がつかないと私が得るところからリダイレクトuri.Andそれは実際に何が使用されている(それが何をしてまだ明確ではない多くの検索)。
私がuber rideボタンをクリックすると、loginactivityに移動し、「あなたの認証に問題がありました」というポップアップが表示されます。
ここで私が間違っていることは誰でも修正できます。
おかげさまで、よろしくお願いいたします。
ありがとうtsmith ...これらのリンクは非常に役立ちます。 –