# Changes between SDK versions for Android
# What has changed in version 3.0.0 compared to 2.2.0
Methods are now grouped by different interfaces:
For example, it was:
TrueConfSDK.getInstance().joinConf(confId);
TrueConfSDK.getInstance().logout();
Changed to:
TrueConfSDK.getConferenceManager().joinConf(confId);
TrueConfSDK.getServerManager().logout();
2. Significant changes have been made to audio management:
methods
isSpeakerMuted,getAudioDevices,onAudioPairChangedhave been removed;To obtain the current list of audio output devices, you need to execute the
requestAudioStaterequest and implement theonAudioDeviceResponsemethod from theAudioDeviceCallbackinterface. This callback also includes the methodsonAudioDeviceChangedandonAudioDeviceUpdate.To change the default output device, you must first execute the
requestAudioStaterequest, and only then set the device using thesetDefaultAudioDevicemethod;In the
ConferenceFragment,IncomingCallFragment, andPlaceCallFragment, the methodsonSwitchMicAppliedandonMuteSpeakerAppliedhave been removed. Instead, you need to implement the interfaceAudioDeviceCallback;The methods
muteMicrophone,muteSpeaker,changeAudioDeviceshould be used only during a conference; otherwise, they will not work due to a check.
3. Changes in video management:
added the
onVideoDeviceUpdatemethod to notify about camera status changes;In the
ConferenceFragment,IncomingCallFragment, andPlaceCallFragmentfragments, theonSwitchCameraAppliedmethod has been removed.The
muteCameramethod should be used only during a conference; otherwise, it will not work due to verification.
4. Paths to some important classes have been changed, such as the custom button class, as well as TrueConfListener and CallCast.
Was:
com.trueconf.sdk.data.TCSDKExtraButton
com.trueconf.sdk.interfaces.TrueConfListener
com.trueconf.sdk.gui.activities.CallCast
Changed to:
com.trueconf.sdk.presentation.views.TCExtraButton
com.trueconf.sdk.TrueConfListener
com.trueconf.sdk.presentation.activities.CallCast
5. The onStateChanged method received the FSM.State newState parameter, which returns the new user status (userOffline, userOnline, userBusy, etc.). The list of statuses is provided in the table in the "Types. UserPresStatus" section.
6. Some icon names for customization have been changed:
Instead of
ic_selfie_icon,ic_rotateis now used. Additionally, a resize iconic_minimize_fullscreenhas been added to the self-view video.The icons
shape_circle_background_red_pressedandshape_circle_background_redare no longer used;Added the
conf_button_backicon for changing the button background.
See the full list in Example 5 "Interface Customization".
7. Libraries are compiled using Java 17 (previously Java 11).
8. The SDK now includes updated libraries OpenSSL 1.1.1w and SQLite 3.47.0.
9. Drag-and-drop support for personal video on the conference screen is enabled.
10. The versions of some dependencies required for the SDK have been updated. The full list is provided in the Integration with Android Studio section.
# What has changed in version 2.2.0 compared to 1.3.3
- The Android SDK is now distributed through a Maven repository, accessible via a login and password provided upon request through your manager. You need to add the Maven repository to the repositories section in the Gradle file as follows:
maven {
credentials {
username 'username'
password 'password'
}
url 'https://sdk.trueconf.com/maven/repository/maven-public/'
}
2. To integrate the SDK, you need to add three libraries to dependencies in the .gradle configuration file:
api 'com.trueconf:trueconfsdk:2.2.0.101@aar'
api 'com.trueconf:media:2.2.0.101@aar'
api 'com.trueconf:jnicore:2.2.0.101@aar'
3. The minimum Android version is now 7.0 (minSdkVersion 24).
4. Connect the SDK to the project classes using the following lines:
import com.trueconf.sdk.TrueConfSDK;// to work with SDK methods
import com.trueconf.sdk.TrueConfListener; // to work with SDK events
5. Before calling the start method, you must call the registerApp method and pass a subclass of Application to it, for example:
public class TestApp extends Application {
@Override
public void onCreate() {
super.onCreate();
TrueConfSDK.getInstance().registerApp(this);
TrueConfSDK.getInstance().start("server.name", true);
...
}
}
6. You need to call the setFallbackActivity method, where you should specify the Activity class to return to when the call ends, for example:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TrueConfSDK.getInstance().setFallbackActivity(MainActivity.class);
...
}
}
- It is no longer necessary to include the activity
com.vc.gui.activities.Call,com.vc.gui.activities.PermissionActivity, andservice com.vc.service.ExternalSchemeHelperServicein the manifest file.
8. Customization features have been expanded: it is now possible to place your own video and conference participant videos in a separate Fragment, as well as to change the sizes and coordinates of the video layout for participants. Details are described in the documentation for example 7.
9. Some changes in the methods, namely:
In the
startmethod, theContextparameter has been removed.Added the
registerAppmethod, where a subclass ofApplicationmust be specified;Added the
setFallbackActivitymethod, where you need to specify theActivityclass to return to when the call ends;Added methods for managing speakers (
muteSpeaker,isSpeakerMuted,setDefaultSpeakerEnabled,getAudioDevices,getCurrentAudioDevice,setAudioDevice);onContactListUpdate- an event inTrueConfListener.UserStatusEventsCallbackthat occurs when the contact list and their statuses are loaded after the user logs in to the server;A new interface has been added -
TrueConfListener.AudioDeviceCallback, which contains 2 methods -onAudioPairChanged(invoked when the output device changes) andonAudioDeviceListChanged(invoked when the list of devices changes);Added methods
setDefaultAudioEnabledandsetDefaultCameraEnabledto set the default state of the microphone and camera, respectively;The methods
microphoneMutedandcameraMutedhave been renamed toisMicrophoneMutedandisCameraMuted, respectively;The
trueConfSDKLogEnableflag, which enabled detailed SDK logs, has been removed (they are now always recorded). Additionally, the methodsstartSavingLogsandstopSavingLogshave been removed, as logs are automatically collected in the./files/logssubdirectory.