1
0
Code Issues Pull Requests Packages Projects Releases Wiki Activity GitHub Gitee

fix a wrong dep

This commit is contained in:
sunnylqm 2024-03-08 16:04:16 +08:00
parent e39d4fa370
commit 2df04cb377
No known key found for this signature in database
2 changed files with 71 additions and 58 deletions

View File

@ -19,8 +19,7 @@ const UUID = '00000000-0000-0000-0000-000000000000';
const DownloadUrl = const DownloadUrl =
'http://cos.pgyer.com/697913e94d7441f20c686e2b0996a1aa.apk?sign=7a8f11b1df82cba45c8ac30b1acec88c&t=1680404102&response-content-disposition=attachment%3Bfilename%3DtestHotupdate_1.0.apk'; 'http://cos.pgyer.com/697913e94d7441f20c686e2b0996a1aa.apk?sign=7a8f11b1df82cba45c8ac30b1acec88c&t=1680404102&response-content-disposition=attachment%3Bfilename%3DtestHotupdate_1.0.apk';
const CustomDialog = ({title, visible, onConfirm}) => {
const CustomDialog = ({title, visible, onConfirm}) => {
if (!visible) { if (!visible) {
return null; return null;
} }
@ -29,13 +28,16 @@ const DownloadUrl =
<View style={styles.overlay}> <View style={styles.overlay}>
<View style={styles.dialog}> <View style={styles.dialog}>
<Text style={styles.title}>{title}</Text> <Text style={styles.title}>{title}</Text>
<TouchableOpacity testID='done' style={styles.button} onLongPress={onConfirm}> <TouchableOpacity
testID="done"
style={styles.button}
onLongPress={onConfirm}>
<Text style={styles.buttonText}>确认</Text> <Text style={styles.buttonText}>确认</Text>
</TouchableOpacity> </TouchableOpacity>
</View> </View>
</View> </View>
); );
}; };
export default function TestConsole({visible}) { export default function TestConsole({visible}) {
const [text, setText] = useState(''); const [text, setText] = useState('');
const [running, setRunning] = useState(false); const [running, setRunning] = useState(false);
@ -132,8 +134,7 @@ export default function TestConsole({visible}) {
testID={NativeTestMethod[i].name} testID={NativeTestMethod[i].name}
onLongPress={() => { onLongPress={() => {
NativeTestMethod[i].invoke(); NativeTestMethod[i].invoke();
}} }}>
>
<Text>{NativeTestMethod[i].name}</Text> <Text>{NativeTestMethod[i].name}</Text>
</TouchableOpacity>, </TouchableOpacity>,
); );
@ -164,8 +165,14 @@ export default function TestConsole({visible}) {
/> />
{running && <ActivityIndicator />} {running && <ActivityIndicator />}
<TouchableOpacity <TouchableOpacity
style={{backgroundColor:'rgb(0,140,237)', justifyContent: 'center', style={{
alignItems: 'center',paddingTop:10,paddingBottom:10,marginBottom:5}} backgroundColor: 'rgb(0,140,237)',
justifyContent: 'center',
alignItems: 'center',
paddingTop: 10,
paddingBottom: 10,
marginBottom: 5,
}}
testID="submit" testID="submit"
onLongPress={async () => { onLongPress={async () => {
setRunning(true); setRunning(true);
@ -190,21 +197,22 @@ export default function TestConsole({visible}) {
} }
setAlertVisible(true); setAlertVisible(true);
setAlertMsg('done'); setAlertMsg('done');
} catch (e: any) { } catch (e) {
setAlertVisible(true); setAlertVisible(true);
setAlertMsg(e.message); setAlertMsg(e.message);
} }
setRunning(false); setRunning(false);
}} }}>
> <Text style={{color: 'white'}}>执行</Text>
<Text style={{color:'white'}}>执行</Text>
</TouchableOpacity> </TouchableOpacity>
<Button title="重置" onPress={() => setText('')} /> <Button title="重置" onPress={() => setText('')} />
{renderTestView()} {renderTestView()}
<CustomDialog <CustomDialog
title={alertMsg} title={alertMsg}
visible={alertVisible} visible={alertVisible}
onConfirm={()=>{setAlertVisible(false)}} onConfirm={() => {
setAlertVisible(false);
}}
/> />
</SafeAreaView> </SafeAreaView>
</Modal> </Modal>

View File

@ -32,6 +32,7 @@ export const PushyProvider = ({
const { options } = client; const { options } = client;
const stateListener = useRef<NativeEventSubscription>(); const stateListener = useRef<NativeEventSubscription>();
const [updateInfo, setUpdateInfo] = useState<CheckResult>(); const [updateInfo, setUpdateInfo] = useState<CheckResult>();
const updateInfoRef = useRef(updateInfo);
const [progress, setProgress] = useState<ProgressData>(); const [progress, setProgress] = useState<ProgressData>();
const [lastError, setLastError] = useState<Error>(); const [lastError, setLastError] = useState<Error>();
const lastChecking = useRef(0); const lastChecking = useRef(0);
@ -61,12 +62,13 @@ export const PushyProvider = ({
} }
}, [client, updateInfo]); }, [client, updateInfo]);
const downloadUpdate = useCallback(async () => { const downloadUpdate = useCallback(
if (!updateInfo || !updateInfo.update) { async (info: CheckResult | undefined = updateInfoRef.current) => {
if (!info || !info.update) {
return; return;
} }
try { try {
const hash = await client.downloadUpdate(updateInfo, setProgress); const hash = await client.downloadUpdate(info, setProgress);
if (!hash) { if (!hash) {
return; return;
} }
@ -91,7 +93,9 @@ export const PushyProvider = ({
setLastError(e); setLastError(e);
showAlert('更新失败', e.message); showAlert('更新失败', e.message);
} }
}, [client, showAlert, updateInfo]); },
[client, showAlert],
);
const downloadAndInstallApk = useCallback( const downloadAndInstallApk = useCallback(
async (downloadUrl: string) => { async (downloadUrl: string) => {
@ -116,6 +120,7 @@ export const PushyProvider = ({
showAlert('更新检查失败', e.message); showAlert('更新检查失败', e.message);
return; return;
} }
updateInfoRef.current = info;
setUpdateInfo(info); setUpdateInfo(info);
if (info.expired) { if (info.expired) {
const { downloadUrl } = info; const { downloadUrl } = info;