cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
758
Views
0
Helpful
3
Replies

crash when call quality is bad

bcason
Cisco Employee
Cisco Employee

Our android app crashes when experiencing poor call quality. Stack traces below:

Crash When Call Quality is Bad

Stack trace below:

Stack Trace

01-18 15:16:00.877 29335-29822/co.uk.youandb.android.b.demo.debug D/HybiParser: Creating frame for:

{"type":"OK","callId":"CL-d529b91a-7293-4d8c-b477-ceb694a21b12"} op: 1 err: -1

01-18 15:16:00.877 29335-29822/co.uk.youandb.android.b.demo.debug D/ServerMessageTransport: Received:

[{"type":"REMOTE_UNHELD","callId":"CL-d529b91a-7293-4d8c-b477-ceb694a21b12"}]

01-18 15:16:00.887 29335-29822/co.uk.youandb.android.b.demo.debug D/CallManager: getCallImplWithID

[com.alicecallsbob.fcsdk.android.phone.impl.CallImpl@3ca22886] - 1 - CL-d529b91a-7293-4d8c-b477-ceb694a21b12 cm=

com.alicecallsbob.fcsdk.android.phone.impl.PhoneImpl@207aa561

01-18 15:16:00.887 29335-29822/co.uk.youandb.android.b.demo.debug D/PhoneImpl: getCallImplWithID() - ID

argument=CL-d529b91a-7293-4d8c-b477-ceb694a21b12

01-18 15:16:00.887 29335-29822/co.uk.youandb.android.b.demo.debug D/CallImpl: Remote unheld: 7800

01-18 15:16:01.257 29335-30060/co.uk.youandb.android.b.demo.debug I/CallImpl: onCallStatisticsData

