From 668bfeda359f7c9f0d419cef51608f7682310468 Mon Sep 17 00:00:00 2001 From: TQCasey <494294315@qq.com> Date: Sun, 15 Mar 2026 11:45:11 +0800 Subject: [PATCH] optm --- App.tsx | 19 ++++++++++++------- android/.idea/gradle.xml | 1 + servers/walletman | 2 +- services/api.ts | 28 ++++++++++++++++++++++++---- types.ts | 1 + 5 files changed, 39 insertions(+), 12 deletions(-) diff --git a/App.tsx b/App.tsx index 1e67520..d7a83c2 100644 --- a/App.tsx +++ b/App.tsx @@ -1,5 +1,5 @@ import React, { Component } from "react"; -import { Alert, AppState, AppStateStatus, Modal, Text, TextInput, TouchableOpacity, View } from "react-native"; +import { Alert, AppState, AppStateStatus, Modal, Switch, Text, TextInput, TouchableOpacity, View } from "react-native"; import DeviceInfo from 'react-native-device-info'; import { PhonePeBusinessBind, @@ -35,7 +35,7 @@ import { PaytmBusinessOTPBind, } from './components/WalletBindComponents'; -import Api, { loadServerDomain, saveServerDomain, getServerDomain } from './services/api'; +import Api, { loadServerDomain, saveServerDomain, getServerDomain, getUseHttps } from './services/api'; import { AppProps, WalletmanAppState } from './types'; import { styles } from './styles'; import WebView from "react-native-webview"; @@ -65,6 +65,7 @@ export default class App extends Component { showServerSettings: false, settingsHost: '', settingsPort: '', + settingsHttps: true, }; this.deviceId = DeviceInfo.getUniqueIdSync(); @@ -639,19 +640,19 @@ export default class App extends Component { const colonIdx = domain.lastIndexOf(':'); const host = colonIdx > 0 ? domain.substring(0, colonIdx) : domain; const port = colonIdx > 0 ? domain.substring(colonIdx + 1) : ''; - this.setState({ showServerSettings: true, settingsHost: host, settingsPort: port }); + this.setState({ showServerSettings: true, settingsHost: host, settingsPort: port, settingsHttps: getUseHttps() }); }; saveDomain = async () => { - const { settingsHost, settingsPort } = this.state; + const { settingsHost, settingsPort, settingsHttps } = this.state; const domain = settingsPort ? `${settingsHost}:${settingsPort}` : settingsHost; - await saveServerDomain(domain); + await saveServerDomain(domain, settingsHttps); this.setState({ showServerSettings: false }); Alert.alert('已保存', '重启 App 后生效'); }; renderServerSettingsModal() { - const { showServerSettings, settingsHost, settingsPort } = this.state; + const { showServerSettings, settingsHost, settingsPort, settingsHttps } = this.state; return ( @@ -668,12 +669,16 @@ export default class App extends Component { /> Port this.setState({ settingsPort: t })} placeholder="16000" keyboardType="number-pad" /> + + 使用 HTTPS / WSS + this.setState({ settingsHttps: v })} /> + this.setState({ showServerSettings: false })} style={{ paddingHorizontal: 16, paddingVertical: 8, marginRight: 10 }}> 取消 diff --git a/android/.idea/gradle.xml b/android/.idea/gradle.xml index 7e4816b..89fcd3b 100644 --- a/android/.idea/gradle.xml +++ b/android/.idea/gradle.xml @@ -22,6 +22,7 @@