am b2db356d: am fc1ffe89: Merge "Report runtime information to DDMS"

* commit 'b2db356dc8514e8b7546a04907217f02cd8b19e1':
  Report runtime information to DDMS
This commit is contained in:
Sebastien Hertz
2014-05-22 14:57:28 +00:00
committed by Android Git Automerger

View File

@@ -22,6 +22,7 @@ import org.apache.harmony.dalvik.ddmc.DdmServer;
import android.util.Log;
import android.os.Debug;
import android.os.UserHandle;
import dalvik.system.VMRuntime;
import java.nio.ByteBuffer;
@@ -126,8 +127,21 @@ public class DdmHandleHello extends ChunkHandler {
// appName = "unknown";
String appName = DdmHandleAppName.getAppName();
ByteBuffer out = ByteBuffer.allocate(20
+ vmIdent.length()*2 + appName.length()*2);
VMRuntime vmRuntime = VMRuntime.getRuntime();
String instructionSetDescription =
vmRuntime.is64Bit() ? "64-bit" : "32-bit";
String vmInstructionSet = vmRuntime.vmInstructionSet();
if (vmInstructionSet != null && vmInstructionSet.length() > 0) {
instructionSetDescription += " (" + vmInstructionSet + ")";
}
String vmFlags = "CheckJNI="
+ (vmRuntime.isCheckJniEnabled() ? "true" : "false");
ByteBuffer out = ByteBuffer.allocate(28
+ vmIdent.length() * 2
+ appName.length() * 2
+ instructionSetDescription.length() * 2
+ vmFlags.length() * 2);
out.order(ChunkHandler.CHUNK_ORDER);
out.putInt(DdmServer.CLIENT_PROTOCOL_VERSION);
out.putInt(android.os.Process.myPid());
@@ -136,6 +150,10 @@ public class DdmHandleHello extends ChunkHandler {
putString(out, vmIdent);
putString(out, appName);
out.putInt(UserHandle.myUserId());
out.putInt(instructionSetDescription.length());
putString(out, instructionSetDescription);
out.putInt(vmFlags.length());
putString(out, vmFlags);
Chunk reply = new Chunk(CHUNK_HELO, out);