Возможно, вы захотите убедиться, что в вашей среде Android в конечном итоге будет определено BOOST_DATE_TIME_HAS_HIGH_PRECISION_CLOCK .
Если вы посмотрите на значения по умолчанию timer_traits в boost/asio/time_traits.hpp
, вы увидите, что еслиэто не определено, asio будет использовать second_clock в качестве таймера.
Это определение берется из boost/date_time/compiler_config.hpp
, условно для BOOST_HAS_GETTIMEOFDAY или BOOST_HAS_FTIME .Учитывая ваш пример, предположительно, должно быть определено первое.
Я не знаю, считается ли Android собственной платформой или Boost обнаруживает его как Linux.В boost/config/platform/linux.hpp
это определяется как:
//
// If glibc is past version 2 then we definitely have
// gettimeofday, earlier versions may or may not have it:
//
#if defined(__GLIBC__) && (__GLIBC__ >= 2)
# define BOOST_HAS_GETTIMEOFDAY
#endif
Это, вероятно, где вы хотите добавить дополнительное условие для Android.