Android: Replacement for JNIEnv::FindClass that works from any thread
This CL adds a replacement for JNIEnv::FindClass that works from any thread, i.e. from native C++ threads as well. This function will be used from the generated JNI code. Long term, we should stop using classreferenceholder that relies on a hardcoded list of WebRTC classes. Bug: webrtc:8278 Change-Id: I4f40c744325ac02b73bd8fa479ab50b684429dc2 Reviewed-on: https://webrtc-review.googlesource.com/20223 Commit-Queue: Magnus Jedvert <magjed@webrtc.org> Reviewed-by: Sami Kalliomäki <sakal@webrtc.org> Cr-Commit-Position: refs/heads/master@{#20583}
This commit is contained in:
committed by
Commit Bot
parent
fd0de7a4bb
commit
3111e5fb48
23
sdk/android/src/java/org/webrtc/ClassLoader.java
Normal file
23
sdk/android/src/java/org/webrtc/ClassLoader.java
Normal file
@ -0,0 +1,23 @@
|
||||
/*
|
||||
* Copyright 2017 The WebRTC project authors. All Rights Reserved.
|
||||
*
|
||||
* Use of this source code is governed by a BSD-style license
|
||||
* that can be found in the LICENSE file in the root of the source
|
||||
* tree. An additional intellectual property rights grant can be found
|
||||
* in the file PATENTS. All contributing project authors may
|
||||
* be found in the AUTHORS file in the root of the source tree.
|
||||
*/
|
||||
|
||||
package org.webrtc;
|
||||
|
||||
/**
|
||||
* This class provides a ClassLoader that is capable of loading WebRTC Java classes regardless of
|
||||
* what thread it's called from. Such a ClassLoader is needed for the few cases where the JNI
|
||||
* mechanism is unable to automatically determine the appropriate ClassLoader instance.
|
||||
*/
|
||||
class ClassLoader {
|
||||
@CalledByNative
|
||||
static Object getClassLoader() {
|
||||
return ClassLoader.class.getClassLoader();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user