BUILD.gn (2664B)
1 import("//webrtc.gni") 2 3 if (is_android) { 4 import("//third_party/jni_zero/jni_zero.gni") 5 rtc_android_apk("androidnativeapi") { 6 testonly = true 7 apk_name = "androidnativeapi" 8 android_manifest = "AndroidManifest.xml" 9 min_sdk_version = 23 10 target_sdk_version = 31 11 12 sources = [ 13 "java/org/webrtc/examples/androidnativeapi/CallClient.java", 14 "java/org/webrtc/examples/androidnativeapi/MainActivity.java", 15 ] 16 17 deps = [ 18 ":resources", 19 "//rtc_base:base_java", 20 "//sdk/android:camera_java", 21 "//sdk/android:surfaceviewrenderer_java", 22 "//sdk/android:video_api_java", 23 "//sdk/android:video_java", 24 "//third_party/androidx:androidx_annotation_annotation_java", 25 ] 26 27 shared_libraries = [ ":examples_androidnativeapi_jni" ] 28 } 29 30 generate_jni("generated_jni") { 31 testonly = true 32 sources = [ "java/org/webrtc/examples/androidnativeapi/CallClient.java" ] 33 namespace = "webrtc_examples" 34 } 35 36 rtc_shared_library("examples_androidnativeapi_jni") { 37 testonly = true 38 sources = [ 39 "jni/android_call_client.cc", 40 "jni/android_call_client.h", 41 "jni/onload.cc", 42 ] 43 44 suppressed_configs += [ "//chromium/build/config/android:hide_all_but_jni_onload" ] 45 configs += [ "//chromium/build/config/android:hide_all_but_jni" ] 46 47 deps = [ 48 ":generated_jni", 49 "../../api:create_modular_peer_connection_factory", 50 "../../api:enable_media_with_defaults", 51 "../../api:make_ref_counted", 52 "../../api:media_stream_interface", 53 "../../api:rtc_error", 54 "../../api:scoped_refptr", 55 "../../api:sequence_checker", 56 "../../api/video:video_frame", 57 "../../rtc_base:checks", 58 "../../rtc_base:logging", 59 "../../rtc_base:macromagic", 60 "../../rtc_base:ssl", 61 "../../rtc_base:ssl_adapter", 62 "../../rtc_base:threading", 63 "../../rtc_base/synchronization:mutex", 64 "//api:libjingle_peerconnection_api", 65 "//api/rtc_event_log:rtc_event_log_factory", 66 "//api/task_queue:default_task_queue_factory", 67 "//media:rtc_audio_video", 68 "//media:rtc_internal_video_codecs", 69 "//modules/utility", 70 "//pc:libjingle_peerconnection", 71 "//sdk/android:native_api_base", 72 "//sdk/android:native_api_jni", 73 "//sdk/android:native_api_video", 74 ] 75 } 76 77 android_resources("resources") { 78 testonly = true 79 custom_package = "org.webrtc.examples.androidnativeapi" 80 sources = [ 81 "res/layout/activity_main.xml", 82 "res/values/strings.xml", 83 ] 84 85 # Needed for Bazel converter. 86 resource_dirs = [ "res" ] 87 assert(resource_dirs != []) # Mark as used. 88 } 89 }