我正在尝试将fitbit授权与我的应用程序集成。目的是用户打开应用程序。登录即可,重定向到我的应用并继续工作(维护数据)
这是登录名
public void signIn(){
String url = "https://www.fitbit.com/oauth2/authorize?response_type=token&client_id="+mCtx.getString(R.string.fitbit_clientid)+"&redirect_uri=fitbit%3A%2F%2Flogincallback%2F&scope=nutrition&expires_in=20000";
/*CustomTabsIntent.Builder builder = new CustomTabsIntent.Builder();
CustomTabsIntent customTabsIntent = builder.build();
customTabsIntent.launchUrl(mCtx, Uri.parse(url));*/
Intent intent=new Intent(Intent.ACTION_VIEW, Uri.parse(url));
mCtx.startActivity(intent);
}
这是我在“简历”上的活动
protected void onResume() {
super.onResume();
String data = getIntent().getDataString();
Log.w(GlobalVar.TAG, "Data is: " + data);
}
这是我的清单
<activity android:name=".activities.MainActivity">
<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="fitbit" android:pathPattern=".*" android:host="logincallback" />
</intent-filter>
重定向URL导致创建新活动导致我丢失数据的问题。现在,如果我将Lunchmode设置为singleinstance,则onresume数据将为null(不发送重定向URL数据)
我该怎么办?