首页
学习
活动
专区
工具
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普及导致故障率急剧上升。

41630

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,目前解决方法是这样子,静候官方修复了

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

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

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

1.5K80

速读原著-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 应用程序过程变得自动化,以及简单易行。

87320

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

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

67830

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

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

1.1K10

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 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.6K30

记一次 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.7K340266

全系统栈崩溃是什么鬼?手机管家高级工程师 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分析功能,无需额外其他接入操作。

38510

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

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

64820
领券