为 Android 构建 liblinphone 4.0.0 时找不到核心包

Core package not found, when building liblinphone 4.0.0 for Android

在 Android 的 LibLinphone 4.0.0 SDK 出来之前,我正在使用我在某个项目中找到的一些随机的旧 linphone-sdk.aar 库。 .aar 的大小约为 15mb,这个库工作正常,我可以选择包含来自

的文件
org.linphone.tools
org.linphone.core
org.linphone.mediastream

现在我尝试使用

下载和更新 Linphone
liblinphone-android-sdk.4.0.0.zip

来自 http://www.linphone.org/technical-corner/liblinphone/downloads

我删除了旧的 .aar,并包含了这个存在于这个 zip 文件中的文件,但是我的项目 returns 错误,因为它找不到包

org.linphone.core

其他2个包tools/mediastream和以前一样正常找到。

- 然后我尝试从源文件构建 linphone-android ,经过很多问题我得到了 .aar 版本,但问题是一样的!

- 然后我看到你可以从 linphone 下载一些构建的快照 https://www.linphone.org/snapshots/android/ 并找到版本

liblinphone-android-sdk-3.3.2-54-g115f74d

这个版本可以正常运行,但是.aar的大小在80mb左右!

关于这个问题的问题

  1. 有谁知道为什么这个4.0.0 SDK版本有问题
  2. 我是否必须从源文件构建其他东西(我使用 make liblinphone-android-sdk)才能工作?
  3. 为什么有些 .aar 文件的大小差别如此之大,这个 80mb 的文件比只有 15mb 的文件包含更多吗?最新的 liblinphone 哪个尺寸合适?

谢谢!

关于大小问题我不知道 80mb 是否意味着更多功能将测试该版本,

但是最新的 4.0.0(4.0.1 已经出来了,但他们还没有更新 link,我不知道为什么)有很多代码重新格式化和 class 重命名我不知道是否修复了任何错误但可能

如果您需要一个清晰的用法示例,您应该查看 linphone android git hub here

最重要的class是偏好here linphone manger 也 here

我发现了问题...

在 4.0+(可能)中,他们重命名了名称中包含 Linphone 的所有文件,例如

LinphoneCore -> Core

他们还重命名了所有使用的接口,例如

LinphoneAccountCreator.RequestStatus -> Status(仅替换为 Status接口,包含在多个 class 中,如 Call、AccountCreator 等。在这种情况下,它存在于 AccountCreator class)

还有枚举类型,例如 callDirection 甚至函数名称

call.getDirection() == CallDirection.Incoming -> call.getDir() == Call.Dir.Incoming

根据首席 Belladonne 开发人员的说法,他们已经放弃了 Java 包装器,取而代之的是自动化包装器:https://github.com/BelledonneCommunications/linphone-android/issues/484#issuecomment-466419232

我正在尝试使用旧包装器构建 4.1(根据该开发人员的建议)。到目前为止它很难失败:https://github.com/BelledonneCommunications/linphone-android/issues/486

在尝试将代码移植到新的 API 时(根据@Tomek 的建议)我发现了很多需要的更改,所以这仍然是 PLAB B。