[Lorg.webrtc.StatsReport;@39526841 - [Lorg.webrtc.StatsReport;@272061e6

01-18 15:16:01.257 29335-30060/co.uk.youandb.android.b.demo.debug E/AndroidRuntime: FATAL EXCEPTION: Timer-4

Process: co.uk.youandb.android.b.demo.debug, PID: 29335

java.lang.ArithmeticException: divide by zero

at

com.alicecallsbob.fcsdk.android.phone.impl.CallQualityCalculator.calculatePercentageVideoPacketsReceived(CallQualityCalculator.java:141)

at com.alicecallsbob.fcsdk.android.phone.impl.CallQualityCalculator.<init>(CallQualityCalculator.java:35)

at com.alicecallsbob.fcsdk.android.phone.impl.CallImpl.onCallStatisticsData(CallImpl.java:683)

at com.alicecallsbob.fcsdk.android.phone.impl.CallStatisticsMonitor$GetStatisticsTimerTask.run(CallStatisticsMonitor.java:144)

at java.util.Timer$TimerImpl.run(Timer.java:284)

Another (different) stack trace:

Stack Trace

01-18 15:24:09.477 8718-8718/co.uk.youandb.android.b.demo.debug E/WebSocketWrapper: Terminating Websocket:

01-18 15:24:09.477 8718-9443/co.uk.youandb.android.b.demo.debug E/Assist.WebSocketClient: webSocketError UNEXPECTED error in

web socket:

java.net.SocketException: Socket closed

at libcore.io.Posix.recvfromBytes(Native Method)

at libcore.io.Posix.recvfrom(Posix.java:161)

at libcore.io.BlockGuardOs.recvfrom(BlockGuardOs.java:250)

at libcore.io.IoBridge.recvfrom(IoBridge.java:553)

at java.net.PlainSocketImpl.read(PlainSocketImpl.java:485)

at java.net.PlainSocketImpl.access$000(PlainSocketImpl.java:37)

at java.net.PlainSocketImpl$PlainSocketInputStream.read(PlainSocketImpl.java:237)

at libcore.io.Streams.readSingleByte(Streams.java:41)

at java.net.PlainSocketImpl$PlainSocketInputStream.read(PlainSocketImpl.java:233)

at java.io.DataInputStream.readByte(DataInputStream.java:75)

at com.alicecallsbob.assist.sdk.transport.websocket.HybiParser.start(HybiParser.java:126)

at com.alicecallsbob.assist.sdk.transport.websocket.WebSocketClient$1.run(WebSocketClient.java:163)

at java.lang.Thread.run(Thread.java:818)

01-18 15:24:09.477 8718-9443/co.uk.youandb.android.b.demo.debug E/WebSocketWrapper: onError() Exception when attempting to

connect - Socket closed

01-18 15:24:09.477 8718-9443/co.uk.youandb.android.b.demo.debug E/WebSocketWrapper: websocket onDisconnect(): 0 - Exception when

attemping to connect

01-18 15:24:09.577 287-287/? E/SMD: DCD ON

01-18 15:24:09.627 8718-9269/co.uk.youandb.android.b.demo.debug A/GAbi++: Pure virtual function called!

01-18 15:24:09.627 8718-9269/co.uk.youandb.android.b.demo.debug A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0xdeadcab1 in tid

9269 (Thread-88189)

01-18 15:24:10.897 878-10002/? W/ActivityManager: Force finishing activity co.uk.youandb.android.b.demo.debug/com.thenational.activity.D

ashboardActivity

01-18 15:24:10.907 2058-2058/? E/audit: type=1701 msg=audit(1453130650.907:89427): auid=4294967295 uid=10207 gid=10207

ses=4294967295 subj=u:r:untrusted_app:s0 pid=9269 comm="Thread-88189" reason="memory violation" sig=11

DivideByZeroException

Stack Trace

01-18 15:16:00.877 29335-29822/co.uk.youandb.android.b.demo.debug D/HybiParser: Creating frame for:

{"type":"OK","callId":"CL-d529b91a-7293-4d8c-b477-ceb694a21b12"} op: 1 err: -1

01-18 15:16:00.877 29335-29822/co.uk.youandb.android.b.demo.debug D/ServerMessageTransport: Received:

[{"type":"REMOTE_UNHELD","callId":"CL-d529b91a-7293-4d8c-b477-ceb694a21b12"}]

01-18 15:16:00.887 29335-29822/co.uk.youandb.android.b.demo.debug D/CallManager: getCallImplWithID

[com.alicecallsbob.fcsdk.android.phone.impl.CallImpl@3ca22886] - 1 - CL-d529b91a-7293-4d8c-b477-ceb694a21b12 cm=

com.alicecallsbob.fcsdk.android.phone.impl.PhoneImpl@207aa561

01-18 15:16:00.887 29335-29822/co.uk.youandb.android.b.demo.debug D/PhoneImpl: getCallImplWithID() - ID

argument=CL-d529b91a-7293-4d8c-b477-ceb694a21b12

01-18 15:16:00.887 29335-29822/co.uk.youandb.android.b.demo.debug D/CallImpl: Remote unheld: 7800

01-18 15:16:01.257 29335-30060/co.uk.youandb.android.b.demo.debug I/CallImpl: onCallStatisticsData

[Lorg.webrtc.StatsReport;@39526841 - [Lorg.webrtc.StatsReport;@272061e6

01-18 15:16:01.257 29335-30060/co.uk.youandb.android.b.demo.debug E/AndroidRuntime: FATAL EXCEPTION: Timer-4

Process: co.uk.youandb.android.b.demo.debug, PID: 29335

java.lang.ArithmeticException: divide by zero

at

com.alicecallsbob.fcsdk.android.phone.impl.CallQualityCalculator.calculatePercentageVideoPacketsReceived(CallQualityCalculator.java:141)

at com.alicecallsbob.fcsdk.android.phone.impl.CallQualityCalculator.<init>(CallQualityCalculator.java:35)

at com.alicecallsbob.fcsdk.android.phone.impl.CallImpl.onCallStatisticsData(CallImpl.java:683)

at com.alicecallsbob.fcsdk.android.phone.impl.CallStatisticsMonitor$GetStatisticsTimerTask.run(CallStatisticsMonitor.java:144)

at java.util.Timer$TimerImpl.run(Timer.java:284)

1 Accepted Solution

Accepted Solutions

huliving
Level 1
Level 1

Hi Bradley,

The fix for this issue is in version 11 of REM.


Thanks

Hugh

View solution in original post

3 Replies 3

huliving
Level 1
Level 1

Hi Bradley,

The fix for this issue is in version 11 of REM.


Thanks

Hugh

thanks, Hugh. Are there any methods you have developed or recommend to gracefully handle this exception and prevent a crash of the application when it manifests? Are there particular callbacks that can be wrapped in try/catch blocks for example?

Unfortunately this error is not recoverable as far as I am aware. It is deep in the SDK and I can't think or anywhere you could catch this RuntimeException.