首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【最佳实践】巡检项:实时音视频 (TRTC) 原生平台 SDK 终端版本分布情况

问题/风险描述: 用Android 11(APIs level 30手机打开应用,然后调用SDK进房接口,会出现崩溃现象。...这个崩溃问题只出现Android API level 29+设备上,根据客户分开该问题已触发40多次。...通过客户反馈crash堆栈信息排查,定位到TRTC SDK(version:8.3)内部一个模块在获取网络状态信息时候,调用了一个Android SDK已被移除API,导致App崩溃。...image.pngimage.png解决方案: 通过上面的问题排查和定位,确认是老版本SDK(8.3)调用了系统过期API导致,针对这个问题,TRTC SDK在新版本做了兼容安卓11兼容性处理...因为是底层接口问题,没有其他临时解决方案,要彻底规避这个问题,需要客户把SDK版本升级到最新版本。案例说明:某客户因为优化该隐患,避免了因为Android 11普及导致故障率急剧上升。

43330

Libgdx解决部分Android机型锁屏崩溃方法

libgdx使用了全屏模式之后,在某些机型会出现崩溃情况,两年前就存在了,一直到现在为止,官方都没进行修复,其崩溃原因就是在源码AndroidGraphics.java中onPause可以看到这样子一段代码...fix deadlock race condition with quick resume/pause. // Temporary workaround: // Android...LOG_TAG, "waiting for pause synchronization took too long; assuming deadlock and killing"); android.os.Process.killProcess...(android.os.Process.myPid()); } } catch (InterruptedException ignored) {...; } } } } 崩溃提示就是在这个方法中进行抛出,解决方法就是,不让他抛出这个错误,就是在try里面把pause改为false,目前解决方法是这样子,静候官方修复了

94630
您找到你想要的搜索结果了吗?
是的
没有找到

Android照片墙应用实现,再多图片也不怕崩溃

照片墙这种功能现在应该算是挺常见了,在很多应用中你都可以经常看到照片墙身影。...制作类似于这种功能应用,有一个非常重要问题需要考虑,就是图片资源何时应该释放。...因为随着GridView滚动,加载图片可能会越来越多,如果没有一种合理机制对图片进行释放,那么当图片达到一定上限时,程序就必然会崩溃。...今天我们照片墙应用实现,重点也是放在了如何防止由于图片过多导致程序崩溃上面。...之后调用了setImageView()方法为ImageView设置一张图片,这个方法首先会从LruCache缓存中查找是否已经缓存了这张图片,如果成功找到则将缓存中图片显示在ImageView上,否则就显示一张默认空图片

1.6K80

速读原著-Android应用开发入门教程(Android SDK开发环境)

API 配合进行应用程序层次开发。...),默认内存盘映像 (ramdisk image)等等,这些映像是仿真器运行时候需要使用; samples/:包含一系列应用程序,可以在 Android 开发环境中,根据它们建立工程,编译并在仿真器上运行...that are specific to the platform version. android.jar:Android 库文件 JAVA 程序包,在编译本平台 Android 应用程序时候被使用...通过扩展 Eclipse 集成环境功能,使得生成和调试 Android 应用程序既容易又快速。...提供了一个新项目向导(New Project Wizard),帮助你快速生成和建立起新 Android 应用程序所需最基本文件 使构建 Android 应用程序过程变得自动化,以及简单易行。

89620

Android 11 新工具 | 提升应用私密性和稳定性

这一 API 对于那些保留了旧代码或使用了第三方库或 SDK 大型应用或许会十分有用。...Android 11数据访问审核 API 有助于追溯您代码中私有数据使用情况 第二个 API 针对多功能复杂应用。...关于这些 API 实际使用情况,请查阅 代码示例: 除了帮助您识别私有数据访问之外,Android 11 还包含了另一个新 API,用来辅助排查无法捕捉现场崩溃。...Android 11 引入了一个新 ActivityManager API 来上报应用进程终止相关历史信息。...此外,您还可以使用新 ActivityManager.setProcessStateSummary() 方法存储自定义状态信息。您可以保存任意进程数据,这能非常有效地帮助您调试导致应用崩溃代码段。

69030

Android 11 上使用第三方 SDK 向其他应用分享文件注意事项

