将本地 .aar 文件添加到 Titanium SDK 9 Android 模块
Add local .aar files to Titanium SDK 9 Android module
我正在使用 Titanium SDK 9 创建一个 Android 模块。我有 2 个 .aar 文件需要包含在我的模块中。根据文档,您不能再将它们添加到 lib
目录:
“使用 Titanium 6.1.1 - 8.3.1,您还可以将 AAR(Android 存档)库文件复制到模块的 lib 目录。但是,从 Titanium 9.0.0 开始不支持此操作,这要求您改为通过 build.gradle 文件引用这些 AAR 库。"
但是我该如何正确引用它们呢?我的 build.gradle 文件的以下配置可以编译,但是当我使用该模块时,当我使用一些 .aar 文件 类:[=14= 时,我会立即看到 'Failed resolution of: Lpolar/com/sdk/api/PolarBleApiDefaultImpl' 之类的错误]
implementation files('../../libs/polar-ble-sdk.aar')
implementation files('../../libs/polar-protobuf-release.aar')
// Below 2 lines also compile
// compile files('../../libs/polar-ble-sdk.aar')
// compile files('../../libs/polar-protobuf-release.aar')
implementation group: 'commons-io', name: 'commons-io', version: '2.4'
implementation 'com.google.protobuf:protobuf-java:3.1.0'
implementation 'io.reactivex.rxjava2:rxjava:2.1.5'
implementation 'io.reactivex.rxjava2:rxandroid:2.0.1'
我试图在我的 Titanium 项目中执行的调用导致错误:
import polar.com.sdk.api.PolarBleApi;
import polar.com.sdk.api.PolarBleApiDefaultImpl;
// and then later on
PolarBleApi api = PolarBleApiDefaultImpl.defaultImplementation(this,
PolarBleApi.FEATURE_HR);
在 https://github.com/polarofficial/polar-ble-sdk
找到图书馆
使用这个build.gradle
repositories {
maven { url "https://oss.jfrog.org/libs-snapshot" }
}
dependencies {
implementation files('../../libs/polar-ble-sdk.aar')
implementation files('../../libs/polar-protobuf-release.aar')
implementation 'io.reactivex.rxjava3:rxandroid:3.0.0'
implementation 'io.reactivex.rxjava3:rxjava:3.0.0'
}
工作正常。在 Android Studio 中使用 import polar.com.sdk.api.PolarBleApi;
或 auto-completion 没问题。
编译工作正常(但我最后没有在 Titanium 中尝试该模块)。
编辑:
- 也将 build.gradle 添加到您的应用中:
platform/android/build.gradle
(相同内容)
- 应用程序:创建
/build/libs
并添加库
- 模块:
@Kroll.method
public void create()
{
PolarBleApi api = PolarBleApiDefaultImpl.defaultImplementation(TiApplication.getAppCurrentActivity(), PolarBleApi.FEATURE_HR);
Log.i("Polar", "Version: " + PolarBleApiDefaultImpl.versionInfo());
}
- 应用程序:
var window = Ti.UI.createWindow({
title: "Test"
});
var polar = require("ti.polar");
polar.create();
window.open();
输出:[INFO] Polar: (main) [92,92] Version: 2.2.2
我正在使用 Titanium SDK 9 创建一个 Android 模块。我有 2 个 .aar 文件需要包含在我的模块中。根据文档,您不能再将它们添加到 lib
目录:
“使用 Titanium 6.1.1 - 8.3.1,您还可以将 AAR(Android 存档)库文件复制到模块的 lib 目录。但是,从 Titanium 9.0.0 开始不支持此操作,这要求您改为通过 build.gradle 文件引用这些 AAR 库。"
但是我该如何正确引用它们呢?我的 build.gradle 文件的以下配置可以编译,但是当我使用该模块时,当我使用一些 .aar 文件 类:[=14= 时,我会立即看到 'Failed resolution of: Lpolar/com/sdk/api/PolarBleApiDefaultImpl' 之类的错误]
implementation files('../../libs/polar-ble-sdk.aar')
implementation files('../../libs/polar-protobuf-release.aar')
// Below 2 lines also compile
// compile files('../../libs/polar-ble-sdk.aar')
// compile files('../../libs/polar-protobuf-release.aar')
implementation group: 'commons-io', name: 'commons-io', version: '2.4'
implementation 'com.google.protobuf:protobuf-java:3.1.0'
implementation 'io.reactivex.rxjava2:rxjava:2.1.5'
implementation 'io.reactivex.rxjava2:rxandroid:2.0.1'
我试图在我的 Titanium 项目中执行的调用导致错误:
import polar.com.sdk.api.PolarBleApi;
import polar.com.sdk.api.PolarBleApiDefaultImpl;
// and then later on
PolarBleApi api = PolarBleApiDefaultImpl.defaultImplementation(this,
PolarBleApi.FEATURE_HR);
在 https://github.com/polarofficial/polar-ble-sdk
找到图书馆使用这个build.gradle
repositories {
maven { url "https://oss.jfrog.org/libs-snapshot" }
}
dependencies {
implementation files('../../libs/polar-ble-sdk.aar')
implementation files('../../libs/polar-protobuf-release.aar')
implementation 'io.reactivex.rxjava3:rxandroid:3.0.0'
implementation 'io.reactivex.rxjava3:rxjava:3.0.0'
}
工作正常。在 Android Studio 中使用 import polar.com.sdk.api.PolarBleApi;
或 auto-completion 没问题。
编译工作正常(但我最后没有在 Titanium 中尝试该模块)。
编辑:
- 也将 build.gradle 添加到您的应用中:
platform/android/build.gradle
(相同内容) - 应用程序:创建
/build/libs
并添加库 - 模块:
@Kroll.method
public void create()
{
PolarBleApi api = PolarBleApiDefaultImpl.defaultImplementation(TiApplication.getAppCurrentActivity(), PolarBleApi.FEATURE_HR);
Log.i("Polar", "Version: " + PolarBleApiDefaultImpl.versionInfo());
}
- 应用程序:
var window = Ti.UI.createWindow({
title: "Test"
});
var polar = require("ti.polar");
polar.create();
window.open();
输出:[INFO] Polar: (main) [92,92] Version: 2.2.2