Я создаю плагин nativescript и хочу использовать новый WorkManager из Android (https://developer.android.com/topic/libraries/architecture/workmanager).
Вот как я хочу создать экземпляр класса Worker:
export class GeofenceWorker extends androidx.work.Worker {
constructor(context, params) {
super(context,params);
}
public doWork(): androidx.work.ListenableWorker.Result {
console.log("work done");
return androidx.work.ListenableWorker.Result.success()
}
}
Однако я продолжаю получать следующую ошибку:
TS2339: Property 'work' does not exist on type 'typeof androidx'.
Следуя инструкциям, я добавил следующий код в файл include.gradle в плагине / src / platform / android / include.gradle
repositories {
jcenter()
maven {
url "https://maven.google.com"
}
}
}
android {
}
dependencies {
def googlePlayServicesVersion = project.hasProperty('googlePlayServicesVersion') ? project.googlePlayServicesVersion : "11.4.0"
compile "com.google.android.gms:play-services-location:$googlePlayServicesVersion"
compile "androidx.work:work-runtime:2.2.0"
}
Кроме того, я также включил следующий код в основной app.gradle приложений nativescript, в котором установлен плагин:
dependencies {
implementation 'com.google.android.gms:play-services-location:17.0.0'
implementation "androidx.work:work-runtime:2.2.0"
}
Я также пытался очистить платформу Android с помощью tns platform clean android
в основном плагине, но безуспешно.
Итак, я понимаю, что проблема не в том, что нет доступа к зависимости. Я думал о добавлении библиотеки .aar в мой проект, но я совершенно уверен, что это необходимо только для custom /не по умолчанию apis, которых нет в репозиториях. Добавление репозитория google()
в include.gradle также не помогает.