嗨,我遵循fitbit文档将fitbit集成到我的应用程序中。我的问题是,一旦我对应用程序进行了身份验证,就意味着它没有将我重定向到我的Andropid活动。我出示密码
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String url = "https://www.fitbit.com/oauth2/authorize?response_type=code&client_id="
+ cliend id + "&redirect_uri=" + redirect_uri + "&scope=" + "activity";
Intent oauthIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(oauthIntent);
}
});
在我的清单上
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="MyExample4" />
</intent-filter>
这将我带到重定向页面。任何人都可以遇到此问题,请帮帮我。
最佳答案
我对fitbit不熟悉,但是从您的代码中可以看到,我可以说您的意图过滤器不完整。您可能应该使意图过滤器与您嵌入到身份验证URL中的redirect_uri
相匹配。
一旦实现了该功能,并且用户正确地进行了身份验证,浏览器将导航至redirect_uri
,并使用正确的intent-filter
您将能够在您的应用程序中将其打开。
代码可能如下:
将您的redirect_uri
设置为my-fitbit-app://my.fitbit.app/handle_auth
在您的intent-filter
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="my-fitbit-app" />
<data android:host="my.fitbit.app" />
<data android:path="/handle_auth" />
</intent-filter>
关于android - Android Fitbit整合,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37699950/