diff --git a/include/spdlog/sinks/android_sink.h b/include/spdlog/sinks/android_sink.h index ba1f70b7..dd811633 100644 --- a/include/spdlog/sinks/android_sink.h +++ b/include/spdlog/sinks/android_sink.h @@ -15,7 +15,6 @@ #include #include #include -#include #if !defined(SPDLOG_ANDROID_RETRIES) #define SPDLOG_ANDROID_RETRIES 2 @@ -25,15 +24,13 @@ namespace spdlog { namespace sinks { /* - * Android sink - * (logging using __android_log_write or __android_log_buf_write depending on the specified BufferID) - * They are thread-safe. No lock is needed. + * Android sink (logging using __android_log_write) + * __android_log_write is thread-safe. No lock is needed. */ -template -class android_sink_buf : public sink +class android_sink : public sink { public: - explicit android_sink_buf(const std::string &tag = "spdlog", bool use_raw_msg = false) + explicit android_sink(const std::string &tag = "spdlog", bool use_raw_msg = false) : _tag(tag) , _use_raw_msg(use_raw_msg) { @@ -45,12 +42,12 @@ public: const char *msg_output = (_use_raw_msg ? msg.raw.c_str() : msg.formatted.c_str()); // See system/core/liblog/logger_write.c for explanation of return value - int ret = android_log(priority, _tag.c_str(), msg_output); + int ret = __android_log_write(priority, _tag.c_str(), msg_output); int retry_count = 0; while ((ret == -11 /*EAGAIN*/) && (retry_count < SPDLOG_ANDROID_RETRIES)) { details::os::sleep_for_millis(5); - ret = android_log(priority, _tag.c_str(), msg_output); + ret = __android_log_write(priority, _tag.c_str(), msg_output); retry_count++; } @@ -63,21 +60,6 @@ public: void flush() override {} private: - // There might be liblog versions used, that do not support __android_log_buf_write. So we only compile and link against - // __android_log_buf_write, if user explicitely provides a non-default log buffer. Otherwise, when using the default log buffer, always - // log via __android_log_write. - template - typename std::enable_if(log_id::LOG_ID_MAIN), int>::type android_log(Args... args) - { - return __android_log_write(std::forward(args)...); - } - - template - typename std::enable_if(log_id::LOG_ID_MAIN), int>::type android_log(Args... args) - { - return __android_log_buf_write(ID, std::forward(args)...); - } - static android_LogPriority convert_to_android(spdlog::level::level_enum level) { switch (level) @@ -103,12 +85,6 @@ private: bool _use_raw_msg; }; -/** - * Android sink (logging using __android_log_write) - * __android_log_write is thread-safe. No lock is needed. - */ -using android_sink = android_sink_buf; - } // namespace sinks } // namespace spdlog