Update android jni code to use C++ lambdas instead of rtc::Bind

Bug: webrtc:11339
Change-Id: I269bde1933d3f1d7b83b561eb2a09d0f38245e50
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/201735
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32991}
diff --git a/sdk/android/src/jni/android_network_monitor.cc b/sdk/android/src/jni/android_network_monitor.cc
index 434e6d3..9ef79bc 100644
--- a/sdk/android/src/jni/android_network_monitor.cc
+++ b/sdk/android/src/jni/android_network_monitor.cc
@@ -16,7 +16,6 @@
 #define RTLD_NOLOAD 4
 #endif
 
-#include "rtc_base/bind.h"
 #include "rtc_base/checks.h"
 #include "rtc_base/ip_address.h"
 #include "rtc_base/logging.h"
@@ -548,19 +547,18 @@
     const JavaRef<jobject>& j_network_info) {
   NetworkInformation network_info =
       GetNetworkInformationFromJava(env, j_network_info);
-  network_thread_->Invoke<void>(
-      RTC_FROM_HERE, rtc::Bind(&AndroidNetworkMonitor::OnNetworkConnected_n,
-                               this, network_info));
+  network_thread_->Invoke<void>(RTC_FROM_HERE, [this, &network_info] {
+    OnNetworkConnected_n(network_info);
+  });
 }
 
 void AndroidNetworkMonitor::NotifyOfNetworkDisconnect(
     JNIEnv* env,
     const JavaRef<jobject>& j_caller,
     jlong network_handle) {
-  network_thread_->Invoke<void>(
-      RTC_FROM_HERE,
-      rtc::Bind(&AndroidNetworkMonitor::OnNetworkDisconnected_n, this,
-                static_cast<NetworkHandle>(network_handle)));
+  network_thread_->Invoke<void>(RTC_FROM_HERE, [this, network_handle] {
+    OnNetworkDisconnected_n(static_cast<NetworkHandle>(network_handle));
+  });
 }
 
 void AndroidNetworkMonitor::NotifyOfNetworkPreference(
@@ -572,9 +570,9 @@
   rtc::NetworkPreference preference =
       static_cast<rtc::NetworkPreference>(jpreference);
 
-  network_thread_->Invoke<void>(
-      RTC_FROM_HERE, rtc::Bind(&AndroidNetworkMonitor::OnNetworkPreference_n,
-                               this, type, preference));
+  network_thread_->Invoke<void>(RTC_FROM_HERE, [this, type, preference] {
+    OnNetworkPreference_n(type, preference);
+  });
 }
 
 }  // namespace jni
diff --git a/sdk/android/src/jni/android_video_track_source.cc b/sdk/android/src/jni/android_video_track_source.cc
index f8455c9..72cf395 100644
--- a/sdk/android/src/jni/android_video_track_source.cc
+++ b/sdk/android/src/jni/android_video_track_source.cc
@@ -14,7 +14,6 @@
 
 #include <utility>
 
-#include "rtc_base/bind.h"
 #include "rtc_base/logging.h"
 
 namespace webrtc {
@@ -68,12 +67,7 @@
     } else {
       // TODO(sakal): Is this even necessary, does FireOnChanged have to be
       // called from signaling thread?
-      signaling_thread_->PostTask(
-          RTC_FROM_HERE,
-          rtc::Bind(
-              &AndroidVideoTrackSource::FireOnChanged,
-              static_cast<webrtc::Notifier<webrtc::VideoTrackSourceInterface>*>(
-                  this)));
+      signaling_thread_->PostTask(RTC_FROM_HERE, [this] { FireOnChanged(); });
     }
   }
 }