blob: 4c1abac2f87f6729d43f670ccbcfb50ba6c9e74a [file] [log] [blame]
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +01001import("//webrtc.gni")
2
Oleh Prypinfdc0ef12018-07-23 10:01:26 +02003if (is_android) {
4 rtc_android_apk("androidnativeapi") {
5 testonly = true
6 apk_name = "androidnativeapi"
7 android_manifest = "AndroidManifest.xml"
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +01008
Oleh Prypinfdc0ef12018-07-23 10:01:26 +02009 java_files = [
10 "java/org/webrtc/examples/androidnativeapi/MainActivity.java",
11 "java/org/webrtc/examples/androidnativeapi/CallClient.java",
12 ]
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010013
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020014 deps = [
15 ":resources",
16 "//modules/audio_device:audio_device_java",
17 "//sdk/android:camera_java",
18 "//sdk/android:surfaceviewrenderer_java",
19 "//sdk/android:video_api_java",
20 "//sdk/android:video_java",
Artem Titarenko69540f42018-12-10 12:30:46 +010021 "//third_party/android_deps:android_support_annotations_java",
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020022 ]
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010023
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020024 shared_libraries = [ ":examples_androidnativeapi_jni" ]
25 }
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010026
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020027 generate_jni("generated_jni") {
28 testonly = true
29 sources = [
30 "java/org/webrtc/examples/androidnativeapi/CallClient.java",
31 ]
32 jni_package = ""
33 namespace = "webrtc_examples"
34 jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
35 }
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010036
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020037 rtc_shared_library("examples_androidnativeapi_jni") {
38 testonly = true
39 sources = [
Steve Anton10542f22019-01-11 09:11:00 -080040 "jni/android_call_client.cc",
41 "jni/android_call_client.h",
Steve Antonaec15aa2019-01-11 09:13:07 -080042 "jni/androidcallclient.h",
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020043 "jni/onload.cc",
44 ]
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010045
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020046 suppressed_configs += [ "//build/config/android:hide_all_but_jni_onload" ]
47 configs += [ "//build/config/android:hide_all_but_jni" ]
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010048
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020049 deps = [
50 ":generated_jni",
Mirko Bonadeid9708072019-01-25 20:26:48 +010051 "../../api:scoped_refptr",
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020052 "//api:libjingle_peerconnection_api",
53 "//api/audio_codecs:builtin_audio_decoder_factory",
54 "//api/audio_codecs:builtin_audio_encoder_factory",
Jiawei Ouc2ebe212018-11-08 10:02:56 -080055 "//api/video:builtin_video_bitrate_allocator_factory",
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020056 "//logging:rtc_event_log_impl_base",
57 "//media:rtc_audio_video",
58 "//media:rtc_internal_video_codecs",
59 "//modules/audio_processing",
Alessio Bazzicab768e882018-11-07 14:29:54 +000060 "//modules/audio_processing:api",
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020061 "//modules/utility:utility",
62 "//pc:libjingle_peerconnection",
63 "//rtc_base:rtc_base",
64 "//rtc_base:rtc_base_approved",
65 "//sdk/android:native_api_base",
66 "//sdk/android:native_api_jni",
67 "//sdk/android:native_api_video",
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020068 "//third_party/abseil-cpp/absl/memory",
69 ]
70 }
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010071
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020072 android_resources("resources") {
73 testonly = true
74 resource_dirs = [ "res" ]
75 custom_package = "org.webrtc.examples.androidnativeapi"
76 }
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010077}