Merge pull request #570 from jiuqiant/patch-1
Connect glog to Andorid logging API
This commit is contained in:
commit
fa0d50f9fc
@ -1525,6 +1525,23 @@ ostream& LogMessage::stream() {
|
||||
return data_->stream_;
|
||||
}
|
||||
|
||||
namespace {
|
||||
#if defined(__ANDROID__)
|
||||
int AndroidLogLevel(const int severity) {
|
||||
switch (severity) {
|
||||
case 3:
|
||||
return ANDROID_LOG_FATAL;
|
||||
case 2:
|
||||
return ANDROID_LOG_ERROR;
|
||||
case 1:
|
||||
return ANDROID_LOG_WARN;
|
||||
default:
|
||||
return ANDROID_LOG_INFO;
|
||||
}
|
||||
}
|
||||
#endif // defined(__ANDROID__)
|
||||
} // namespace
|
||||
|
||||
// Flush buffered message, called by the destructor, or any other function
|
||||
// that needs to synchronize the log.
|
||||
void LogMessage::Flush() {
|
||||
@ -1559,7 +1576,13 @@ void LogMessage::Flush() {
|
||||
++num_messages_[static_cast<int>(data_->severity_)];
|
||||
}
|
||||
LogDestination::WaitForSinks(data_);
|
||||
|
||||
|
||||
#if defined(__ANDROID__)
|
||||
const int level = AndroidLogLevel((int)data_->severity_);
|
||||
const std::string text = std::string(data_->message_text_);
|
||||
__android_log_write(level, "native", text.substr(0,data_->num_chars_to_log_).c_str());
|
||||
#endif // !defined(__ANDROID__)
|
||||
|
||||
if (append_newline) {
|
||||
// Fix the ostrstream back how it was before we screwed with it.
|
||||
// It's 99.44% certain that we don't need to worry about doing this.
|
||||
|
||||
Loading…
Reference in New Issue
Block a user