【地图】腾讯地图页面卡顿问题解决

article/2025/8/26 13:04:56

目录

  • 背景
  • 问题排查解决
    • 1. 页面是否使用 `keep-alive` 进行路由缓存
    • 2. 离开地图页面时,是否将地图清除
  • 总结

背景

有的电脑没有显卡会出现如下问题:

  • 系统打开有地图的页面,CPU 占用直线飙升到100%下不来,切到非地图页面,CPU 占用也下不来
    在这里插入图片描述

问题排查解决

从两个方面进行排查:

  1. 页面是否使用 keep-alive 进行路由缓存:有缓存的要去掉缓存,不缓存有地图的页面
  2. 离开地图页面时,是否将地图清除:离开地图页面时,页面被销毁,地图也要销毁

1. 页面是否使用 keep-alive 进行路由缓存

如果使用了 keep-alive 进行缓存,则需去掉,否则地图一直处于未销毁状态,会占用CPU

  • 【解决】地图页面 keepAlive 设置为 false
    在这里插入图片描述
    在这里插入图片描述

2. 离开地图页面时,是否将地图清除

排查当前地图页面销毁时,地图是否被销毁,不销毁的话依然会占用CPU(想要触发页面销毁钩子,那就不能将当前页面进行缓存)

  • 【解决】当前页面销毁时,将地图进行销毁
    在这里插入图片描述

总结

CPU 占用一直下不去主要是因为地图未被销毁,就会一直占用CPU导致页面卡顿,想要解决该问题需从以下两方面排查:

  1. 有地图的页面不能进行页面缓存
  2. 页面销毁时要将地图进行销毁

http://www.hkcw.cn/article/iOBkcfNVDr.shtml

相关文章

一起看 I/O | Android 性能相关最新动态

作者 / Ben Weiss 过去几年来,我们一直致力于让性能提升工作变得更易上手、回报更高。我们将在本文中分享这一领域的最新发展动态。为您介绍基准配置文件、Android Studio 中的工具改进、库,以及我们如何让这项技术更好地在后台为您服务。此外&#xff0…

iPhone批量删除照片的方法

对于每一个iPhone用户来说,照片管理是一项日常而重要的任务。随着时间的积累,无数的照片快速填满了我们的存储空间,从美丽的风景到重要的家庭聚会,每一张照片都记录着我们生活中的瞬间。然而,当存储空间即将耗尽时&…

Gradle Kotlin 规范插件用于模块化结构 - 共享构建逻辑

Gradle Kotlin 规范插件用于模块化结构 - 共享构建逻辑 我们中的许多人都遇到过Groovy的困难,并习惯于将其转换为Kotlin DSL。 然后,作为Android工程师,在完全使用Kotlin编写的项目上工作是纯粹的喜悦。 我们假设采用基于功能的模块化应用程…

Gradle开发手册-高级篇之多模块项目创建

在进阶篇中详细讲解了gradle配置相关的详细内容。但是是基于单module的配置,在实际开发时基本全是多module类型的项目。所以本章我们就系统学习下如何构建多模块项目(父-子)以及相关的task内容。 基础篇:从概念以及广度上介绍下gradle的核心内容,并构建一个简单的java项目;…

Gradle的版本差异导致无法编译:Could not initialize class com.android.build.gradle.internal.TaskManager

运行项目报错:Could not initialize class com.android.build.gradle.internal.TaskManager 我这边的原因是少了SDK的包和JDK版本不对。 我们先区分下gradle version与gradle plugin version。如果对此不了解,经常会由于Gradle的版本号问题造成项目无法编译&#xf…

Gradle版本目录(Version Catalog)

Gradle版本目录(Version Catalog) “版本目录是一份依赖项列表,以依赖坐标表示,用户在构建脚本中声明依赖项时可以从中选择。” 我们可以使用版本目录将所有依赖项声明及其版本号保存在单个位置。这样,我们可以轻松地在模块和项目之间共享依…

android开发之NDK配置开发

1、打开项目后,一次点击Tools>SDK Manager 2、点击SDK Tools标签页 3、选中NDK(Side by Side)和CMake复选框 4、点击OK 此时系统会显示一个对话框,告诉你NDK软件包占用了多少磁盘空间 5、点击OK 6、安装完成后,点击…

如何在没有计算机的情况下将联系人从 iPhone 传输到安卓

