diff --git a/tools/aapt2/util/Util.cpp b/tools/aapt2/util/Util.cpp index 44b4ec13b2f1a..efbbf8ebe013f 100644 --- a/tools/aapt2/util/Util.cpp +++ b/tools/aapt2/util/Util.cpp @@ -22,9 +22,9 @@ #include #include "android-base/stringprintf.h" +#include "android-base/strings.h" #include "androidfw/StringPiece.h" #include "build/version.h" - #include "text/Unicode.h" #include "text/Utf8Iterator.h" #include "util/BigBuffer.h" @@ -231,7 +231,14 @@ std::string GetToolFingerprint() { static const char* const sMinorVersion = "19"; // The build id of aapt2 binary. - static const std::string sBuildId = android::build::GetBuildNumber(); + static std::string sBuildId = android::build::GetBuildNumber(); + + if (android::base::StartsWith(sBuildId, "eng.")) { + time_t now = time(0); + tm* ltm = localtime(&now); + + sBuildId = android::base::StringPrintf("eng.%d%d", 1900 + ltm->tm_year, 1 + ltm->tm_mon); + } return android::base::StringPrintf("%s.%s-%s", sMajorVersion, sMinorVersion, sBuildId.c_str()); }