blob: 66dde947ac01058449c8df9cc37faf819be91909 [file] [log] [blame]
Jason Long00b84622020-07-20 17:52:12 -04001# Copyright (c) 2020 The WebRTC project authors. All Rights Reserved.
2#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS. All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
8
9import("//webrtc.gni")
10
11if (is_android) {
12 rtc_android_apk("androidvoip") {
13 testonly = true
14 apk_name = "androidvoip"
15 android_manifest = "AndroidManifest.xml"
16 min_sdk_version = 21
17 target_sdk_version = 27
18
19 sources = [
20 "java/org/webrtc/examples/androidvoip/MainActivity.java",
21 "java/org/webrtc/examples/androidvoip/OnVoipClientTaskCompleted.java",
22 "java/org/webrtc/examples/androidvoip/VoipClient.java",
23 ]
24
25 deps = [
26 ":resources",
27 "//modules/audio_device:audio_device_java",
28 "//rtc_base:base_java",
Jason Long577fc0c2020-08-17 17:23:07 -040029 "//sdk/android:base_java",
Jason Long00b84622020-07-20 17:52:12 -040030 "//sdk/android:java_audio_device_module_java",
31 "//sdk/android:video_java",
Peter Kotwiczed8abad2021-02-10 18:11:30 -050032 "//third_party/androidx:androidx_core_core_java",
33 "//third_party/androidx:androidx_legacy_legacy_support_v4_java",
Jason Long00b84622020-07-20 17:52:12 -040034 ]
35
36 shared_libraries = [ ":examples_androidvoip_jni" ]
37 }
38
39 generate_jni("generated_jni") {
40 testonly = true
41 sources = [ "java/org/webrtc/examples/androidvoip/VoipClient.java" ]
42 namespace = "webrtc_examples"
43 jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
44 }
45
46 rtc_shared_library("examples_androidvoip_jni") {
47 testonly = true
48 sources = [
49 "jni/android_voip_client.cc",
50 "jni/android_voip_client.h",
51 "jni/onload.cc",
52 ]
53
54 suppressed_configs += [ "//build/config/android:hide_all_but_jni_onload" ]
55 configs += [ "//build/config/android:hide_all_but_jni" ]
56
57 deps = [
58 ":generated_jni",
Mirko Bonadeie5f4c6b2021-01-15 10:41:01 +010059 "../../rtc_base:socket_address",
60 "../../rtc_base:socket_server",
61 "../../rtc_base:threading",
Jason Long00b84622020-07-20 17:52:12 -040062 "//api:transport_api",
63 "//api/audio_codecs:audio_codecs_api",
64 "//api/audio_codecs:builtin_audio_decoder_factory",
65 "//api/audio_codecs:builtin_audio_encoder_factory",
66 "//api/task_queue:default_task_queue_factory",
67 "//api/voip:voip_api",
68 "//api/voip:voip_engine_factory",
69 "//modules/utility:utility",
70 "//rtc_base",
71 "//rtc_base/third_party/sigslot:sigslot",
72 "//sdk/android:native_api_audio_device_module",
73 "//sdk/android:native_api_base",
74 "//sdk/android:native_api_jni",
75 "//third_party/abseil-cpp/absl/memory:memory",
76 ]
77 }
78
79 android_resources("resources") {
80 testonly = true
81 custom_package = "org.webrtc.examples.androidvoip"
Jason Long00b84622020-07-20 17:52:12 -040082 sources = [
83 "res/layout/activity_main.xml",
84 "res/values/colors.xml",
85 "res/values/strings.xml",
86 ]
87
88 # Needed for Bazel converter.
89 resource_dirs = [ "res" ]
90 assert(resource_dirs != []) # Mark as used.
91 }
92}