diff --git a/Engine/Build/Android/Java/src/com/epicgames/ue4/GameActivity.java.template b/Engine/Build/Android/Java/src/com/epicgames/ue4/GameActivity.java.template index cb8952e0c3f7..763d5d001ac9 100644 --- a/Engine/Build/Android/Java/src/com/epicgames/ue4/GameActivity.java.template +++ b/Engine/Build/Android/Java/src/com/epicgames/ue4/GameActivity.java.template @@ -253,7 +253,7 @@ public class GameActivity extends $${gameActivitySuperClass}$$ implements Surfac static float[] current_gravity = new float[]{0, 0, 0}; static float[] current_acceleration = new float[]{0, 0, 0}; - public static Logger Log = new Logger("UE4"); + public static Logger Log = new Logger("UE4", "GameActivity"); // From cpufeatures.h AndroidCpuFamily enum private static final int ANDROID_CPU_FAMILY_UNKNOWN = 0; diff --git a/Engine/Build/Android/Java/src/com/epicgames/ue4/GameApplication.java.template b/Engine/Build/Android/Java/src/com/epicgames/ue4/GameApplication.java.template index 6cd309a23ccb..55e2555416da 100644 --- a/Engine/Build/Android/Java/src/com/epicgames/ue4/GameApplication.java.template +++ b/Engine/Build/Android/Java/src/com/epicgames/ue4/GameApplication.java.template @@ -10,7 +10,7 @@ import com.epicgames.ue4.network.NetworkChangedManager; //$${gameApplicationImportAdditions}$$ public class GameApplication extends Application implements LifecycleObserver { - private static final Logger Log = new Logger("UE4-" + GameApplication.class.getSimpleName()); + private static final Logger Log = new Logger("UE4", "GameApp"); private static boolean isForeground = false; diff --git a/Engine/Build/Android/Java/src/com/epicgames/ue4/Logger.java b/Engine/Build/Android/Java/src/com/epicgames/ue4/Logger.java index cbbbaa3270e5..633ed7d8f407 100644 --- a/Engine/Build/Android/Java/src/com/epicgames/ue4/Logger.java +++ b/Engine/Build/Android/Java/src/com/epicgames/ue4/Logger.java @@ -1,5 +1,6 @@ package com.epicgames.ue4; +import android.text.TextUtils; import android.util.Log; public class Logger @@ -10,13 +11,18 @@ public class Logger } private static ILoggerCallback mCallback = null; - private String mTag; + private final String mTag; + private final String mSecondaryTag; + private String mFormattedTag; + private String mFormattedMessageTag; private static boolean bAllowLogging = true; @SuppressWarnings({"FieldCanBeLocal", "unused"}) private static boolean bAllowExceptionLogging = true; - - @SuppressWarnings("unused") + private static boolean bPrependSecondaryTag = false; + private static boolean bPrependChanged = false; + + @SuppressWarnings({"unused", "WeakerAccess"}) public static void RegisterCallback(ILoggerCallback callback) { mCallback = callback; @@ -28,20 +34,36 @@ public class Logger bAllowLogging = bAllowExceptionLogging = false; } + @SuppressWarnings({"unused", "WeakerAccess"}) + public static void prependSecondaryTag(boolean prependSecondaryTag) { + bPrependSecondaryTag = prependSecondaryTag; + bPrependChanged = true; + } + public Logger(String Tag) + { + this(Tag, ""); + } + + public Logger(String Tag, String secondaryTag) { mTag = Tag; + if(secondaryTag == null) { + mSecondaryTag = ""; + } else { + mSecondaryTag = secondaryTag; + } } public void verbose(String Message) { if (bAllowLogging) { - Log.v(mTag, Message); + Log.v(getFormattedTag(), getFormattedMessage(Message)); } if (mCallback != null) { - mCallback.LoggerCallback("V/", mTag, Message); + mCallback.LoggerCallback("V/", getFormattedTag(), getFormattedMessage(Message)); } } @@ -49,11 +71,11 @@ public class Logger { if (bAllowLogging) { - Log.d(mTag, Message); + Log.d(getFormattedTag(), getFormattedMessage(Message)); } if (mCallback != null) { - mCallback.LoggerCallback("D/", mTag, Message); + mCallback.LoggerCallback("D/", getFormattedTag(), getFormattedMessage(Message)); } } @@ -61,11 +83,11 @@ public class Logger { if (bAllowLogging) { - Log.w(mTag, Message); + Log.w(getFormattedTag(), getFormattedMessage(Message)); } if (mCallback != null) { - mCallback.LoggerCallback("W/", mTag, Message); + mCallback.LoggerCallback("W/", getFormattedTag(), getFormattedMessage(Message)); } } @@ -73,11 +95,11 @@ public class Logger { if (bAllowLogging) { - Log.e(mTag, Message); + Log.e(getFormattedTag(), getFormattedMessage(Message)); } if (mCallback != null) { - mCallback.LoggerCallback("E/", mTag, Message); + mCallback.LoggerCallback("E/", getFormattedTag(), getFormattedMessage(Message)); } } @@ -85,11 +107,42 @@ public class Logger { if (bAllowLogging) { - Log.e(mTag, Message, Throwable); + Log.e(getFormattedTag(), getFormattedMessage(Message), Throwable); } if (mCallback != null) { - mCallback.LoggerCallback("E/", mTag, Message); + mCallback.LoggerCallback("E/", getFormattedTag(), getFormattedMessage(Message)); } } -} \ No newline at end of file + + private String getFormattedTag() + { + if(mFormattedTag == null || bPrependChanged) + { + bPrependChanged = false; + if (!TextUtils.isEmpty(mSecondaryTag) && bPrependSecondaryTag) + { + mFormattedTag = mTag + "-" + mSecondaryTag; + } + else + { + mFormattedTag = mTag; + } + } + return mFormattedTag; + } + + private String getFormattedMessage(String message) + { + if (!TextUtils.isEmpty(mSecondaryTag) && !bPrependSecondaryTag) + { + if(mFormattedMessageTag == null || bPrependChanged) + { + bPrependChanged = false; + mFormattedMessageTag = "[" + mSecondaryTag + "] "; + } + return mFormattedMessageTag + message; + } + return message; + } +} diff --git a/Engine/Build/Android/Java/src/com/epicgames/ue4/MulticastBroadcastReceiver.java b/Engine/Build/Android/Java/src/com/epicgames/ue4/MulticastBroadcastReceiver.java index 6b71d659c0b0..37f519edd396 100644 --- a/Engine/Build/Android/Java/src/com/epicgames/ue4/MulticastBroadcastReceiver.java +++ b/Engine/Build/Android/Java/src/com/epicgames/ue4/MulticastBroadcastReceiver.java @@ -8,7 +8,7 @@ import java.util.List; public class MulticastBroadcastReceiver extends BroadcastReceiver { - public static Logger Log = new Logger("UE4-BroadcastReceiver"); + public static Logger Log = new Logger("UE4", "BroadcastReceiver"); @Override public void onReceive(Context context, Intent intent) diff --git a/Engine/Build/Android/Java/src/com/epicgames/ue4/SplashActivity.java b/Engine/Build/Android/Java/src/com/epicgames/ue4/SplashActivity.java index c7487860598d..23d43d826889 100644 --- a/Engine/Build/Android/Java/src/com/epicgames/ue4/SplashActivity.java +++ b/Engine/Build/Android/Java/src/com/epicgames/ue4/SplashActivity.java @@ -37,7 +37,7 @@ public class SplashActivity extends Activity private Intent GameActivityIntent; private boolean WaitForPermission = false; - public static Logger Log = new Logger("UE4-SplashActivity"); + public static Logger Log = new Logger("UE4", "SplashActivity"); @SuppressLint("ObsoleteSdkInt") @Override diff --git a/Engine/Build/Android/Java/src/com/epicgames/ue4/network/NetworkChangedManager.java b/Engine/Build/Android/Java/src/com/epicgames/ue4/network/NetworkChangedManager.java index 2d912468fe73..ef65b5e37be5 100644 --- a/Engine/Build/Android/Java/src/com/epicgames/ue4/network/NetworkChangedManager.java +++ b/Engine/Build/Android/Java/src/com/epicgames/ue4/network/NetworkChangedManager.java @@ -14,7 +14,7 @@ import java.util.Set; public final class NetworkChangedManager { - private static final Logger Log = new Logger("UE4-NetworkChangedManager"); + private static final Logger Log = new Logger("UE4", "NetworkChangedManager"); private static final String SYSTEM = "NetworkManager"; private static final String COMPONENT = "ConnectivityManager"; private static final String ACTION_ERROR = "InstanceNotAvailable"; diff --git a/Engine/Plugins/Online/OnlineSubsystemFacebook/Source/ThirdParty/Android/Java/FacebookLogin.java b/Engine/Plugins/Online/OnlineSubsystemFacebook/Source/ThirdParty/Android/Java/FacebookLogin.java index 6fbf4cfe394a..be3e080430bc 100644 --- a/Engine/Plugins/Online/OnlineSubsystemFacebook/Source/ThirdParty/Android/Java/FacebookLogin.java +++ b/Engine/Plugins/Online/OnlineSubsystemFacebook/Source/ThirdParty/Android/Java/FacebookLogin.java @@ -77,7 +77,7 @@ public class FacebookLogin { this.activity = activity; - FBLog = new Logger("UE4-FB"); + FBLog = new Logger("UE4", "FB"); ActivityLog = InLog; } diff --git a/Engine/Plugins/Online/OnlineSubsystemGoogle/Source/ThirdParty/Android/Java/GoogleLogin.java b/Engine/Plugins/Online/OnlineSubsystemGoogle/Source/ThirdParty/Android/Java/GoogleLogin.java index 0eabb04687a7..2e948c829262 100644 --- a/Engine/Plugins/Online/OnlineSubsystemGoogle/Source/ThirdParty/Android/Java/GoogleLogin.java +++ b/Engine/Plugins/Online/OnlineSubsystemGoogle/Source/ThirdParty/Android/Java/GoogleLogin.java @@ -39,7 +39,7 @@ public class GoogleLogin public static final int GOOGLE_RESPONSE_DEVELOPER_ERROR = 3; /** Debug output tag */ - private static final String TAG = "UE4-GOOGLE"; + private static final String TAG = "GOOGLE"; // Output device for log messages. private Logger GoogleLog; @@ -72,7 +72,7 @@ public class GoogleLogin { this.activity = activity; - GoogleLog = new Logger(TAG); + GoogleLog = new Logger("UE4", TAG); ActivityLog = InLog; packageName = inPackageName;