diff --git a/talk/app/webrtc/java/jni/jni_helpers.cc b/talk/app/webrtc/java/jni/jni_helpers.cc index 755698e379..3a7ff21e77 100644 --- a/talk/app/webrtc/java/jni/jni_helpers.cc +++ b/talk/app/webrtc/java/jni/jni_helpers.cc @@ -1,4 +1,3 @@ - /* * libjingle * Copyright 2015 Google Inc. @@ -33,8 +32,6 @@ #include #include -#include "unicode/unistr.h" - namespace webrtc_jni { static JavaVM* g_jvm = nullptr; @@ -46,8 +43,6 @@ static pthread_once_t g_jni_ptr_once = PTHREAD_ONCE_INIT; // were attached by the JVM because of a Java->native call. static pthread_key_t g_jni_ptr; -using icu::UnicodeString; - JavaVM *GetJVM() { RTC_CHECK(g_jvm) << "JNI_OnLoad failed to run?"; return g_jvm; @@ -232,22 +227,20 @@ bool IsNull(JNIEnv* jni, jobject obj) { // Given a UTF-8 encoded |native| string return a new (UTF-16) jstring. jstring JavaStringFromStdString(JNIEnv* jni, const std::string& native) { - UnicodeString ustr(UnicodeString::fromUTF8(native)); - jstring jstr = jni->NewString(ustr.getBuffer(), ustr.length()); - CHECK_EXCEPTION(jni) << "error during NewString"; + jstring jstr = jni->NewStringUTF(native.c_str()); + CHECK_EXCEPTION(jni) << "error during NewStringUTF"; return jstr; } // Given a (UTF-16) jstring return a new UTF-8 native string. std::string JavaToStdString(JNIEnv* jni, const jstring& j_string) { - const jchar* jchars = jni->GetStringChars(j_string, NULL); - CHECK_EXCEPTION(jni) << "Error during GetStringChars"; - UnicodeString ustr(jchars, jni->GetStringLength(j_string)); - CHECK_EXCEPTION(jni) << "Error during GetStringLength"; - jni->ReleaseStringChars(j_string, jchars); - CHECK_EXCEPTION(jni) << "Error during ReleaseStringChars"; - std::string ret; - return ustr.toUTF8String(ret); + const char* chars = jni->GetStringUTFChars(j_string, NULL); + CHECK_EXCEPTION(jni) << "Error during GetStringUTFChars"; + std::string str(chars, jni->GetStringUTFLength(j_string)); + CHECK_EXCEPTION(jni) << "Error during GetStringUTFLength"; + jni->ReleaseStringUTFChars(j_string, chars); + CHECK_EXCEPTION(jni) << "Error during ReleaseStringUTFChars"; + return str; } // Return the (singleton) Java Enum object corresponding to |index|; diff --git a/talk/build/common.gypi b/talk/build/common.gypi index 36a96c5c55..48059e2937 100644 --- a/talk/build/common.gypi +++ b/talk/build/common.gypi @@ -41,7 +41,6 @@ ], # Disable these to not build components which can be externally provided. 'build_expat%': 1, - 'build_icu%': 1, 'build_json%': 1, 'build_libsrtp%': 1, 'build_libyuv%': 1, diff --git a/talk/libjingle.gyp b/talk/libjingle.gyp index 81d723a0d9..cd5385c11f 100755 --- a/talk/libjingle.gyp +++ b/talk/libjingle.gyp @@ -62,11 +62,6 @@ '<(libyuv_dir)/include', ], 'conditions': [ - ['build_icu==1', { - 'dependencies': [ - '<(DEPTH)/third_party/icu/icu.gyp:icuuc', - ], - }], ['OS=="linux"', { 'defines': [ 'HAVE_GTK', diff --git a/webrtc/build/common.gypi b/webrtc/build/common.gypi index 2b0516863e..fa94895ca0 100644 --- a/webrtc/build/common.gypi +++ b/webrtc/build/common.gypi @@ -89,7 +89,6 @@ # Disable these to not build components which can be externally provided. 'build_expat%': 1, - 'build_icu%': 1, 'build_json%': 1, 'build_libjpeg%': 1, 'build_libvpx%': 1, diff --git a/webrtc/build/webrtc.gni b/webrtc/build/webrtc.gni index 1d33e892d7..26f74b777d 100644 --- a/webrtc/build/webrtc.gni +++ b/webrtc/build/webrtc.gni @@ -36,7 +36,6 @@ declare_args() { # Disable these to not build components which can be externally provided. rtc_build_expat = true - rtc_build_icu = true rtc_build_json = true rtc_build_libjpeg = true rtc_build_libvpx = true diff --git a/webrtc/examples/android/media_demo/jni/jni_helpers.cc b/webrtc/examples/android/media_demo/jni/jni_helpers.cc index b0d1a7425c..7a4f5e4f6c 100644 --- a/webrtc/examples/android/media_demo/jni/jni_helpers.cc +++ b/webrtc/examples/android/media_demo/jni/jni_helpers.cc @@ -12,10 +12,6 @@ #include -#include "unicode/unistr.h" - -using icu::UnicodeString; - jmethodID GetMethodID(JNIEnv* jni, jclass c, const std::string& name, const char* signature) { jmethodID m = jni->GetMethodID(c, name.c_str(), signature); @@ -36,14 +32,13 @@ jlong jlongFromPointer(void* ptr) { // Given a (UTF-16) jstring return a new UTF-8 native string. std::string JavaToStdString(JNIEnv* jni, const jstring& j_string) { - const jchar* jchars = jni->GetStringChars(j_string, NULL); - CHECK_JNI_EXCEPTION(jni, "Error during GetStringChars"); - UnicodeString ustr(jchars, jni->GetStringLength(j_string)); - CHECK_JNI_EXCEPTION(jni, "Error during GetStringLength"); - jni->ReleaseStringChars(j_string, jchars); - CHECK_JNI_EXCEPTION(jni, "Error during ReleaseStringChars"); - std::string ret; - return ustr.toUTF8String(ret); + const char* chars = jni->GetStringUTFChars(j_string, NULL); + CHECK_JNI_EXCEPTION(jni, "Error during GetStringUTFChars"); + std::string str(chars, jni->GetStringUTFLength(j_string)); + CHECK_JNI_EXCEPTION(jni, "Error during GetStringUTFLength"); + jni->ReleaseStringUTFChars(j_string, chars); + CHECK_JNI_EXCEPTION(jni, "Error during ReleaseStringUTFChars"); + return str; } ClassReferenceHolder::ClassReferenceHolder(JNIEnv* jni, const char** classes, diff --git a/webrtc/webrtc_examples.gyp b/webrtc/webrtc_examples.gyp index 51a8265bab..d114b8dfeb 100644 --- a/webrtc/webrtc_examples.gyp +++ b/webrtc/webrtc_examples.gyp @@ -26,13 +26,6 @@ 'examples/android/media_demo/jni/on_load.cc', 'examples/android/media_demo/jni/voice_engine_jni.cc', ], - 'conditions': [ - ['build_icu==1', { - 'dependencies': [ - '<(DEPTH)/third_party/icu/icu.gyp:icuuc', - ], - }], - ], 'variables': { # This library uses native JNI exports; tell GYP so that the # required symbols will be kept.