隐私和安全是我们设计 Android 核心,随着每一个新版本发布,我们都会加大这一方面的投入。Android 11 也持续在这些领域取得重要进展。...Android 11 (API 级别 30) 进一步增强了平台功能,为外部存储中应用和用户数据提供了更好保护。...从 Android 11 开始,使用 分区存储模式 应用即使拥有 READ_EXTERNAL_STORAGE 权限,也无法再访问外部存储中任何其他应用 专属目录 中文件。...如果您应用需要在 Android 11 上向其他应用分享文件,请检查您使用第三方分享 SDK 是否支持通过 FileProvider 进行分享 (现在大部分常用第三方分享 SDK 均已支持)。...请参阅 FileProvider 开发者文档及相关示例代码 如想了解更多,请参阅我们关于 Android 11 开发者文档

1.7K10

Android 中意料之外应用崩溃以及它们解决方案

而在应用发布后,监视应用程序中这些不断增加崩溃是一种极其不愉快体验。 不管应用程序业务逻辑如何,都可能会因为运行系统或平台问题而导致出现某些奇怪崩溃现象。...在 Android 中,从后台状态恢复应用程序时可能会产生崩溃 —— 此类崩溃是意外发生,而且仅通过查看崩溃日志,我们很难理解崩溃具体原因以及解决问题,而本文讨论了此类问题及其解决方法。...复现崩溃 在模拟器或通过 USB 电缆(译者注:Android 11 也可使用 Wi-Fi 连接设备调试)连接实际设备上使用 ADB 运行指令(如 Android Studio)运行任何应用程序。...虽然此解决方案可以防止崩溃,但是这种方法其实就是重新启动应用程序,而不是从中断位置恢复应用程序。如果你在发布应用后遇到此问题,并且急切地希望快速解决这个问题,则此解决方案应该能帮你大忙。...结论 在 Android 平台上,由于进程被终止而导致应用崩溃是很常见。而如果我们使用较新 Android 版本,我们可以注意到,出于节省电源目的,大量后台应用程序被强制结束运行了。

1.1K10

Android WebView 诊断与排查问题方法和技巧

WebView,是安卓中很重要一个组件,我们应用中集成WebView后,可能会遇到各种各样问题,这里简单介绍一些Android WebView 诊断与排查问题方法,希望对于大家有这方面的问题朋友有所帮助...28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 package com.droidyue.webview.webviewclient import android.net.http.SslError...这其中缘由是 我们在设备上安装charles证书,属于用户添加证书 出于应用安全目的,Android 7及之后默认不信任用户添加证书(Android 7 之前是默认信任用户添加证书) 当我们将...所以,我们按照这篇文章解决Android手机连接Charles Unknown问题方案,允许App在debug版本下信任用户证书就可以解决问题了。...如果想要解决上面的不足或者自定义日志输出关键字的话,可以重写实现WebChromeClientonConsoleMessage方法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

1.7K30

记一次 android 线上 oom 问题

sdk 并不直接加载在 App 主进程,而是隔离在一个单独进程中,然后两个进程通过 tcp 连接进行通信,这样做目的是减少因 sdk 崩溃带来主进程 crash,为用户带来更好体验。...了解了一下情况,发现主端全部版本崩溃率确实从 0.01% 升高到了 0.05%~0.07% 水平,且大量新增崩溃类型堆栈显示 oom 信息,最关键崩溃升高趋势和 sdk 灰度节奏完全吻合,...oom 问题非常不好排查,原因是崩溃堆栈与引入 bug 地方已经相差了十万八千里,不能直接定位问题点。...问题根因 正当排查方向一片迷茫时候,同事一句话提醒了我——如果能抓到崩溃现场日志就好办了。可是怎么抓呢?...进一步排查发现并非只有 oom 崩溃是这样,90% 崩溃都归类在了这个版本下面,原因竟然是 App 在初始化时没有处理好先后关系,从 sdk 拿版本号时 sdk 还未初始化,所以得到了一个无效版本值

1.1K40

EasyCVR对接大华SDK,视频回放无法播放排查过程及解决方法

EasyCVR 视频融合云平台不仅支持多协议(标准协议与私有协议)、多类型设备接入,而且还具备优秀视频转码、播放、录像、回看、级联等能力,在很多实际场景中均有落地项目应用,如智慧工地、智慧安防、智慧工厂...去年我们研发团队已经完成EasyCVR对大华SDK接入,用户可以通过 EasyCVR 对接大华设备实现视频直播、录像、回放、云台控制等操作。...近期,我们接到用户反馈,使用 EasyCVR 添加大华 SDK 用来播放视频回放,播放出来等一段时间还是黑屏,并且前端页面提示“视频加载错误”。 本文我们就针对该问题分享一下排查及解决过程。...在测试过程中,C++ 回调函数有数据,并且使用 ffplay 指令可以播放。这样则说明 C++ 没问题,那么接下来排查 Go 层问题。...1)首先,需要找到回放接口定义; 2)然后,在进入函数并打断点是否启动 C++ 回放接口调用; 排查发现在程序打断点是 devObj.DeviceHandle,显示是永远小于或者等于0。

