Comments (12)
@gmoens-vuzix
Thanks for confirming. We will release this solution in 3.2 version.
from webex-android-sdk.
@gmoens-vuzix
In your application, when you do swap, do you provide new surface views and swap it to new locations? OR use old surface view references?
from webex-android-sdk.
@gmoens-vuzix
Can you also please provide full logs?
You can use our API, it will give you zip URI to download or send it through email.
from webex-android-sdk.
@ankbat
When swap occurs, we tear down the existing fragment that's on screen and create a new one. So the VideoRenderViews are new, we don't reuse the old ones. If we navigate to a new screen and come back, we reuse the old views.
from webex-android-sdk.
@gmoens-vuzix
Try below snapshot version and test your scenarios. This snapshot version only contains ARM64 architecture. It will work only on physical device not on emulator.
-
Add the following repository to your top-level build.gradle file:
allprojects { repositories { maven { url 'https://devhub.cisco.com/artifactory/webexsdk-SNAPSHOT/' } } }
-
Add the webex-android-sdk library as a dependency for your app in the build.gradle file:
dependencies { implementation 'com.ciscowebex:androidsdk:3.1.0.2-SNAPSHOT@aar' }
from webex-android-sdk.
@ankibatr
I upgraded to 3.1.0 and still saw the crash. Then I upgraded to the snapshot you provided and now the crash happens less frequently. Instead of every time, maybe every other time?
webex_leave_meeting_crash_8_23.txt
I noticed the crash looks slightly different now. It used to be:
JNI ERROR (app bug): accessed deleted Global 0x2a26
Now it is:
JNI ERROR (app bug): attempt to use stale Global 0x2a82 (should be 0x2a86)
from webex-android-sdk.
@gmoens-vuzix
Thanks for testing and sharing new logs. I will have a look and will update you.
from webex-android-sdk.
@gmoens-vuzix
Can you try one scenario, described below?
- Start the call as audio only and also remote video should also be off.
- Then add views through setViewRenderViews.
Please use above snapshot version only.
from webex-android-sdk.
@ankibatr
I reverted back to production 3.1.0 and tried your audio only scenario. I was still able to reproduce the crash if I left the main call screen (view participant list for example) and returned to it a few times. Each time you return to the call screen, new video render views are created and passed into setVideoRenderViews(). What I said before about us reusing video render views did not appear to be true. We always create new ones.
If I disable this behavior and allow the old video render views to be reused, the crash is avoided. In this case, our app only calls setVideoRenderViews() once for the duration of the call. The less times you call this method, the less likely the crash happens. However, as soon as you start turning video on and off and swapping the videos, setVideoRenderViews() will get called multiple times.
from webex-android-sdk.
@gmoens-vuzix
Thanks for the test. Can you please test audio only scenario with snapshot version which I released?
I did some changes in snapshot version related to setVideoRenderViews API. I want to test your scenario for audio only and then switching to video in between of call.
3.1.0.2-SNAPSHOT@aar
Also, if possible share logs with snapshot version testing for audio only.
- Are you creating the new MediaRenderViews programmatically? OR using it through XML?
from webex-android-sdk.
@ankibatr
Using 3.1.0.2-SNAPSHOT, I can't get it to crash with audio only calls. After adding videos to those audio only calls, I still can't make it crash. Even with video calls from the start, I'm having difficulty recreating the crash after multiple attempts.
Downgrading back to 3.1.0 and the crash returns when you exit the meeting, first try. So your changes have definitely helped!
Our MediaRenderViews are contained in fragments that we swap in and out programmatically.
from webex-android-sdk.
The 3.2 release seems to have fixed this issue.
from webex-android-sdk.
Related Issues (20)
- Screen Shared not stretching video content properly HOT 2
- Crash when remote user starts or stops sharing HOT 4
- When desktop user shares a whiteboard, SDK sees a new participant called "Injector" HOT 2
- No outgoing video from SDK HOT 3
- App crashes when entering and leaving the video call several times HOT 1
- Fatal Exception: java.lang.SecurityException HOT 3
- Android - Application Size is High for React Native Application
- Upgrading latest 3.7.0 with existing 2.8.0.5-SNAPSHOT@aar HOT 6
- Upgrading CISCO SDK from 2.8 to 3.7 : App got crash while join the call in Android CISCO sdk 3.7 HOT 6
- Upgrading CISCO SDK from 2.8 to 3.7 HOT 7
- Upgrading CISCO SDK from 2.8 to 3.6.0/3.7.0 - While on going call if we minimize app and again open then Remote Video disappear HOT 4
- Application crash on sdk version 3.9.1 HOT 1
- login Authorized
- SDK 2.7.0 WebexError javax.net.ssl.SSLHandshakeException HOT 3
- Thumbnail value null for pdf document in setMessageObserver HOT 2
- SpaceClient.getMeetingInfo() is not returning HOT 3
- Crash app related Webex SDK - com.webex.wme.WifiStatus.CheckReachableVia HOT 4
- How to set more than two layouts? HOT 2
- Hpw to sending and receive message to another participans on meeting room HOT 3
- Why does startShare always return false? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from webex-android-sdk.