| # Copyright 2020 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| if (is_android) { |
| import("//build/config/android/config.gni") |
| import("//build/config/android/rules.gni") |
| import("//third_party/jni_zero/jni_zero.gni") |
| } |
| |
| if (is_android) { |
| android_library("internal_java") { |
| mergeable_android_manifests = [ "android/AndroidManifest.xml" ] |
| sources = [ |
| "android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskBroadcastReceiver.java", |
| "android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskJobService.java", |
| "android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerDelegate.java", |
| "android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerFactoryInternal.java", |
| "android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerImpl.java", |
| "android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerJobService.java", |
| "android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerUma.java", |
| ] |
| |
| deps = [ |
| "//base:base_java", |
| "//build/android:build_java", |
| "//components/background_task_scheduler:background_task_scheduler_task_ids_java", |
| "//components/background_task_scheduler:public_java", |
| "//content/public/android:content_main_dex_java", |
| "//third_party/androidx:androidx_annotation_annotation_java", |
| "//third_party/androidx:androidx_core_core_java", |
| ] |
| } |
| |
| static_library("native_task") { |
| sources = [ |
| "android/native_task_scheduler.cc", |
| "android/native_task_scheduler.h", |
| "android/task_info_bridge.cc", |
| "android/task_info_bridge.h", |
| ] |
| |
| deps = [ |
| ":jni_headers", |
| "//base", |
| "//components/background_task_scheduler:public", |
| ] |
| } |
| |
| android_library("native_task_java") { |
| srcjar_deps = [ ":jni_headers" ] |
| sources = [ |
| "android/java/src/org/chromium/components/background_task_scheduler/internal/NativeTaskScheduler.java", |
| "android/java/src/org/chromium/components/background_task_scheduler/internal/TaskInfoBridge.java", |
| ] |
| |
| deps = [ |
| "//base:base_java", |
| "//components/background_task_scheduler:factory_java", |
| "//components/background_task_scheduler:public_java", |
| "//third_party/jni_zero:jni_zero_java", |
| ] |
| } |
| |
| generate_jni("jni_headers") { |
| visibility = [ ":*" ] |
| |
| sources = [ |
| "android/java/src/org/chromium/components/background_task_scheduler/internal/NativeTaskScheduler.java", |
| "android/java/src/org/chromium/components/background_task_scheduler/internal/TaskInfoBridge.java", |
| ] |
| } |
| } |