voxeet / voxeet-uxkit-android Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
Describe the bug
Hello sir, I'm using the "then, then, catch" implementation from SDK 2.3.0 for opening a session, creating a conference and joining it. Sometimes the catch fetch an error "-1" without any description or reason from ServerErrorException class .
Can it be more precise like for example an http code or something? It can help me a lot to display to my users why there was an error.
Thank you sir.
Expected Behaviour
Have a more precise error workflow, or just an http code can be enough.
Steps to Reproduce the Problem
For example, joining and leaving a conference very fast is the easiest way to reproduce an error.
Minimalistic code (recommended)
VoxeetSDK.session().open(new ParticipantInfo(null, null, null))
.then(new PromiseExec<Boolean, CreateConferenceResult>() {
@Override
public void onCall(@Nullable Boolean result, @NonNull Solver<CreateConferenceResult> solver) {
solver.resolve(VoxeetSDK.conference().create("test"));
}
})
.then(new PromiseExec<CreateConferenceResult, Conference>() {
@Override
public void onCall(@Nullable CreateConferenceResult result, @NonNull Solver<Conference> solver) {
// FIXME: THERE IS A WARNING HERE OF DEPRECIATION!!!
solver.resolve(VoxeetSDK.conference().join(result.conferenceId));
}
})
.then(new PromiseExec<Conference, Object>() {
@Override
public void onCall(@Nullable Conference result, @NonNull Solver<Object> solver) {
Log.d("talkApp", "SUCCESS");
}
})
.error(new ErrorPromise() {
@Override
public void onError(@NonNull Throwable e) {
// FIXME: SOME DIFFICULTY TO FETCH ERROR, SOMETIMES -1??
if (e instanceof ServerErrorException) {
ServerErrorException exception = (ServerErrorException) e;
ServerErrorMessage error = exception.error;
Log.d("talkApp", "ERROR => code: " + error.error_code + " description: " + error.error_description + " reason: " + error.error_reason);
}
});
Specifications
Describe the bug
When displaying a video in full view in the Voxeet's VideoView. In translucent mode, a padding is shown on top and at the bottom of the view
Expected Behaviour
The video should be full view in pinched out mode
Steps to Reproduce the Problem
Specifications
Describe the bug
Overlay ui freezes, when android client is first one to join a conference, and then is followed by a web client. When the overlay is frozen, device continues to stream video and audio just fine, but UI is totally unresponsive, and the only way to fix that is killing the app. Following problem does not occur when android device is joining conference after web client. Attached exception log.
Unfortunately couldn't reproduce this in sample app, due to not being able to connect between web sample and android sample.
Specifications
Describe the bug
Current integration is using the official Youtube library API which has not been updated for years. Lots of bugs and issues exists such as check for views on top of the player and various lifecycle issues.
The new version is going to include the MIT licensed android-youtube-player
Describe the bug
Voxeet overlay fails to detect when headphones are plugged in/unplugged and keeps the state that was valid when starting the call so:
Reproduced in sample app.
Expected Behaviour
Overlay should respond to headphones connected/disconnected events, and properly set speaker toggle button state.
Steps to Reproduce the Problem
Specifications
Describe the bug
First, thanks for the excellent framework.
I spent a full day for finding the reason.
You missed break;
Please add it.
Regards!
Describe the bug
CodeQL checks are failing when using the current Android 31 build tools. Since this requires some script modification and isn't possible, switching from Android 31 build tools to Android 32 build tools is necessary
Expected Behaviour
CodeQL runs smoothly
Steps to Reproduce the Problem
Hi, when I start a conference incoming from the iOS app, I always get the error:
System.err: com.voxeet.android.media.errors.RemoteDescriptionError: Unable set remote SDP for Peer: a9d76ed5-fc00-3a47-aa01-ab35ee5c0cd6 :: Failed to set remote offer sdp: Failed to set remote video description send parameters.
But the a9d76ed5-fc00-3a47-aa01-ab35ee5c0cd6 was not from me.
Please do me a favor.
Thanks a lot!
Describe the bug
With the ability for developers to set their app to target Android 31+, the PendingIntent inside the SDK when the "service" for live conference needs to be updated to reflect the new requirements for mutability flag.
Without it, the following issue is displayed in the logs :
Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent
This affects every version of the UXKit, a fix will be set for 3.3.1
Expected Behaviour
set the FLAG_IMMUTABLE since the PendingIntent forged will be statically defined.
For more information : https://developer.android.com/reference/android/app/PendingIntent#FLAG_IMMUTABLE
2020-10-20 22:17:40.648 31710-1860/com.voxeet.sdk.sample E/org.webrtc.Logging: HardwareVideoEncoder: deliverOutput failed
2020-10-20 22:17:40.648 31710-1860/com.voxeet.sdk.sample E/org.webrtc.Logging: HardwareVideoEncoder: java.lang.IllegalStateException
2020-10-20 22:17:40.648 31710-1860/com.voxeet.sdk.sample E/org.webrtc.Logging: HardwareVideoEncoder: java.lang.IllegalStateException
at android.media.MediaCodec.native_dequeueOutputBuffer(Native Method)
at android.media.MediaCodec.dequeueOutputBuffer(MediaCodec.java:2823)
at org.webrtc.MediaCodecWrapperFactoryImpl$MediaCodecWrapperImpl.dequeueOutputBuffer(MediaCodecWrapperFactoryImpl.java:73)
at org.webrtc.HardwareVideoEncoder.deliverEncodedImage(HardwareVideoEncoder.java:489)
at org.webrtc.HardwareVideoEncoder$1.run(HardwareVideoEncoder.java:477)
Describe the bug
Overlay is not showing any content from shared screen. Our use case consists of web client being able to share screen with other web/android/ios clients. When starting screen sharing in web side, nothing changes on android side. To find out more i've enabled screen sharing on android side also and found out that:
When android side tries to start screen sharing, overlay hides for a moment, and then disables screen sharing. Also, when this is done when web side is screen sharing, the proper stream of shared screen from that client is flashing on android side before disabling screen share on the phone.
We've checked screen sharing web -> web and web -> ios and these seem to work fine.
I've also checked a similar scenario in the sample app, where I've tried to share screen between two android devices, and screen sharing does not last there also.
This log was recorded on Galaxy s8 when sharing from web client, there are several tries to enable sharing on phone during that call)
Expected Behaviour
When other participant of conference is sharing screen, the feed should appear on android devices.
Specifications
2.0.69.8
Describe the bug
When 2 users accept and reject the call at the same time, a new call is started in the accepted user device
Steps to Reproduce the Problem
Actual Requirement
When 2 users accept and reject the call at the same time, accepting user must not start a new call
Specifications
Sorry to bother you but I really do not know what went wrong when I try to migrate the V2.4.0 to the V3.2.0.
First, I add maven { url "https://android-sdk.voxeet.com/release" }
in build.gradle file at the project layer.
Second, I add the api ('com.voxeet.sdk:uxkit:3.2.0') { transitive = true }
in build.gradle file at the app layer.
But I run the project when something wrong happened as below:
Please do me a favor if you have something to tell me.
Thanks!
Submitted to wrong repo
Describe the bug
Error downaload dependency
https://dl.bintray.com/voxeet/maven/com/voxeet/sdk/uxkit-firebase/3.1.3/uxkit-firebase-3.1.3.pom
ERROR Forbidden!
Required by:
project :voxeet_react-native-voxeet-conferencekit
> Could not resolve com.voxeet.sdk:uxkit-firebase:3.1.3.
> Could not get resource 'https://dl.bintray.com/voxeet/maven/com/voxeet/sdk/uxkit-firebase/3.1.3/uxkit-firebase-3.1.3.pom'.
> Could not GET 'https://dl.bintray.com/voxeet/maven/com/voxeet/sdk/uxkit-firebase/3.1.3/uxkit-firebase-3.1.3.pom'. Received status code 403 from server: Forbidden
> Could not resolve com.voxeet.sdk:uxkit-firebase:3.1.3.
> Could not get resource 'http://dl.bintray.com/voxeet/maven/com/voxeet/sdk/uxkit-firebase/3.1.3/uxkit-firebase-3.1.3.pom'.
> Could not GET 'http://dl.bintray.com/voxeet/maven/com/voxeet/sdk/uxkit-firebase/3.1.3/uxkit-firebase-3.1.3.pom'. Received status code 403 from server: Forbidden
> Could not resolve com.voxeet.sdk:uxkit:3.1.3.
Required by:
project :voxeet_react-native-voxeet-conferencekit
> Could not resolve com.voxeet.sdk:uxkit:3.1.3.
> Could not get resource 'https://dl.bintray.com/voxeet/maven/com/voxeet/sdk/uxkit/3.1.3/uxkit-3.1.3.pom'.
> Could not GET 'https://dl.bintray.com/voxeet/maven/com/voxeet/sdk/uxkit/3.1.3/uxkit-3.1.3.pom'. Received status code 403 from server: Forbidden
> Could not resolve com.voxeet.sdk:uxkit:3.1.3.
> Could not get resource 'http://dl.bintray.com/voxeet/maven/com/voxeet/sdk/uxkit/3.1.3/uxkit-3.1.3.pom'.
> Could not GET 'http://dl.bintray.com/voxeet/maven/com/voxeet/sdk/uxkit/3.1.3/uxkit-3.1.3.pom'. Received status code 403 from server: Forbidden
Steps to Reproduce the Problem
Build project without cache
Describe the bug
Ongoing Call UI is closed when another incoming call user has hung up or hung up automatically due to insufficient users
Steps to Reproduce the Problem
we have extended VoxeetIncomingCallActivity in a custom activity and set it to default incoming call activity and overridden on create Imethod
1st Scenario - when 2 users A and B are in the conference call, user C calls user A, call accept/reject UI is shown
Actual Requirement
Incoming call UI must not be shown when the conference is live)
Solution - To encounter this, we have added finish() in on create method in customIncomingCallActivity when the conference is live
if(VoxeetSdk.getInstance().conferenceService.isLive){ [email protected]() }
Now When user C calls user A, call accept/reject UI is not shown
2nd Scenario
Specifications
App crash when i start screen share, errror - uxkit.implementation.overlays.OverlayState.ordinal()' on a null object reference
Originally posted by @thakurs9dp in #13 (comment)
group video call
[Hey Dev :
I am using this code between 1 to 1 video call which works fine but i want to know how we can handle group video call For example 4 participant wants to make a call between them and all users can see each other videos .
last thing i want to know how many members dolby allow in a group call if sdk supports.]
val isLocal = user.id == VoxeetSDK.session().participantId val stream = user.streamsHandler().getFirst(MediaStreamType.Camera) val video: VideoView = if (isLocal) myVideo else otherVideo
Please provide any sample code snippet or reference which will be helpful for this.
Thanks alot
Describe the bug
Error downaload dependency
Lib v0.2.13
"@voxeet/react-native-voxeet-conferencekit": "^0.2.13"
Could not GET 'https://dl.bintray.com/voxeet/maven/***x/exifinterface/exifinterface/1.3.2/exifinterface-1.3.2.pom'. Received status code 502 from server: Bad Gateway
Steps to Reproduce the Problem
Build project without cache
I tried too on appcenter
Required by:
project :app > project :react-native-camera
> Could not resolve ***x.exifinterface:exifinterface:1.3.2.
> Could not get resource 'https://dl.bintray.com/voxeet/maven/***x/exifinterface/exifinterface/1.3.2/exifinterface-1.3.2.pom'.
> Could not GET 'https://dl.bintray.com/voxeet/maven/***x/exifinterface/exifinterface/1.3.2/exifinterface-1.3.2.pom'. Received status code 502 from server: Bad Gateway
> Could not resolve ***x.legacy:legacy-support-v4:1.0.0.
Required by:
project :app > project :react-native-camera
project :app > project :react-native-fbsdk > com.facebook.***:facebook-login:5.15.3 > com.facebook.***:facebook-common:5.15.3
project :app > project :voxeet_react-native-voxeet-conferencekit > com.voxeet.sdk:uxkit-firebase:3.1.3 > com.voxeet.sdk:sdk:3.1.4 > com.voxeet.sdk:audio:2.1.2
project :app > project :voxeet_react-native-voxeet-conferencekit > com.voxeet.sdk:uxkit-firebase:3.1.3 > com.voxeet.sdk:sdk:3.1.4 > com.voxeet.sdk:authent:3.1.4
> Could not resolve ***x.legacy:legacy-support-v4:1.0.0.
> Could not get resource 'https://dl.bintray.com/voxeet/maven/***x/legacy/legacy-support-v4/1.0.0/legacy-support-v4-1.0.0.pom'.
> Could not GET 'https://dl.bintray.com/voxeet/maven/***x/legacy/legacy-support-v4/1.0.0/legacy-support-v4-1.0.0.pom'. Received status code 502 from server: Bad Gateway
> Could not resolve ***x.legacy:legacy-support-v4:1.0.0.
Required by:
project :app > project :react-native-view-shot
> Could not resolve ***x.legacy:legacy-support-v4:1.0.0.
> Could not get resource 'https://dl.bintray.com/voxeet/maven/***x/legacy/legacy-support-v4/1.0.0/legacy-support-v4-1.0.0.pom'.
> Could not GET 'https://dl.bintray.com/voxeet/maven/***x/legacy/legacy-support-v4/1.0.0/legacy-support-v4-1.0.0.pom'. Received status code 502 from server: Bad Gateway
> Could not resolve ***x.exifinterface:exifinterface:1.3.2.
Required by:
project :app > project :voxeet_react-native-voxeet-conferencekit > com.voxeet.sdk:uxkit:3.1.3 > com.squareup.picasso:picasso:2.71828
> Could not resolve ***x.exifinterface:exifinterface:1.3.2.
> Could not get resource 'https://dl.bintray.com/voxeet/maven/***x/exifinterface/exifinterface/1.3.2/exifinterface-1.3.2.pom'.
> Could not GET 'https://dl.bintray.com/voxeet/maven/***x/exifinterface/exifinterface/1.3.2/exifinterface-1.3.2.pom'. Received status code 502 from server: Bad Gateway```
Describe the bug
When liveRecording is set to true
Expected Behaviour
Do not show "Mixer" user in the users list
Specifications
Describe the bug
Voxeet shows overlay but fails to connect to a conference with the following error on some devices (Works fine on Galaxy S8, LG G4, fails on Huawei P20 lite as well as Android Emulator):
E/peerconnection.cc: (line 2332): SetRemoteDescription: Session error code: ERROR_CONTENT. Session error description: Failed to set remote video description send parameters..
E/Voxeet: Failed to set remote description with error:
com.voxeet.android.media.MediaEngineException: Unable set remote SDP for Peer: 4652359c-4721-459b-9b46-b0e8d09a9645 :: Session error code: ERROR_CONTENT. Session error description: Failed to set remote video description send parameters..
W/System.err: at com.voxeet.android.media.MediaSDK.createAnswerForPeer(MediaSDK.java:74)
at com.voxeet.sdk.core.abs.ConferenceService$23.onCall(ConferenceService.java:2325)
...
Minimalistic code (recommended)
val promise = VoxeetToolkit.getInstance().conferenceToolkit.join(intent.getStringExtra(CONFERENCE_KEY))
if (VoxeetSdk.getInstance().conferenceService.isLive) {
VoxeetSdk.getInstance().conferenceService
.leave()
.then(promise)
.then(VoxeetSdk.getInstance().conferenceService.startVideo())
.error(object : ErrorPromise() {
override fun onError(error: Throwable) {
Timber.e(error)
dismissConference()
}
})
} else {
promise.then(VoxeetSdk.getInstance().conferenceService.startVideo())
.error(object : ErrorPromise() {
override fun onError(error: Throwable) {
Timber.e(error)
dismissConference()
}
})
}
Specifications
Describe the bug
The UX of the speaker button is confusing and misleading. When audio is playing out of the headphones, the speaker button is toggled "on", and when it is playing out of the speaker, it is toggled "off".
Expected Behaviour
Either the speaker button icon is changed to a have a "strikethrough" and the behavior stays the same, or the speaker button is toggled "on" when audio is playing out of the speaker, and toggled "off" otherwise.
Steps to Reproduce the Problem
See the minimalistic code example below.
Minimalistic code (recommended)
This repo (branch no-hud-video-bug) demonstrates the issue: https://github.com/mattyg/voxeet-cordova-example
Both devices used were on Android.
Follow the steps below to reproduce:
Device A: connect to voxeet
Device B: connect to voxeet
Device B: plug in headphones
Device A: create conference
Device A: invite user on device B
Device B: click "Accept" on incoming call notice
Audio is playing out of headphones. Speaker button is toggled "on."
Device B: remove headphones
Audio is playing out of speaker. Speaker button is toggled "off."
Specifications
Device: Android
OS: Android 8 & 9
Version: latest cordova-plugin-voxeet
It seems android voxeet sdk fires following api internally-
https://session.voxeet.com/v1/conferences/efxxxxx-xxxx-xxxx/filepresentation/pause
when calling this method-
Promise promise = VoxeetSDK.videoPresentation().pause(100);
promise.execute();
From web I could see that correct url should have been -
https://session.voxeet.com/v1/conferences/efxxxxx-xxxxx-xxxx/videopresentation/pause
and its working on web
In android sdk IRestApiVideoPresentation.java file needs to be corrected.
@post("/v1/conferences/{conferenceId}/videopresentation/start")
Call startVideoPresentation(@path("conferenceId") String var1, @Body IRestApiVideoPresentation.VideoPresentationUrl var2);
@post("/v1/conferences/{conferenceId}/videopresentation/stop")
Call stopVideoPresentation(@path("conferenceId") String var1);
@post("/v1/conferences/{conferenceId}/filepresentation/play")
Call playVideoPresentation(@path("conferenceId") String var1);
@post("/v1/conferences/{conferenceId}/filepresentation/pause")
Call pauseVideoPresentation(@path("conferenceId") String var1, @Body IRestApiVideoPresentation.VideoPresentationSeek var2);
@post("/v1/conferences/{conferenceId}/filepresentation/seek")
Call seekVideoPresentation(@path("conferenceId") String var1, @Body IRestApiVideoPresentation.VideoPresentationSeek var2);
I think bottom three endpoints in above code need to be corrected. "filepresentation" needs to be changed to "videopresentation"
Describe the bug
Using various wrapping libraries, it's not possible to have logs properly set or even available out of the box. With this modification, the uxkit library and some of its submodule will be able to report more info
Expected Behaviour
Describe the bug
Hello, We have some trouble to understand audio route management with voxeet sdk 3.1.4. Our workflow is the following, start a conference with a video and audio on the main speaker (not the phone one). Currently we have an issue when plugin our headset then unplug it, the speaker is reset on the phone. We don't use requestaudiofocus or abandonaudiofocusrequest, that's maybe the reason of our current behaviour? We also sometime have the main speaker audio route reseted to the phone without doing anything, so we came with a solution maybe not great to force the audio again and again, we are willing to some advices here so we can have a clean workflow.
Expected Behaviour
Main speaker always ON, but have the possibility to plug an headset and when it unplugged, go back to the main speaker.
Steps to Reproduce the Problem
For the speaker disconnection, sometime just wait into a conference and then it is reseted without any reason.
For the headset, plug it and unplug it then the main speaker is reseted to the phone speaker.
Minimalistic code (recommended)
Here is some code:
private int resetAudioAttempts = 0; // property to help
private final SoundManager.Call<List<MediaDevice>> onAudioDeviceUpdate = this::audioDeviceUpdated;
...
setSpeaker(); // is called at the join response after open > create
...
private void setSpeaker() {
// register audio
if (resetAudioAttempts == 0) {
VoxeetSDK.audio().enable(); // not sure what is line does
VoxeetSDK.audio().registerUpdateDevices(onAudioDeviceUpdate); // example found in the voxeetuxkit: private final SoundManager.Call<List<MediaDevice>> onAudioDeviceUpdate = this::audioDeviceUpdated;
}
// Set speaker so enumerate devices to find EXTERNAL_SPEAKER and if it is connected
VoxeetSDK.audio().enumerateDevices()
.then((ThenPromise<List<MediaDevice>, Boolean>) mediaDevices -> {
MediaDevice speaker = Map.find(mediaDevices,
mediaDevice -> mediaDevice.deviceType() == DeviceType.EXTERNAL_SPEAKER
&& mediaDevice.platformConnectionState() == ConnectionState.CONNECTED);
if (null == speaker) {
throw new IllegalStateException("Impossible speaker");
}
return VoxeetSDK.audio().connect(speaker);
})
.error(error -> Log.d("codecappvideo", "Failed audio: " + error));
}
// Maybe that's not the good solution here, we are trying to force the speaker
// called be: private final SoundManager.Call<List<MediaDevice>> onAudioDeviceUpdate = this::audioDeviceUpdated;
private void audioDeviceUpdated(List<MediaDevice> mediaDevices) {
if (null == mediaDevices) return;
for (MediaDevice mediaDevice : mediaDevices) {
if (mediaDevice.deviceType() == DeviceType.EXTERNAL_SPEAKER) {
if (mediaDevice.platformConnectionState() == ConnectionState.CONNECTED && mediaDevice.connectionState() == ConnectionState.DISCONNECTED) {
// asynchronously try to reset again the speaker
VoxeetSDK.audio().currentMediaDevice()
.then((ThenPromise<MediaDevice, Boolean>) currentMediaDevice -> {
// if there is no connected media device, reset speaker audio route ( with max 3 attempts).
if (null == currentMediaDevice && resetAudioAttempts <= 3) {
resetAudioAttempts++;
setSpeaker(); // recursive call
Log.d("codecappvideo", "Audio device reconnection " + resetAudioAttempts );
}
return Promise.resolve(true);
})
.error(error -> Log.d("codecappvideo", "Failed to get current media device: " + error));
break;
} else {
resetAudioAttempts = 0;
}
}
}
}
So as you can see I don't think forcing the speaker is a good solution, we may have missed something in https://dolby.io/developers/interactivity-apis/reference/client-sdk/reference-android/audioservice or https://github.com/voxeet/voxeet-sdk-android-audio and we hope that you can help please.
Greetings
Specifications
Hi, just now I got a crash when crating a conference.
Please do me a favor!
Thank you very much!
Here is the log: error log
Describe the bug
With the improvement on video and YouTube integration support, it's interesting to let developers be able to easily register "screen share" to be a special case of such presentations as well. With those 3 together, it will more straightforward to create a meaning full experience where participants view could be rearranged in the interface
Hello,
Some error happened after our APP minifyEnabled.
So how can I add the proguard roles?
Thanks.
Describe the bug
Voxeet crashes when turning on video on sdk lower than 21 while readme on repo site states that 16+ should be supported. Reproduced on multiple devices in sample app. Attached log from boot up of sample app to crash (Produced on Galaxy S3)
log.txt
Steps to Reproduce the Problem
Specifications
Hi dear,
I wonder how I can get the video inputstream/outputstream speed so that I can give the UI to the users.
Is there any suggestion about the network speed?
Please do me a favor, thanks a lot.
Sorry, But I have no any idea why the exception happened when building a release apk(debug apk will not see this exception).
If you have any clue, please let me know!
Thank you very much!
2021-11-04 15:35:59.764 2751-2751/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.semcorel.coco.tablet, PID: 2751
java.lang.RuntimeException: Unable to create application com.semcorel.coco.application.MyApplication: java.lang.IllegalArgumentException: Illegal URL: Target
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5907)
at android.app.ActivityThread.access$1200(ActivityThread.java:206)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1678)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6702)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:911)
Caused by: java.lang.IllegalArgumentException: Illegal URL: Target
at retrofit2.Retrofit$Builder.baseUrl(Retrofit.java:454)
at com.voxeet.sdk.services.VoxeetHttp.createClientRetrofits(VoxeetHttp.java:233)
at com.voxeet.sdk.services.VoxeetHttp.initRetrofit(VoxeetHttp.java:263)
at com.voxeet.sdk.services.VoxeetHttp.init(VoxeetHttp.java:112)
at com.voxeet.VoxeetSDK.internalInitialize(VoxeetSDK.java:219)
at com.voxeet.VoxeetSDK.initialize(VoxeetSDK.java:143)
at com.semcorel.coco.common.service.ConferenceService.registerApplication(ConferenceService.java:113)
at com.semcorel.coco.common.service.ConferenceService.initialize(ConferenceService.java:37)
at com.semcorel.coco.common.service.ServiceController.initialize(ServiceController.java:40)
at com.semcorel.coco.common.controller.Controller.initialize(Controller.java:30)
at com.semcorel.coco.application.MainApplication.onCreate(MainApplication.java:89)
at com.semcorel.coco.application.MyApplication.onCreate(MyApplication.java:39)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1154)
Describe the bug
Following the new logic integration, we now have a clear VoxeetAppCompatActivity extends VoxeetCommonAppCompatActivity. However most of cross platform libraries or even libraries requiring the developer to override the AppCompatActivity will need to copy/paste a lot of the UXKit's logic to be compatible with both framework/libraries
Expected Behaviour
Note : Only libraries support AndroidX will be supported (either directly or via jetifier)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.