如果您正在考虑从 iPhone 迁移到Android ,您可能想知道如何在不丢失任何重要信息的情况下转移联系人。您可能还想避免使用电脑进行此过程。幸运的是,有几种方法可以教您如何在不使用电脑的情况下将联系人从 iPhone 迁移到Android ,而且这些方…

如何将数据从 iPhone 传输到 vivo 的 4 种方法

在运行不同操作系统的 iPhone 和 Vivo 之间传输数据时,需要谨慎。廉价或不安全的在线解决方案可能会失败,并使您的个人数据面临风险。避免被“免费”和“快速”服务的承诺所诱惑,因为这可能会危及您的数据。 在本文中,我们整理了…

图片转换之heic转jpg(使用ImageMagick)

缘由:iphone的图库,用jpg拍照保存后内存占比较大,heic格式会微缩不少。问题来了,电脑不能直接小图预览heic。 分析:现在就是解决小图预览的问题(大图用wps可以看) 解决:查找了一些…

Android导入项目时Gradle下载速度慢\超时\失败解决方法

Android导入项目时Gradle下载速度慢\超时\失败解决方法 原因分析: 这是因为Gradle源服务器在国外,下载速度自然很慢 distributionUrlhttps\://services.gradle.org/distributions/gradle-7.3.3-bin.zip 解决方法: 最可靠的方法就是换源 &…

从 iPhone 传输到Android 3 种简单方法

使用 iPhone 多年后,也许您想切换到Android并尝试一些新的东西?不管您是否相信,如果您确实做出了这样的决定,您很可能会遇到将数据从 iPhone 传输到Android的问题。由于手机数据对于当今的人们来说非常重要,因此当您切换到另一部手机时丢失它是不明智的。 在本指南中,您…

Contactile三轴触觉力传感器的滑动与摩擦力计算能力

Contactile三轴触觉力传感器通过先进的技术设计,实现了滑动与摩擦力的精准计算。传感器通过分析滑动与振动信号的关联,动态计算摩擦系数,同时捕捉力、扭矩及初始滑动等多维数据。这种能力为机器人提供了高度灵活的触觉反馈,满足复…

国产分子动力学引擎——GPUMD本地部署教程:专为 NVIDIA GPU 加速设计

一、简介 GPUMD 是一款开源分子动力学模拟软件,由渤海大学樊哲勇教授团队主导开发,2017年首发1.0版本,持续迭代至3.9.4版本,是国内首个完全基于GPU加速的开源分子动力学软件,专为 NVIDIA GPU 加速设计。它使用 CUDA 提…

PostgreSQL 备份与恢复策略

🧑 博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编…

2025年渗透测试面试题总结-匿名[校招]高级安全工程师(代码审计安全评估)(题目+回答)

安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。、 目录 匿名[校招]高级安全工程师(代码审计安全评估) 渗透基础 1. 自我介绍 2. SQL注入写Shell(分数…

Cmake编译glog成功并在QT中测试成功步骤

glog是开源的日志记录系统,下载地址GitHub - google/glog: C implementation of the Google logging module 跟gflags有点相似,编译和测试过程比较周折,所以记录下来具体的编译和测试步骤。 编译环境:WindowsCmakeVs2022Qt5.14.…

【Linux】网络--传输层--深入理解TCP协议

个人主页~ 深入理解TCP协议 一、TCP数据传输问题1、发送数据丢包问题---重传机制(一)客户端数据发送丢包(二)服务器确认应答丢包(三)时间间隔问题 2、三次握手问题---奇数次握手(一)…

深入理解 SQL 的 JOIN 查询:从基础到高级的第一步

在处理数据库时,我们常常需要从多个表中提取数据。比如想知道一个城市的天气情况,同时又想知道这个城市的具体位置。这就需要将 weather 表和 cities 表结合起来查询。这种操作在 SQL 中被称为 JOIN 查询。 现在看下两种表的情况 1.weather 表&#xff…

【无标题】C++23新特性:支持打印volatile指针

文章目录 前言背景与问题C23的解决方案实现原理使用场景硬件开发多线程调试 总结 前言 在C开发中,volatile关键字常用于修饰变量,以确保编译器不会对这些变量进行优化,从而保证程序能够正确地与硬件交互或处理多线程环境下的特殊变量。然而&…