fix:增加使用登陆接口的scdUrl动态设置星图的url

This commit is contained in:
liyi 2025-02-12 09:16:00 +08:00
parent 05f9cad8c9
commit 7f0c1fca1d
4 changed files with 34 additions and 3 deletions

View File

@ -8,6 +8,7 @@ import 'package:star_lock/common/XSConstantMacro/XSConstantMacro.dart';
import 'package:star_lock/login/login/entity/LoginEntity.dart';
import 'package:star_lock/mine/mine/starLockMine_state.dart';
import 'package:star_lock/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_entity.dart';
import 'package:star_lock/network/start_chart_api.dart';
import 'package:star_lock/talk/starChart/entity/star_chart_register_node_entity.dart';
import 'package:star_lock/tools/baseGetXController.dart';
@ -61,6 +62,13 @@ class StarLockLoginLogic extends BaseGetXController {
//
if (entity.data!.starchart != null) {
final Starchart starChart = entity.data!.starchart!;
// url
if (starChart != null &&
starChart.scdUrl != null &&
starChart.scdUrl != '') {
StartChartApi.to.startChartHost =
starChart!.scdUrl ?? StartChartApi.to.startChartHost;
}
final StarChartRegisterNodeEntity starChartRegisterNodeEntity =
StarChartRegisterNodeEntity(
peer: PeerData(

View File

@ -148,16 +148,18 @@ class GoogleHome {
}
class Starchart {
String? scdUrl;
String? starchartId;
String? starchartPeerPublicKey;
String? starchartPeerPrivateKey;
Starchart(
{this.starchartId,
{this.scdUrl,this.starchartId,
this.starchartPeerPublicKey,
this.starchartPeerPrivateKey});
Starchart.fromJson(Map<String, dynamic> json) {
scdUrl = json['scdUrl'];
starchartId = json['starchartId'];
starchartPeerPublicKey = json['starchartPeerPublicKey'];
starchartPeerPrivateKey = json['starchartPeerPrivateKey'];
@ -165,6 +167,7 @@ class Starchart {
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = Map<String, dynamic>();
data['scdUrl'] = this.scdUrl;
data['starchartId'] = this.starchartId;
data['starchartPeerPublicKey'] = this.starchartPeerPublicKey;
data['starchartPeerPrivateKey'] = this.starchartPeerPrivateKey;

View File

@ -9,10 +9,18 @@ import 'package:star_lock/talk/starChart/entity/star_chart_register_node_entity.
class StartChartApi extends BaseProvider {
// url
final String _startChartHost = 'http://sls1-scd.star-lock.cn:8080';
String _startChartHost = 'http://sls1-scd.star-lock.cn:8080';
static StartChartApi get to => Get.put(StartChartApi());
// host
set startChartHost(String value) {
_startChartHost = value;
}
// host
String get startChartHost => _startChartHost;
// --
Future<StarChartRegisterNodeEntity> starChartRegisterNode({
required String product,

View File

@ -1,5 +1,7 @@
import 'package:flutter/widgets.dart';
import 'package:star_lock/network/start_chart_api.dart';
import 'package:star_lock/talk/starChart/star_chart_manage.dart';
import 'package:star_lock/tools/storage.dart';
class AppLifecycleObserver extends WidgetsBindingObserver {
@override
@ -28,9 +30,19 @@ class AppLifecycleObserver extends WidgetsBindingObserver {
StartChartManage().destruction();
}
void onAppResumed() {
void onAppResumed() async {
//
StartChartManage().init();
final loginData = await Storage.getLoginData();
// url
if (loginData != null &&
loginData?.starchart != null &&
loginData?.starchart?.scdUrl != null &&
loginData?.starchart?.scdUrl != '') {
StartChartApi.to.startChartHost =
loginData!.starchart!.scdUrl ?? StartChartApi.to.startChartHost;
}
print('App has resumed to the foreground.');
}