I was recently working on an open-source in-game debug console for Unity to see debug messages in game (especially useful for mobile devices). Well, I have made some real progress and wanted to share the results with you. Hope you like it
This asset helps you see debug messages (logs, warnings, errors, exceptions) runtime in a build (also assertions in editor) and execute commands using its built-in console. It also supports logging logcat messages to the console on Android platform.
User interface is created with uGUI and costs 1 SetPass call (and 6 to 10 batches). It is possible to resize or hide the console window during the game. Once the console is hidden, a small popup will take its place (which can be dragged around). Console window will reappear after clicking the popup.
Console window is optimized using a customized recycled list view that calls Instantiate function sparingly.
FAQ
“Receive Logcat Logs In Android” isn’t working, it says “java.lang.ClassNotFoundException: com.yasirkula.unity.DebugConsoleLogcatLogger” in Logcat
If you are sure that your plugin is up-to-date, then enable Custom Proguard File option from Player Settings and add the following line to that file: -keep class com.yasirkula.unity.* { *; }
Added commands: assign commands to your script functions and call them in-game using the console. Both static and instance methods are supported. Parameter types should match one of the following: int, float, bool, string, Vector2, Vector3 and/or Vector4
Plug in is still working great! To anyone having trouble, don’t use the prefab in the prefab folder, use the prefab in the main folder. I had a problem only in build, and this allowed me to find it. Thanks a lot!
This plugin is awesome! I’ve just implemented it in an ARCore mobile app (android) using Unity version 2019.1.1f1
Could’nt get it to log Debug.LogError messages directly when running the app on an actual device, but I get the logcat messages. Therefore I added some small code to the DebugLogManager to evaluate the correct logging level and make sure each log ends up in the correct log level tab.
I have been working with your plugin for some time now and I encountered an issue: I create a TCP server and a TCP client and connect in asynchronous mode and then send a message from client to server and your console does not show the command Debug.Log("Received new message : " + message); but, when I run in editor, the debug.log shows.
On the client side, it stops showing logs after I call
On the server side, it stops showing after I call server.BeginAcceptTcpClient(OnClientConnect, new object());(the next debug.log is in the OnClientConnect function)
Would you know why the message is not showing?
Otherwise, your plugin is great and really well done so thank you for it