diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..94a25f7
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index c2111d1..9c55eea 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -25,6 +25,6 @@ dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation rootProject.ext.dependencies.androidxappcompat
implementation rootProject.ext.dependencies.androidxconstraintlayout
-
+ implementation project(path: ':foudations:mogo-passport')
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 7c32bf6..fa86e94 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -9,13 +9,16 @@
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
-
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/java/com/mogo/cloud/PassPortActivity.java b/app/src/main/java/com/mogo/cloud/PassPortActivity.java
new file mode 100644
index 0000000..59ae8c8
--- /dev/null
+++ b/app/src/main/java/com/mogo/cloud/PassPortActivity.java
@@ -0,0 +1,72 @@
+package com.mogo.cloud;
+
+import android.os.Bundle;
+import android.view.View;
+import android.widget.Button;
+import android.widget.EditText;
+import android.widget.TextView;
+
+import androidx.appcompat.app.AppCompatActivity;
+
+import com.mogo.cloud.passport.IMoGoTokenCallback;
+import com.mogo.cloud.passport.MoGoAiCloudClient;
+import com.mogo.cloud.passport.MoGoAiCloudClientConfig;
+
+import static com.mogo.cloud.passport.MoGoAiCloudClientConfig.NET_MODE_QA;
+
+/**
+ * 鉴权sdk测试页面
+ */
+public class PassPortActivity extends AppCompatActivity {
+
+
+ private EditText etAppKey;
+ private EditText etDevicesId;
+ private EditText etSignSecret;
+ private Button btnRefreshToken;
+ private TextView tvSn;
+ private TextView tvToken;
+
+ private MoGoAiCloudClient mMoGoAiCloudClient;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_pass_port_actvity);
+ etAppKey = findViewById(R.id.etAppKey);
+ etDevicesId = findViewById(R.id.etDevicesId);
+ etSignSecret = findViewById(R.id.etSignSecret);
+ btnRefreshToken = findViewById(R.id.btnRefreshToken);
+ tvSn = findViewById(R.id.tvSn);
+ tvToken = findViewById(R.id.tvToken);
+
+ MoGoAiCloudClientConfig clientConfig = new MoGoAiCloudClientConfig();
+ clientConfig.setNetMode(NET_MODE_QA);
+ clientConfig.setThirdLogin(true);
+ clientConfig.setThirdPartyAppKey("f8xx");
+ clientConfig.setThirdPartyDeviceId("f8xx");
+ clientConfig.setThirdPartySignSecret("f8xx");
+ clientConfig.setThirdPartyAppKey("6bbe7e0e1ecd8e2f8dc336e1678a2791");
+
+ mMoGoAiCloudClient = MoGoAiCloudClient.getInstance().init(this,clientConfig);
+
+ btnRefreshToken.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ mMoGoAiCloudClient.refreshToken(new IMoGoTokenCallback() {
+ @Override
+ public void onTokenGot(String token, String sn) {
+ tvSn.setText(sn);
+ tvToken.setText(token);
+ }
+
+ @Override
+ public void onError(int code, String msg) {
+
+ }
+ });
+ }
+ });
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_pass_port_actvity.xml b/app/src/main/res/layout/activity_pass_port_actvity.xml
new file mode 100644
index 0000000..567b247
--- /dev/null
+++ b/app/src/main/res/layout/activity_pass_port_actvity.xml
@@ -0,0 +1,53 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/foudations/mogo-passport/src/main/java/com/mogo/cloud/passport/MoGoAiCloudClient.java b/foudations/mogo-passport/src/main/java/com/mogo/cloud/passport/MoGoAiCloudClient.java
index fc591be..7259275 100644
--- a/foudations/mogo-passport/src/main/java/com/mogo/cloud/passport/MoGoAiCloudClient.java
+++ b/foudations/mogo-passport/src/main/java/com/mogo/cloud/passport/MoGoAiCloudClient.java
@@ -44,11 +44,12 @@ public class MoGoAiCloudClient {
* @param context 上下文
* @param config 配置信息
*/
- public void init(Context context, MoGoAiCloudClientConfig config) {
+ public MoGoAiCloudClient init(Context context, MoGoAiCloudClientConfig config) {
mContext = context;
mConfig = config;
// 设置网络环境
LoginManager.getInstance(context).setNetEnviron(config.getNetMode());
+ return sInstance;
}
public MoGoAiCloudClientConfig getConfig() {
@@ -73,6 +74,10 @@ public class MoGoAiCloudClient {
tokenCallback.onTokenGot(result.token, result.sn);
}
+ if (mConfig != null) {
+ mConfig.sn = result.sn;
+ mConfig.token = result.token;
+ }
}
@Override
diff --git a/foudations/mogo-passport/src/main/java/com/mogo/cloud/passport/MoGoAiCloudClientConfig.java b/foudations/mogo-passport/src/main/java/com/mogo/cloud/passport/MoGoAiCloudClientConfig.java
index 778e75d..ce7c73e 100644
--- a/foudations/mogo-passport/src/main/java/com/mogo/cloud/passport/MoGoAiCloudClientConfig.java
+++ b/foudations/mogo-passport/src/main/java/com/mogo/cloud/passport/MoGoAiCloudClientConfig.java
@@ -49,8 +49,15 @@ public class MoGoAiCloudClientConfig {
*/
private boolean thirdLogin;
- private String token;
- private String sn;
+ /**
+ * 服务器分配给应用的令牌,用于网络请求校验
+ */
+ String token;
+
+ /**
+ * 服务器根据设备ID 分配的SN,用于网络请求校验
+ */
+ String sn;
public String getThirdPartyDeviceId() {
return thirdPartyDeviceId;
@@ -91,4 +98,12 @@ public class MoGoAiCloudClientConfig {
public void setNetMode(int sNetMode) {
this.sNetMode = sNetMode;
}
+
+ public String getToken() {
+ return token;
+ }
+
+ public String getSn() {
+ return sn;
+ }
}