Я пытаюсь интегрировать Agora Voice Calling в свое приложение, но получаю java.lang.UnsatisfiedLinkError - PullRequest
0 голосов
/ 11 октября 2019

Я получаю сообщение об ошибке в следующей строке:

AgoraAPIOnlySignal m_agoraAPI = AgoraAPIOnlySignal.getInstance(this, appID);

в AGApplication. Может кто-нибудь сообщить мне, где я иду не так?

На случай, если вам понадобится трассировка стека

 java.lang.UnsatisfiedLinkError: No implementation found for void io.agora.NativeAgoraAPI.jniInitGet() (tried Java_io_agora_NativeAgoraAPI_jniInitGet and Java_io_agora_NativeAgoraAPI_jniInitGet__)
    at io.agora.NativeAgoraAPI.jniInitGet(Native Method)
    at io.agora.AgoraAPIOnlySignal.getInstance(AgoraAPIOnlySignal.java:60)
    at live.smartify.community.smartliving.security.application.AGApplication.setupAgoraEngine(AGApplication.java:82)
    at live.smartify.community.smartliving.security.application.AGApplication.onCreate(AGApplication.java:67)

1 Ответ

0 голосов
/ 16 октября 2019

Agora Signaling SDK - это отдельный SDK, который не входит в состав встроенного SDK Agora, поэтому вам необходимо загрузить и связать / добавить свой проект отдельно от Native SDK.

Agora Signaling SDK имеетустарела, вы должны использовать RTM SDK Agora.io , он обладает всеми функциями Signaling SDK, а также некоторыми новыми.

Обязательно загрузите SDK и свяжите его с вашим проектом. После того, как SDK установлен в вашем проекте, вы можете начать с помощью:

public void init() {
    try {
        mRtmClient = RtmClient.createInstance(mContext, APPID, new RtmClientListener() {
            @Override
            public void onConnectionStateChanged(int state, int reason) {
                Log.d(TAG, "Connection state changes to " + state + " reason: " + reason);
            }

            @Override
            public void onMessageReceived(RtmMessage rtmMessage, String peerId) {
                String msg = rtmMessage.getText();
                Log.d(TAG, "Message received " + " from " + peerId + msg);
            }
        });
    } catch (Exception e) {
        Log.d(TAG, "RTM SDK initialization fatal error!");
        throw new RuntimeException("You need to check the RTM initialization process.");
    }
}

См. Полное руководство по Android RTM SDK: https://docs.agora.io/en/Real-time-Messaging/messaging_android?platform=Android

...