專注流媒體技術與方案!
ANR簡介
APP出現程序無響應之後,系統通常會向用戶顯示一個對話方塊,這個對話方塊稱作應用程式無響應(ANR:Application Not Responding)對話方塊,使用者可以選擇“等待”而讓程式繼續執行,也可以選擇“強制關閉”,但是無法定位導致出現anr的原因。我們可以通過抓取anr log,幫助我們定位導致APP出現anr的原因。APP執行出現anr的同時,會在data目錄下生成一個 anr 的檔案,anr log儲存在此資料夾下,將其匯出即可。檢視APP ANR檔案的方法
手機連線USB ,進入CMD命令視窗,輸入以下命令: >adb shell $ su # cd data # ls 在列出的檔案列表有一個 anr 檔案;匯出anr log的方法
進入CMD命令視窗,輸入以下命令:
> adb pull /data/anr/traces.txt D:\
即可將APP生成的anr log檔案匯出到PC D盤根目錄下。
PS:APP生成的anr log儲存在手機/data/anr目錄下的traces.txt檔案裡。
定位ANR異常
log日誌如下:"main" prio=5 tid=1Native
| group="main" sCount=1 dsCount=0 obj=0x74a50f90 self=0x7fa197ba00
| sysTid=2588 nice=-1 cgrp=top_visible sched=0/0 handle=0x7fa5ebb000
| state=S schedstat=(16137737202215382002428) utm=133 stm=28 core=3 HZ=100
| stack=0x7fcc7c8000-0x7fcc7ca000 stackSize=8MB
| held mutexes=
kernel: __switch_to+0x74/0x8c
kernel: futex_wait_queue_me+0xd8/0x168
kernel: futex_wait+0xe4/0x234
kernel: do_futex+0x184/0xa54
kernel:SyS_futex+0x88/0x19c
kernel: cpu_switch_to+0x48/0x4c
native :#00 pc 000000000001cef0/system/lib64/libc.so (syscall+28)
native:#01 pc 00000000000679c4/system/lib64/libc.so (_ZL33__pthread_mutex_lock_with_timeoutP24pthread_mutex_internal_tPK8timespeci.constprop.0+260)
native:#02 pc 0000000000067d4c/system/lib64/libc.so (pthread_mutex_lock+36)
native:#03 pc 00000000000da578/data/app/com.yzxdemo-1/lib/arm64/libUGo.so (_ZN9Conductor26VideoSetSendReciveRotationEjj+44)
native:#04 pc 00000000000b4208/data/app/com.yzxdemo-1/lib/arm64/libUGo.so (_Z33me_video_set_send_recive_rotationjj+40)
native:#05 pc 000000000006cbbc/data/app/com.yzxdemo-1/oat/arm64/base.odex (int com.gl.softphone.UGoManager.UGoVideoSetSendReciveRotation(int,int)+144)
native:#06 pc 000000000006f3a0/data/app/com.yzxdemo-1/oat/arm64/base.odex (int com.gl.softphone.UGoManager.pub_UGoVideoSetSendReciveRotation(int,int)+84)
native:#07 pc 000000000008cd88/data/app/com.yzxdemo-1/oat/arm64/base.odex (void com.yzx.api.UCSCall.videoSetSendReciveRotation(int,int)+124)
native:#08 pc 0000000000136d3c/data/app/com.yzxdemo-1/oat/arm64/base.odex (void com.yzxdemo.activity.VideoConverseActivity$4.onSensorChanged(android.hardware.SensorEvent)+528)
native:#09 pc 0000000000ee5e68/data/dalvik-cache/arm64/[email protected]@boot.oat (???)
at com.gl.softphone.UGoManager.UGoVideoSetSendReciveRotation(Native method)
at com.gl.softphone.UGoManager.pub_UGoVideoSetSendReciveRotation(UGoManager.java:280)
- locked <0x0b2f89b7>(a com.gl.softphone.UGoManager)
at com.yzx.api.UCSCall.videoSetSendReciveRotation(UCSCall.java:1050)
at com.yzxdemo.activity.VideoConverseActivity$4.onSensorChanged(VideoConverseActivity.java:434)
at android.hardware.SystemSensorManager$SensorEventQueue.dispatchSensorEvent(SystemSensorManager.java:496)
at android.os.MessageQueue.nativePollOnce(Native method)
at android.os.MessageQueue.next(MessageQueue.java:330)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5665)
at java.lang.reflect.Method.invoke!(Native method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:822)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:712)
我們從traces.txt異常日誌檔案中匯出了關鍵日誌,其中紅色的這兩行可以定位出問題的所在。
相關推薦
專注流媒體技術與方案!
ANR簡介 APP出現程序無響應之後,系統通常會向用戶顯示一個對話方塊,這個對話方塊稱作應用程式無響應(ANR:Application Not Responding)對話方塊,使用者可以選擇“等待”而讓程式繼續執行,也可以選擇“強制關閉”,但是無法定位導致出現anr的原
直播APP開發:直播源碼流媒體技術介紹!
直播源碼 直播系統 直播軟件 目前,直播市場正以它獨特的魅力吸引著不同地區、不同國家的人的註意,直播APP開發需 求也遇到了噴發期,而在直播APP開發中的流媒體及技術問題也成為大眾關註的對象。1.首先我們來人士一下流媒體服務器常用服務器SRS:一款國人開發的優秀開源流媒體服務器系統BMS:也是一款
阿里P8架構師談:分散式資料庫資料一致性的原理、與技術實現方案!
背景 可用性(Availability)和一致性(Consistency)是分散式系統的基本問題,先有著名的CAP理論定義過分散式環境下二者不可兼得的關係,又有神祕的Paxos協議號稱是史上最簡單的分散式系統一致性演算法並獲得圖靈獎,再有開源產品ZooKeeper實現的Z
P2P流媒體技術方案
P2P流媒體技術方案 1.P2P流媒體系統層次化體系結構: P2P只是負責底層網路層資料的傳輸,中間層是核心 2.幾種P2P流媒體架構方案,明顯第四種與我們的需求相符: 3伺服器輔助的P2P視訊點播系
流媒體技術學習筆記之(三)Nginx-Rtmp-Module統計某頻道在線觀看流的客戶數
sele lec rest uri class origin 客戶 擴展 raw 獲得訂閱者人數,可以方便地顯示觀看流的客戶數。 查看已經安裝好的模塊 /usr/local/nginx/sbin/nginx -V 安裝從源編譯Nginx和Nginx-RTMP所
流媒體技術筆記(DarwinStreamingServer相關)
attr 任務隊列 高性能 over session 前臺 網絡 param mutex 簡介 Darwin Streaming Server簡稱DSS。DSS是Apple公司提供的開源實時流媒體播放服務器程序。整個程序使用C++編寫,在設計上遵循高性能,簡單,模塊化等程
Android 流媒體技術見解
一、技術關鍵點 1. 音訊採集:設定合理的取樣引數,包括取樣率、通道數、取樣深度。 2. 視訊採集:手機攝像頭採集輸出的格式(NV12/NV21/YV12),要注意相互間的轉換,以及採集出來影象的方向應該根據那種策略進行旋轉,尤其在android裝置需要做更多的相容性測試。 3. 編碼和解碼
Linux搭建流媒體技術
1. 確定JDK的版本: rpm -qa | grep jdk rpm -qa | grep gcj 可能的結果是: libgcj-4.1.2-42.el5 java-1.4.2-gcj-compat-1.4.2.0-40jpp.115 2.然後解除安
一對一直播原始碼如何選擇直播流媒體技術(CDN)
快上西樓,怕天放、浮雲遮月。但喚取、玉纖橫笛,一聲吹裂。 誰做冰壺浮世界,最憐玉斧修時節。問常娥、孤冷有愁無。應華髮。 雲液滿,瓊杯滑。長袖起,清歌咽。嘆十常八九,欲磨還缺。 若得長圓如此夜,人情未必看承別。把從前、離恨總成歡,歸時說 ——中秋快樂,簡短寒暄後
基於SOA架構和流媒體技術的線上教育平臺的研究
簡介 現代遠端教育是指通過音訊、視訊(直播或錄影)以及包括實時和非實時在內的計算機技術把課程傳送的教育。現代遠端教育是隨著現代資訊科技的發展而產生的一種新型教育方式。計算機技術、多媒體技術、通訊技術的發展,特別是因特網(Internet)的迅猛發展,使遠端教育的手段有了質的飛躍,成
[總結]RTMP流媒體技術零基礎學習方法
本文主要總結一些我在學習RTMP流媒體技術過程中積累的經驗。也為後來學習RTMP流媒體技術的人們一個參考。本文力圖從簡到難,循序漸進的介紹RTMP流媒體技術的方方面面,先從應用說起,逐步深化剖析相關工程的原始碼。看完本文的話應該會對RTMP流媒體技術有比較完整的瞭解。0.背景知
P2P流媒體技術三篇論文研讀筆記(CoolStreaming)
這段時間的精力全部放在P2P流媒體技術上了 才兩三年沒接觸,原來P2P技術又有了長足的發展。 Gossip協議給P2P流媒體技術帶來的變化是革命性的,將來可能還有更好的系統出現。 CoolStreaming系統,目前看來是最好的P2P流媒體系統了。 下面是我用FreeMin
P2P流媒體技術原理及應用
作者:王洪波,馬軼慧 英文關鍵字:P2P network; streaming media; scalability; data-driven 關鍵字:對等網路;流媒體;可擴充套件性;資料驅動 摘要:基於P2P的流媒體技術是一項非常有前途的技術,該技術有兩方面的優點:不需要網際網路路由器
android直播中的一些流媒體技術淺析
最近在做一個直播的android手機app,難點在於流媒體的處理,主要是對流媒體進行編碼與傳輸,在此用H264編碼,傳輸協議採用RTMP,流媒體伺服器用nginx並進行配置。本文先寫編碼相關的知識。 所謂視訊編碼方式就是指通過特定的壓縮技術,將某個視訊格式
基於Jrtplib的流媒體技術解析
3.3 資料傳送 當RTP 會話成功建立起來之後,接下去就可以開始進行流媒體資料的實時傳輸了。首先需要設定好資料傳送的目標地址, RTP協議允許同一會話存在多個目標地址,這可以通過呼叫RTPSession類的AddDestination()、 DeleteDestination()和ClearDestin
流媒體技術學習筆記之(八)海康、大華IpCamera RTSP地址和格式
海康: rtsp://[username]:[password]@[ip]:[port]/[codec]/[channel]/[subtype]/av_stream 說明: username
流媒體技術基礎-流式傳輸基本概念(二)
二、 流媒體技術原理 流式傳輸的實現需要快取。因為Internet以包傳輸為基礎進行斷續的非同步傳輸,對一個實時A/V源或儲存的A/V檔案,在傳輸中它們要被分解為許多包,由於網路是動態變化的,各個包選擇的路由可能不盡相同,故到達客戶端的時間延遲也就不等,甚至先發的資料包
雲遊戲流媒體整體架構設計(雲遊戲流媒體技術前瞻,最近雲遊戲概念很火,加之對流媒體技術略有研究,簡單寫一些)
前言:遙想當年阿法狗戰敗一眾圍棋國手,風氣一轉,似乎所有人都懂AI。這次谷歌又放出了stadia,國內鵝廠再次跑步進場,貴州某xx雲提前佈局。閒來無事,嘗試體驗了一下貴州某xx雲的雲遊戲(不打廣告),暫且不評論如何如何,剛好對流媒體技術略有研究,僅在這裡簡單聊一下這方面涉及的架構和技術。架構設計:總體架構自上
網頁直播、微信直播技術解決方案:EasyNVR與EasyDSS流媒體伺服器組合之區分不同場景下的easynvr
近期遇到好多客戶諮詢關於實現微信直播、或者是將直播頁面整合進入自己專案中。 該方案的主要目的:完成在公網一直進行內網攝像頭的RTMP/HLS直播! 上述方案主要注重的是方案的執行。本篇將介紹一下如何實現對於業務的具體需求。 由於 業務需求的需要
公司簡介: Faceunity(杭州相芯科技有限公司)專注智慧圖形技術的創新與應用,為移動網際網路、VR/AR等領域提供3D內容生成與互動的行業解決方案,致力於好萊塢特效技術在消費級應用的普及。 Fac
歡迎使用Markdown編輯器 你好! 這是你第一次使用 Markdown編輯器 所展示的歡迎頁。如果你想學習如何使用Markdown編輯器, 可以仔細閱讀這篇文章,瞭解一下Markdown的基本語法知識。 新的改變 我們對Markdown編輯器進行了一些功能拓展與語法支援,除了