1K10

拖不得了,Android11真的来了,最全适配实践指南奉上

以下我分为两部分讲述,分别是 以Android11 为目标版本应用(targetSdkVersion>=30才有影响)⭐ 所有应用Android11设备上适配改动(无论targetSdkVersion...是多少,只要在Android11设备上运行应用都有影响) 为什么先说targetSdkVersion>=30模块呢?...Scudo 能够检测并减轻某些类型内存安全违规行为。如果您在原生代码崩溃报告中发现与 Scudo 相关崩溃(例如 Scudo ERROR:),请参阅 Scudo 问题排查文档。...非SDK接口限制 “Android 11 包含更新后受限制非 SDK 接口列表(基于与 Android 开发者之间协作以及最新内部测试)。...” 老样子,Android11也会限制一些接口,包括灰名单和白名单,具体看非SDK接口列表 总结 一路分析下来也可以看到,如果是重要改动,特别是涉及到崩溃改动还是放到了targetSdkVersion

6.9K340266

全系统栈崩溃是什么鬼?手机管家高级工程师 jaylin,教你如何抓鬼!

对于这个问题,我们找到了一台出现这个崩溃机器并重现出来了,得到崩溃堆栈信息跟上面完全一样。实际上这个问题是在程序中制造了一个ANR,系统有Bug导致在执行dump信息方法时出现崩溃。...4 通过辅助信息缩小排查范围 在代码量比较大项目,排查问题相对会比较困难,那么在定位一些崩溃问题时候,要尽量获取更多辅助信息,把排查范围尽量地缩小,来看下面这个问题: 1 java.lang.RuntimeException...因为上面的崩溃堆栈信息只有系统代码,没有跟应用层关联代码。这时候就要考虑如何把定位问题范围缩小。...采取解决方法是,程序运行过程中会记录当前显示是哪一个界面,当出现崩溃时候就把最后显示界面信息也一并上报上来,那么定位问题就比较容易了,基本是确定了是在哪个界面出现,剩下就是对这个界面相关代码进行排查...5 根据出现崩溃线程名排查问题 上面讲到通过辅助信息来定位问题,而通过崩溃线程名称也能够把问题出现范围缩小。

1.1K40

Android 移动应用性能优化 之 友盟

ANR   ANR(全称:Application Not Responding)程序无响应,要解决问题首先要知道问题出现有哪些可能性,然后在结合你当前应用实际情况去排查,最终找到解决方法。...当时这个读者就找到我,然后我就开始排查,首先是启动App时候做了什么,这里还会涉及到一个点,那就是App启动优化,这个点很关键。...由于友盟SDK需要获取手机设备信息和网络状态,因此需要在AndroidManifest.xml中配置相应权限 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE...然后就是初始化了,这里要注意一点就是需要在在《隐私政策》中向用户告知使用友盟SDK,参考条款如下: 使用SDK名称:友盟SDK 服务类型:请按SDK功能填写,如应用性能监控平台 U-APM 收集个人信息类型...② 崩溃分析   完成了SDK对接之后,即可使用Java、Native崩溃分析、ANR分析功能,无需额外其他接入操作。

40910

线上数据异常引发崩溃排查记录

android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2112) 很显然,这个是混淆后崩溃,我们用对应mapping文件排查,定位到了异常代码如下...Collection contains no element matching the predicate,说明用ladderPriceList.first方法,返回结果是null而导致崩溃 做了下前后代码排查...,正常情况下是不会出现这个情况,于是怀疑是接口返回数据异常 还原异常数据 崩溃时候,是不会上报崩溃时候数据,通过代码,可以知道崩溃是页面的商详页,所以需要定位到具体是浏览哪个商品崩溃了 /...崩溃SDK,我们同时会上报用户ID跟最后浏览页面,通过ID,可以知道是具体哪个用户崩溃,然后在神策统计后台,查看该用户统计数据 神策统计数据,支持SQL查询数据,可以查到该用户所有的统计行为...(我们小程序数据跟app数据是一起),对SQL做了精简,只展示详情页统计数据、只展示Android、只展示我们需要字段 select product_name,spu_id,time from

67020
领券