修改初始化的时候回调的监听
This commit is contained in:
1
.idea/gradle.xml
generated
1
.idea/gradle.xml
generated
@@ -23,7 +23,6 @@
|
||||
</set>
|
||||
</option>
|
||||
<option name="resolveModulePerSourceSet" value="false" />
|
||||
<option name="useQualifiedModuleNames" value="true" />
|
||||
</GradleProjectSettings>
|
||||
</option>
|
||||
</component>
|
||||
|
||||
@@ -29,21 +29,9 @@ public class MainActivity extends AppCompatActivity {
|
||||
tvSn = findViewById(R.id.tvSn);
|
||||
tvToken = findViewById(R.id.tvToken);
|
||||
|
||||
initPassportInfo();
|
||||
|
||||
btnJumpPassPort = findViewById(R.id.btnJumpPassPort);
|
||||
btnJumpPassPort.setOnClickListener(v -> {
|
||||
MoGoAiCloudClient.getInstance().refreshToken(new IMoGoTokenCallback() {
|
||||
@Override
|
||||
public void onTokenGot(String token, String sn) {
|
||||
initPassportInfo();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(int code, String msg) {
|
||||
|
||||
}
|
||||
});
|
||||
MoGoAiCloudClient.getInstance().refreshToken();
|
||||
});
|
||||
|
||||
btnJumpNetWorkPort = findViewById(R.id.btnJumpNetWorkPort);
|
||||
@@ -57,6 +45,18 @@ public class MainActivity extends AppCompatActivity {
|
||||
Intent intent = new Intent(MainActivity.this, RealTimeActivity.class);
|
||||
startActivity(intent);
|
||||
});
|
||||
|
||||
MoGoAiCloudClient.getInstance().addTokenCallbacks(new IMoGoTokenCallback() {
|
||||
@Override
|
||||
public void onTokenGot(String token, String sn) {
|
||||
initPassportInfo();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(int code, String msg) {
|
||||
initPassportInfo();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -5,17 +5,22 @@ import androidx.multidex.MultiDexApplication;
|
||||
import com.mogo.cloud.httpdns.MogoHttpDnsConfig;
|
||||
import com.mogo.cloud.httpdns.bean.HttpDnsSimpleLocation;
|
||||
import com.mogo.cloud.httpdns.listener.IHttpDnsCurrentLocation;
|
||||
import com.mogo.cloud.passport.IMoGoTokenCallback;
|
||||
import com.mogo.cloud.passport.MoGoAiCloudClient;
|
||||
import com.mogo.cloud.passport.MoGoAiCloudClientConfig;
|
||||
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Random;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public class MoGoApplication extends MultiDexApplication {
|
||||
|
||||
|
||||
@Override
|
||||
public void onCreate() {
|
||||
super.onCreate();
|
||||
@@ -40,7 +45,7 @@ public class MoGoApplication extends MultiDexApplication {
|
||||
// 设置从蘑菇AI开放平台获取的APPKey
|
||||
clientConfig.setThirdPartyAppKey("bydauto");
|
||||
// 设置车机设备的唯一标识(这些表识必须是通过后台录入的设备)
|
||||
clientConfig.setThirdPartyDeviceId("F803EB2046PZD00149");
|
||||
clientConfig.setThirdPartyDeviceId("bydauto");
|
||||
// 设置循环检测间隔时间
|
||||
clientConfig.setLoopCheckDelay(15 * 1000);
|
||||
|
||||
@@ -54,7 +59,8 @@ public class MoGoApplication extends MultiDexApplication {
|
||||
});
|
||||
|
||||
// 初始化SDK,可以设置状态回调来监听
|
||||
MoGoAiCloudClient.getInstance().init(this, clientConfig, null);
|
||||
MoGoAiCloudClient.getInstance().init(
|
||||
this, clientConfig);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,6 +14,9 @@ import com.zhidao.thirdlogin.model.ThirdLoginParam;
|
||||
import com.zhidao.thirdlogin.model.TokenData;
|
||||
import com.zhidao.thirdlogin.network.LoginCallback;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 蘑菇AI云平台SDK入口
|
||||
*/
|
||||
@@ -26,9 +29,10 @@ public class MoGoAiCloudClient {
|
||||
private MogoHttpDnsConfig mHttpDnsConfig;
|
||||
private Context mContext;
|
||||
|
||||
private List<IMoGoTokenCallback> mTokenCallbacks;
|
||||
|
||||
private MoGoAiCloudClient() {
|
||||
|
||||
mTokenCallbacks = new ArrayList<>();
|
||||
}
|
||||
|
||||
@Keep
|
||||
@@ -51,13 +55,12 @@ public class MoGoAiCloudClient {
|
||||
* @param tokenCallback 获取令牌回调,使用端可根据回调的方法判断是否获取令牌成功,可为空
|
||||
*/
|
||||
public MoGoAiCloudClient init(Context context,
|
||||
MoGoAiCloudClientConfig aiCloudClientConfig,
|
||||
final IMoGoTokenCallback tokenCallback
|
||||
MoGoAiCloudClientConfig aiCloudClientConfig
|
||||
) {
|
||||
mContext = context;
|
||||
mAiCloudClientConfig = aiCloudClientConfig;
|
||||
// 刷新令牌
|
||||
refreshToken(tokenCallback);
|
||||
refreshToken();
|
||||
return sInstance;
|
||||
}
|
||||
|
||||
@@ -69,7 +72,7 @@ public class MoGoAiCloudClient {
|
||||
return mAiCloudClientConfig;
|
||||
}
|
||||
|
||||
public void refreshToken(final IMoGoTokenCallback tokenCallback) {
|
||||
public void refreshToken() {
|
||||
if (mAiCloudClientConfig != null) {
|
||||
ThirdLoginParam thirdLoginParam = ThirdLoginParam.of(
|
||||
mAiCloudClientConfig.getThirdPartyDeviceId(),
|
||||
@@ -91,17 +94,17 @@ public class MoGoAiCloudClient {
|
||||
// 本地存储
|
||||
SpStorage.setSn(result.sn);
|
||||
SpStorage.setToken(result.token);
|
||||
|
||||
if (tokenCallback != null) {
|
||||
tokenCallback.onTokenGot(result.token, result.sn);
|
||||
}
|
||||
|
||||
// 变量赋值
|
||||
if (mAiCloudClientConfig != null) {
|
||||
mAiCloudClientConfig.sn = result.sn;
|
||||
mAiCloudClientConfig.token = result.token;
|
||||
}
|
||||
|
||||
// 循环调用将数据传出去
|
||||
for (IMoGoTokenCallback tokenCallback : mTokenCallbacks) {
|
||||
tokenCallback.onTokenGot(result.token, result.sn);
|
||||
}
|
||||
|
||||
// 初始化HttpDNS
|
||||
mHttpDnsConfig =
|
||||
new MogoHttpDnsConfig()
|
||||
@@ -122,7 +125,12 @@ public class MoGoAiCloudClient {
|
||||
Log.e(TAG, "║ ErrorCode:" + code);
|
||||
Log.e(TAG, "║ ErrorMessage:" + msg);
|
||||
Log.e(TAG, "═════════════════════════════════════");
|
||||
if (tokenCallback != null) {
|
||||
// 变量赋值
|
||||
if (mAiCloudClientConfig != null) {
|
||||
mAiCloudClientConfig.sn = "";
|
||||
mAiCloudClientConfig.token = "";
|
||||
}
|
||||
for (IMoGoTokenCallback tokenCallback : mTokenCallbacks) {
|
||||
tokenCallback.onError(code, msg);
|
||||
}
|
||||
}
|
||||
@@ -157,5 +165,15 @@ public class MoGoAiCloudClient {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加Token 回调
|
||||
*
|
||||
* @param iMoGoTokenCallback 回调监听
|
||||
*/
|
||||
public void addTokenCallbacks(IMoGoTokenCallback iMoGoTokenCallback) {
|
||||
if (mTokenCallbacks != null) {
|
||||
mTokenCallbacks.add(iMoGoTokenCallback);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user