高德地图内存泄露LocationManager$GnssStatusListenerTransport.mGnssCallback

2023-11-02

在使用高德地图的时候,喜提了一个内存泄露:

┬───
│ GC Root: Global variable in native code
│
├─ android.location.LocationManager$GnssStatusListenerTransport instance
│    Leaking: UNKNOWN
│    Retaining 588 B in 3 objects
│    ↓ LocationManager$GnssStatusListenerTransport.mGnssCallback
│                                                  ~~~~~~~~~~~~~
├─ com.loc.h$1 instance
│    Leaking: UNKNOWN
│    Retaining 12 B in 1 objects
│    Anonymous subclass of android.location.GnssStatus$Callback
│    ↓ h$1.a
│          ~
├─ com.loc.h instance
│    Leaking: UNKNOWN
│    Retaining 197 B in 4 objects
│    z instance of com.lu.code.main.DetailConfigActivity with mDestroyed
│    = true
│    ↓ h.z
│        ~
╰→ com.lu.code.main.DetailConfigActivity instance
​     Leaking: YES (ObjectWatcher was watching this because com.lu.code.
​     main.DetailConfigActivity received Activity#onDestroy() callback and
​     Activity#mDestroyed is true)
​     Retaining 694.8 kB in 7703 objects
​     key = 8e2c9606-0df8-4e92-9e21-0d4d3d5ca64e
​     watchDurationMillis = 5660
​     retainedDurationMillis = 618
​     mApplication instance of com.lu.code.App
​     mBase instance of androidx.appcompat.view.ContextThemeWrapper

METADATA

Build.VERSION.SDK_INT: 29
Build.MANUFACTURER: Xiaomi
LeakCanary version: 2.8.1
App process name: com.lu.code
Count of retained yet cleared: 3 KeyedWeakReference instances
Stats: LruCache[maxSize=3000,hits=50801,misses=111621,hitRate=31%]
RandomAccess[bytes=6638804,reads=111621,travel=40796300256,range=26287634,size=3
0953215]
Analysis duration: 9785 ms

兄弟们仔细看,杂么漏着漏着,到FrameWork层了,奇葩。android.location.LocationManager$GnssStatusListenerTransport instance

但其实,这个

            AMapLocationClient.updatePrivacyShow(context, true, true);
            AMapLocationClient.updatePrivacyAgree(context, true);
            mLocationClient = new AMapLocationClient(context);
            mLocationClientOption = new AMapLocationClientOption();

mLocationClient = new AMapLocationClient(context);
问题出在这儿,传了Activity当作context,导致的泄露。改为ApplicationContext 即可规避

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

高德地图内存泄露LocationManager$GnssStatusListenerTransport.mGnssCallback 的相关文章

  • 带阴影的弯曲 Android 工具栏

    我需要为工具栏或卡片视图提供弯曲的底视图 我尝试过的 bg toolbar xml
  • Android - 如何访问 onResume 中 onCreate 中实例化的 View 对象?

    In my onCreate 方法 我正在实例化一个ImageButton View public void onCreate Bundle savedInstanceState super onCreate savedInstanceSt
  • android 谷歌+登录定制

    我正在创建一个 Android 应用程序 现在我正在实现社交网络登录 Facebook 按钮很好 但 google 按钮的语言与 Facebook 不同 另外 它只说 登录 我想让它说 用谷歌登录 我是 android 编程的新手 看到我需
  • Mailgun POST /messages API 总是抛出 401 禁止

    我正在尝试使用改造库在 Android 中发送 Mailgun POST messages API 请求 以下是改装要求 HTTP POSThttps api key xxx v3 sandboxxxx messages https api
  • 更改 AChartEngine 中的图例大小

    我想专门更改饼图的图例大小输出 我已经尝试了所有可以找到的 AChartEngine 方法 但没有一个只能更改图例文本大小 我必须重写 onDraw 函数吗 如果是这样 怎么办 要设置图例高度 请使用 renderer setLegendH
  • 在 Android 中将应用程序上下文保存到静态变量是否安全?

    我知道在 Android 上使用静态变量是相当危险的 特别是当您将它们引用到活动时 但是 如果我有一个扩展 Application 的类 我们称此类为 App 引用此类的实例是否安全 如果是这样 任何其他类对应用程序上下文进行任何类型的引用
  • Android SDK 中可用的所有“android.intent.action”操作的详尽列表是什么?

    大家好 我想知道标准 Android SDK 中定义的所有 Intent 操作是否有详尽的参考 我正在考虑完整的 android intent action someaction 名称 而不是 Intent 类中定义的方便别名操作的限制列表
  • Android 手机应用意图

    我想在手机上启动手机应用程序作为意图 我正在使用这个代码 startActivity getPackageManager getLaunchIntentForPackage com android phone 但该函数抛出一个空指针异常 因
  • 服务器到 Firebase HTTP POST 结果为响应消息 200

    使用 Java 代码 向下滚动查看 我使用 FCM 向我的 Android 发送通知消息 当提供正确的服务器密钥令牌时 我收到如下所示的响应消息 之后从 FCM 收到以下响应消息 Response 200 Success Message m
  • Locale.getDefault().getCountry() 返回空字符串

    我正在尝试使用国家 地区代码获取用户语言 例如en US es es 但是当我使用Locale getDefault getCountry 它返回空字符串 虽然它给了我正确的语言Locale getDefault getLanguage N
  • Python Kivy - 在本机网络浏览器中打开 url 的应用程序

    我尝试制作一个简单的应用程序 在单击 Screen One 上的按钮后 在 Kivy 中打开一个网页 我使用了这个主题 Python 在应用程序中直接显示网络浏览器 iframe https stackoverflow com questi
  • 在 Android 中使用 iText 读取或打开 PDF 文件

    我是 Android 应用程序开发新手 使用 iText 我完成了 PDF 创建并在创建的文件上写入 现在我想阅读该 PDF 文件 如何使用 iText 打开或阅读 PDF 文件 例子将是可观的 那么提前 哪个是渲染 PDF 文件的最佳库
  • 当应用程序未运行时如何堆叠 Firebase Cloud Messaging 通知?

    我在用Firebase Cloud Messaging将推送通知从我的服务器发送到我的 Android 应用程序 当应用程序运行时 通知是stacked因为我将它们设置为我的一个组FirebaseMessagingService 这很好 但
  • Android开发:未定义方法

    大家好 我是 Android 和 Eclipse 的新手 我刚刚遵循了developer android com 上的教程 现在我在添加操作栏 http developer android com training basics actio
  • 如何在android中录制音频时暂停背景音乐

    我正在 Android 中开发一个音频记录应用程序 因此 如果设备音乐播放器中已播放任何背景音乐 则应在开始录制之前暂停该背景音乐 并且每当录制停止或暂停时 背景音乐都应恢复 播放录制的音频时也应该如此 有人可以帮我解决这个问题吗 提前致谢
  • Android:如何使视图增长以填充可用空间?

    这看起来很简单 但我不知道该怎么做 我有一个带有 EditText 和两个 ImageButtons 的水平布局 我希望 ImageButtons 具有固定大小 并且 EditText 占据布局中的剩余空间 如何才能做到这一点
  • 按名称查找视图

    是否可以通过名称而不是 id 来查找视图 findViewById R id someView 但我想做这样的事情 findViewByName someView 在处理 xml 时 您必须通过标识符查找视图 但是您可以使用以下方式查找标识
  • Jetpack Compose 部分或开放侧边框

    我正在尝试绘制部分或一侧开放的矩形圆形边框以实现此效果 玩了一下之后我得到了这个 这是通过以下方式完成的 RoundedCornerShape topStartPercent 50 bottomStartPercent 50 start R
  • Amazon IAP 不会调用 onPurchaseResponse

    我有一个 Android 应用程序 它使用 IAP 我正在发送PurchasingManager initiateGetUserIdRequest 并得到用户识别成功 in onGetUserIdResponse 得到回复后Purchasi
  • 绘制大位图时 nSyncAndDrawFrame 速度极慢

    我想用多个大位图优化视差滚动视图 在我的 Nexus 5 上 一切都很顺利 Traceview 转储如下所示 doFrame 方法大约需要 18 毫秒才能完成 但是 当使用我的 Nexus 7 或 Android 6 模拟器 Genymot

随机推荐

  • 数据结构(一):顺序表

    使用typedef为现有类型创建别名 定义易于记忆的类型名 typedef 还可以掩饰复合类型 如指针和数组 void malloc unsigned int size 其作用是在内存的动态存储区中分配一个长度为 size 的连续空间 此函
  • /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/Scrt1.o: in function `_start‘

    对于这个错误 不用想太多 一定是你再使用Vscode时没有事先保存这个 cpp c源文件就用 g xxx cpp o xxx gcc xxx c o xxx 来生成可执行文件导致的 hell cpp include
  • 最小二乘法和偏导

    偏导 在数学中 一个多变量的函数的偏导数 就是它关于其中一个变量的导数而保持其他变量恒定 相对于全导数 在其中所有变量都允许变化 求对 x 的偏导数 视 y 为常量 对 x 求导 求对 y 的偏导数 视 x 为常量 对 y 求导 最小二乘法
  • vSphere Client无法连接到服务器 出现未知错误的解决方法

    VMware ESXi服务器虚拟机在正常使用过程中 有时候会突然出现远程连接不上的问题 那么这个时候使用vSphere Client连接会出现如下错误 虽然连接不上 但是可以ping通 所以分析有可能是虚拟机用于客户端连接的服务停止了 可以
  • Linux内核调试方法总结之strace ,ltrace, ptrace, ftrace, sysrq

    come from https www cnblogs com justin y lin tag E5 86 85 E6 A0 B8 strace 用途 strace是一个功能强大的调试 分析 诊断工具 跟踪程序或进程执行时的系统调用和所接
  • OpenGL入门教程

    OpenGL入门教程 参考 OpenGL入门教程 Opengl 图形学final project作业记录 文章目录 OpenGL入门教程 一 概述 1 OpenGL 2 OpenGL ES与WebGL 3 OpenGL发展史 4 OpenG
  • iOS实现七牛多图片、文件上传和下载

    最近做项目用到了七牛的图片云存储服务 坑爹的是七牛只支持单图片的上传 但是谁会只传一张图片 要想实现多图片的上传必须自己实现多图片上传 网上相关资源又比较少 而且很多人都遇到了类似的问题 这里我总结了网上的一些零散的方法 自己写了个多文件上
  • 笔记本外置显卡说明

    一 简介 1 说明 笔记本外置显卡是一种硬件的配置方式 忽略笔记本自带的显卡 使用外置显卡 一方面可以自由选择显卡的类型 另一方面 可以实现高分辨率的正常显示 2 用途 在高清屏幕上展示画面 兼容高分辨率的游戏 下面详细说明一下这一配置的实
  • 【AI面试】目标检测中one-stage、two-stage算法的内容和优缺点对比汇总

    在深度学习领域中 图像分类 目标检测和目标分割是三个相对来说较为基础的任务了 再加上图像生成 GAN VAE 扩散模型 keypoints关键点检测等等 基本上涵盖了图像领域大部分场景了 尤其是在目标检测 一直是各大比赛 Pascal VO
  • 小目标检测论文阅读

    下面记录了一些论文的阅读总结 算法发展历程 传统图像算法 传统图像算法使用hand made feature 常用方法有SIFT HOG 图像金字塔等 对于小目标的检测 传统图像算法有人工复杂度高 模型泛化性差等缺点 因此逐渐被深度学习模型
  • t5_Sophisticated Algorithmic Strategies(MeanReversion+APO+StdDev_TrendFollowing+APO)_StatArb统计套利_PnL

    we will explore more sophisticated s f st ke t d 复杂的 trading strategies employed by leading market participants in the a
  • 巨潮网怎么下载年报_企业年报可别忘记,操作流程在这里。

    本专栏目录在文尾 企业年报 取代了之前的营业执照年检操作 所以是每个企业上半年中必须完成的一项重要工作 而此项工作有的企业会划归到财务部负责 这里就介绍一下企业年报的操作流程 在进行年报之前 有几个重要事项需要先了解一下 企业年报的申报期为
  • Esp32中Wi-Fi 开发介绍及使用:AP模式与STA模式常用函数详解

    目录 一 介绍 二 AP模式下常用函数 1 将 Wi Fi 作为接入点启动 2 使用函数 softAP 配置 Wi Fi AP 特性 3 使用函数softAPConfig配置静态IP 网关 子网掩码 4 使用函数softAPdisconne
  • Proxy代理模式

    list list Proxy代理模式是一种结构型设计模式 主要解决的问题是 在直接访问对象时带来的问题 比如说 要访问的对象在远程的机器上 在面向对象系统中 有些对象由于某些原因 比如对象创建开销很大 或者某些操作需要安全控制 或者需要进
  • python ssl连接 证书验证失败_Python SSL证书验证错误

    I m using requests to access a RESTful API Everything seems to work I can authenticate pull back a session token and eve
  • C语言,结构体中字符串的声明(采用字符指针还是字符数组)

    结构体中 字符串选项是用字符数组表示好 还是用字符指针表示好 typedef struct person char name int age char sex 6 该结构体中name用的是指针而不是数组 所以需要给字符串在堆上申请内存然后再
  • 服务失效判断

    题目描述 某系统中有众多服务 每个服务用字符串 只包含字母和数字 长度 lt 10 唯一标识 服务间可能有依赖关系 如A依赖B 则当B故障时导致A也故障 依赖具有传递性 如A依赖B B依赖C 当C故障时导致B故障 也导致A故障 给出所有依赖
  • liuseroj 网址

    点我进入liuseroj 如果打不开请点击备用线路
  • Java如何将文件下的所有文件进行批量更改和替换

    Java如何将文件下的所有文件进行批量更改和替换 将F盘下tmp文件夹下的文件循环取出 进行文件的替换 这里将李替换成1 修改完成写入到文件夹中 public class Test public static void main Strin
  • 高德地图内存泄露LocationManager$GnssStatusListenerTransport.mGnssCallback

    在使用高德地图的时候 喜提了一个内存泄露 GC Root Global variable in native code android location LocationManager GnssStatusListenerTransport