android-gradle-pluginquickbloxquickblox-android

New quickblox with maven compile dependencies. giving error on startCall


Im using the quickblox in one of my applications. its dependencies have been added using

app build.gradle =>

// start quickblox, online dependencies, from remote repository, aar files
compile "com.quickblox:quickblox-android-sdk-core:${rootProject.qbSdkVersion}@aar"
compile("com.quickblox:quickblox-android-sdk-chat:${rootProject.qbSdkVersion}@aar") {
    transitive = true
}
compile "com.quickblox:quickblox-android-sdk-content:${rootProject.qbSdkVersion}@aar"
compile "com.quickblox:quickblox-android-sdk-messages:${rootProject.qbSdkVersion}@aar"
compile "com.quickblox:quickblox-android-sdk-customobjects:${rootProject.qbSdkVersion}@aar"
compile "com.quickblox:quickblox-android-sdk-location:${rootProject.qbSdkVersion}@aar"
compile "com.quickblox:quickblox-android-sdk-videochat-webrtc:${rootProject.qbSdkVersion}@aar"

note qbSdkVersion=2.5

prject build.gradle =>

allprojects {
repositories {
    jcenter()
    maven {
        url "https://github.com/QuickBlox/quickblox-android-sdk-releases/raw/master/"
    }
    mavenCentral()
}}

It all works the build dependencies are fetched, infact session and login also works.

The application crashes on startCall() due to following error..

    02-23 21:18:31.671 30766-2911/com.prontoitlabs.pocquickblox E/AndroidRuntime: FATAL EXCEPTION: Thread-212
Process: com.prontoitlabs.pocquickblox, PID: 30766
java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.prontoitlabs.pocquickblox-1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]] couldn't find "libjingle_peerconnection_so.so"
    at java.lang.Runtime.loadLibrary(Runtime.java:366)
    at java.lang.System.loadLibrary(System.java:988)
    at org.webrtc.PeerConnectionFactory.<clinit>(PeerConnectionFactory.java:39)
    at com.quickblox.videochat.webrtc.PeerFactoryManager.initializeFactoryFieldTrials(PeerFactoryManager.java:109)
    at com.quickblox.videochat.webrtc.PeerFactoryManager.initPeerConnectionFactory(PeerFactoryManager.java:83)
    at com.quickblox.videochat.webrtc.PeerFactoryManager.access$100(PeerFactoryManager.java:11)
    at com.quickblox.videochat.webrtc.PeerFactoryManager$1.run(PeerFactoryManager.java:59)
    at android.os.Handler.handleCallback(Handler.java:739)
    at android.os.Handler.dispatchMessage(Handler.java:95)
    at android.os.Looper.loop(Looper.java:135)
    at com.quickblox.videochat.webrtc.LooperExecutor.run(LooperExecutor.java:73)

I do not understand this nativelibs error, i mean i've not included the dependences using libs/*.jar etc ive used gradle dependences.

i use the following gradle classpath 'com.android.tools.build:gradle:1.5.0'

Help!...


Solution

  • Refer to video chat sample https://github.com/QuickBlox/quickblox-android-sdk/tree/master/sample-videochat-webrtc. You should put .so files in jnilibs/ directory under src/main.