Remove console logs for silent PWA state restoration optimization

Co-authored-by: jxxghp <jxxghp@163.com>
This commit is contained in:
Cursor Agent
2025-07-06 10:31:35 +00:00
parent dc174e81cf
commit 3726c472fc
9 changed files with 13 additions and 839 deletions

View File

@@ -140,8 +140,6 @@ function animateAndRemoveLoader() {
// 检查PWA状态并移除加载界面
async function removeLoadingWithStateCheck() {
try {
console.log('开始静默检查加载状态...')
// 设置各个组件的加载状态
globalLoadingStateManager.setLoadingState('pwa-state', true)
globalLoadingStateManager.setLoadingState('global-settings', true)
@@ -175,13 +173,12 @@ async function removeLoadingWithStateCheck() {
// 检查未读消息
checkAndEmitUnreadMessages()
} catch (error) {
console.error('移除加载界面时发生错误:', error)
// 即使出错也要移除加载界面
globalLoadingStateManager.reset()
animateAndRemoveLoader()
} catch (error) {
// 即使出错也要移除加载界面
globalLoadingStateManager.reset()
animateAndRemoveLoader()
}
}
}
// 加载背景图片
async function loadBackgroundImages(retryCount = 0) {

View File

@@ -18,14 +18,13 @@ export function usePWAState() {
const saveCurrentState = async () => {
if (window.pwaStateController) {
await window.pwaStateController.saveCurrentState()
console.log('手动保存PWA状态')
}
}
// 手动触发状态恢复检查
const checkStateRestore = async () => {
if (window.pwaStateController) {
console.log('检查状态恢复')
// 静默检查
}
}
@@ -35,8 +34,6 @@ export function usePWAState() {
isStateRestored.value = true
stateRestoreCount.value++
lastRestoredState.value = customEvent.detail.state
console.log('Vue组件收到状态恢复通知:', customEvent.detail.state)
}
// 重置状态恢复标志
@@ -115,7 +112,6 @@ export function useGlobalPWAState() {
const clearStoredState = () => {
localStorage.removeItem('mp-pwa-app-state')
sessionStorage.removeItem('mp-pwa-session-state')
console.log('已清除PWA存储状态')
}
return {

View File

@@ -54,7 +54,6 @@ const initializePWABeforeMount = async () => {
document.referrer.includes('android-app://')
if (isPWA) {
console.log('检测到PWA模式预初始化状态管理器')
const pwaStateController = new PWAStateController()
// 等待状态恢复完成
@@ -124,7 +123,6 @@ if (pwaStateController) {
// 监听状态恢复事件
window.addEventListener('pwaStateRestored', (event: Event) => {
const customEvent = event as CustomEvent
console.log('PWA状态已恢复:', customEvent.detail.state)
// 可以在这里添加状态恢复后的处理逻辑
// 例如通知Vue组件状态已恢复

View File

@@ -151,7 +151,6 @@ async function clearBadge() {
// 安装事件
self.addEventListener('install', event => {
console.log('Service Worker install')
event.waitUntil(
(async () => {
// 预缓存关键状态数据
@@ -162,10 +161,9 @@ self.addEventListener('install', event => {
if (existingState) {
// 预热状态数据
const state = await existingState.json()
console.log('预缓存状态数据:', state)
}
} catch (error) {
console.error('预缓存状态数据失败:', error)
// 静默处理错误
}
// 强制等待中的Service Worker立即成为活动的Service Worker
@@ -176,13 +174,11 @@ self.addEventListener('install', event => {
// 激活事件
self.addEventListener('activate', event => {
console.log('Service Worker activate')
event.waitUntil(
(async () => {
// 启用导航预载功能以提高性能
if ('navigationPreload' in self.registration) {
await self.registration.navigationPreload.enable()
console.log('导航预加载已启用')
}
// 清理旧版本的缓存
@@ -190,7 +186,6 @@ self.addEventListener('activate', event => {
await Promise.all(
cacheNames.map(cacheName => {
if (cacheName.includes('old-') || cacheName.includes('deprecated-')) {
console.log('清理旧缓存:', cacheName)
return caches.delete(cacheName)
}
})
@@ -257,7 +252,6 @@ precacheAndRoute(self.__WB_MANIFEST)
// 监听 push 事件,显示通知
self.addEventListener('push', function (event) {
console.log('notification push')
if (!event.data) {
return
}
@@ -266,7 +260,6 @@ self.addEventListener('push', function (event) {
try {
payload = event.data?.json()
} catch (err) {
console.log(err)
payload = {
title: event.data?.text(),
}
@@ -290,14 +283,13 @@ self.addEventListener('push', function (event) {
await Promise.all([self.registration.showNotification(payload.title, content), updateBadge(newCount)])
})(),
)
} catch (e) {
console.error(e)
}
} catch (e) {
// 静默处理错误
}
})
// 监听通知点击事件
self.addEventListener('notificationclick', function (event) {
console.log('notification click')
const info = event.notification
if (event.action === 'close') {
info.close()
@@ -308,7 +300,6 @@ self.addEventListener('notificationclick', function (event) {
// 监听来自主应用的消息,用于清除徽章或更新徽章数量
self.addEventListener('message', function (event) {
console.log('service worker received message:', event.data)
if (event.data && event.data.type === 'CLEAR_BADGE') {
// 清除徽章
@@ -317,7 +308,6 @@ self.addEventListener('message', function (event) {
event.ports[0]?.postMessage({ success: true })
})
.catch(error => {
console.error('Failed to clear badge:', error)
event.ports[0]?.postMessage({ success: false, error: error instanceof Error ? error.message : String(error) })
})
} else if (event.data && event.data.type === 'UPDATE_BADGE') {
@@ -329,7 +319,6 @@ self.addEventListener('message', function (event) {
event.ports[0]?.postMessage({ success: true })
})
.catch(error => {
console.error('Failed to update badge:', error)
event.ports[0]?.postMessage({ success: false, error: error instanceof Error ? error.message : String(error) })
})
} else if (event.data && event.data.type === 'GET_UNREAD_COUNT') {
@@ -339,7 +328,6 @@ self.addEventListener('message', function (event) {
event.ports[0]?.postMessage({ count })
})
.catch(error => {
console.error('Failed to get unread count:', error)
event.ports[0]?.postMessage({ count: 0 })
})
} else if (event.data && event.data.type === 'SAVE_PWA_STATE') {
@@ -355,7 +343,6 @@ self.addEventListener('message', function (event) {
event.ports[0]?.postMessage({ success: result.success })
})
.catch(error => {
console.error('Failed to save PWA state:', error)
event.ports[0]?.postMessage({ success: false, error: error instanceof Error ? error.message : String(error) })
})
} else if (event.data && event.data.type === 'GET_PWA_STATE') {
@@ -366,7 +353,6 @@ self.addEventListener('message', function (event) {
event.ports[0]?.postMessage({ state })
})
.catch(error => {
console.error('Failed to get PWA state:', error)
event.ports[0]?.postMessage({ state: {} })
})
}

View File

@@ -76,7 +76,7 @@ export class PWALoadingStateManager {
try {
listener(isLoading)
} catch (error) {
console.error('加载状态监听器错误:', error)
// 静默处理错误
}
})
}

View File

@@ -312,7 +312,6 @@ export class VisibilityStateManager {
private handlePageHidden(): void {
const currentState = this.getCurrentAppState()
this.stateManager.saveState(currentState)
console.log('页面被隐藏,已保存状态')
}
private handlePageVisible(): void {
@@ -327,10 +326,9 @@ export class VisibilityStateManager {
const restoredState = this.stateManager.restoreState()
if (restoredState) {
await this.restoreAppState(restoredState)
console.log('页面显示,已静默恢复状态')
}
} catch (error) {
console.error('状态恢复失败:', error)
// 静默处理错误
} finally {
this.isRestoring = false
}
@@ -530,11 +528,10 @@ export class PWAStateController {
const savedState = await source()
if (this.restoreDecision.shouldRestoreState(savedState, currentContext)) {
await this.restoreState(savedState!)
console.log('PWA状态静默恢复成功')
return
}
} catch (error) {
// 静默处理错误,不输出详细错误信息
// 静默处理错误
}
}
} finally {
@@ -566,8 +563,6 @@ export class PWAStateController {
}
private async restoreState(state: PWAState): Promise<void> {
console.log('开始静默恢复PWA状态')
const currentUrl = window.location.href
const urlMatches = this.isUrlExactMatch(state.url, currentUrl)
@@ -586,7 +581,6 @@ export class PWAStateController {
// 触发状态恢复事件
this.dispatchStateRestoreEvent(state)
console.log('PWA状态静默恢复完成')
}
private isUrlExactMatch(savedUrl: string, currentUrl: string): boolean {
@@ -678,7 +672,6 @@ export class PWAStateController {
// 恢复UI状态
if (uiState.darkMode !== undefined) {
// 这里可以根据实际的主题切换逻辑来恢复
console.log('恢复主题状态:', uiState.darkMode)
}
}