Skip to content

Commit c1b1b63

Browse files
author
d00605132
committed
ConsumeInfo 添加frameindex
1 parent e0f9a51 commit c1b1b63

11 files changed

Lines changed: 60 additions & 195 deletions

File tree

Assets/Demo/UnityAndroidInteract.cs

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
1-
using System;
2-
using System.Collections;
3-
using System.Collections.Generic;
4-
using GOT.Scripts;
5-
using MonitorLib.GOT;
1+
using MonitorLib.GOT;
2+
using System;
63
using UnityEngine;
74
using UnityEngine.UI;
85

@@ -216,9 +213,9 @@ private void OnGUI()
216213
UnityAndroidProxy unityAndroidProxy = new UnityAndroidProxy();
217214
unityAndroidProxy.Init();
218215
Debug.Log($"初始化Android环境");
219-
DevicePowerConsumeInfo devicePowerConsumeArgs = unityAndroidProxy.GetPowerConsumeInfo();
220-
Debug.Log($"获取安卓功耗参数:{devicePowerConsumeArgs.ToString()}");
221-
log.text = devicePowerConsumeArgs.ToString();
216+
DevicePowerConsumeInfo devicePowerConsumeInfo = unityAndroidProxy.GetPowerConsumeInfo();
217+
Debug.Log($"获取安卓功耗参数:{devicePowerConsumeInfo.ToString()}");
218+
log.text = devicePowerConsumeInfo.ToString();
222219
}
223220

224221

Assets/GOT/Scripts/GOTProfiler.cs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
using MonitorLib.GOT;
22
using System;
33
using System.Collections;
4-
using System.Collections.Generic;
54
using System.IO;
6-
using GOT.Scripts;
75
using UnityEngine;
86
using UnityEngine.Networking;
97
using UnityEngine.Profiling;
@@ -414,8 +412,8 @@ void GetPowerConsume()
414412
Debug.Log("GetPowerConsume");
415413
UnityAndroidProxy unityAndroidProxy = new UnityAndroidProxy();
416414
unityAndroidProxy.Init();
417-
DevicePowerConsumeInfo devicePowerConsumeInfo = unityAndroidProxy.GetPowerConsumeInfo();
418-
Debug.Log($"获取安卓功耗参数:{devicePowerConsumeInfo.ToString()}");
415+
DevicePowerConsumeInfo devicePowerConsumeInfo = unityAndroidProxy.GetPowerConsumeInfo(m_frameIndex);
416+
//Debug.Log($"获取安卓功耗参数:{devicePowerConsumeInfo.ToString()}");
419417
devicePowerConsumeInfos.devicePowerConsumeInfos.Add(devicePowerConsumeInfo);
420418
bool writeRes = false;
421419
if (!UseBinary)

Assets/GOT/Scripts/UnityAndroidBridge.cs

Lines changed: 46 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -2,60 +2,58 @@
22
using MonitorLib.GOT;
33
using UnityEngine;
44

5-
namespace GOT.Scripts
5+
public class UnityAndroidProxy
66
{
7-
public class UnityAndroidProxy
7+
private AndroidJavaClass jc;
8+
private AndroidJavaObject jo;
9+
private bool isInit = false;
10+
11+
public void Init()
812
{
9-
private AndroidJavaClass jc;
10-
private AndroidJavaObject jo;
11-
private bool isInit = false;
12-
13-
public void Init()
14-
{
1513
#if UNITY_ANDROID
16-
if (isInit)
17-
{
18-
return;
19-
}
20-
try
21-
{
22-
jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
23-
jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
24-
isInit = true;
25-
}
26-
catch (Exception e)
27-
{
28-
Debug.LogError(e);
29-
}
30-
#endif
14+
if (isInit)
15+
{
16+
return;
3117
}
32-
33-
public DevicePowerConsumeInfo GetPowerConsumeInfo()
18+
try
3419
{
35-
#if UNITY_ANDROID
36-
if (null == jo || null == jc)
37-
{
38-
Init();
39-
}
40-
string result = jo.Call<string>("GetCurPowerConsumeArgs");
41-
if (string.IsNullOrEmpty(result))
42-
{
43-
return default;
44-
}
45-
Debug.Log($"从安卓获取结果:{result}");
46-
string[] args = result.Split('|');
47-
DevicePowerConsumeInfo devicePowerConsumeInfo = new DevicePowerConsumeInfo();
48-
devicePowerConsumeInfo.Capacity = Convert.ToInt32(args[0]);
49-
devicePowerConsumeInfo.Temperature = Convert.ToInt32(args[1]);
50-
devicePowerConsumeInfo.BatteryV = Convert.ToSingle(args[2]);
51-
devicePowerConsumeInfo.BatteryCapacity = Convert.ToInt32(args[3]);
52-
devicePowerConsumeInfo.BatteryChargeCounter = Convert.ToInt32(args[4]);
53-
devicePowerConsumeInfo.BatteryCurrentNow = Convert.ToInt32(args[5]);
54-
devicePowerConsumeInfo.BatteryPower = Convert.ToSingle(args[6]);
55-
devicePowerConsumeInfo.UseLeftHours = Convert.ToSingle(args[7]);
56-
devicePowerConsumeInfo.CpuTemperate = Convert.ToInt32(args[8]);
57-
return devicePowerConsumeInfo;
20+
jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
21+
jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
22+
isInit = true;
23+
}
24+
catch (Exception e)
25+
{
26+
Debug.LogError(e);
5827
}
5928
#endif
6029
}
30+
31+
public DevicePowerConsumeInfo GetPowerConsumeInfo(int frameIndex = 0)
32+
{
33+
#if UNITY_ANDROID
34+
if (null == jo || null == jc)
35+
{
36+
Init();
37+
}
38+
string result = jo.Call<string>("GetCurPowerConsumeArgs");
39+
if (string.IsNullOrEmpty(result))
40+
{
41+
return default;
42+
}
43+
Debug.Log($"从安卓获取结果:{result}");
44+
string[] args = result.Split('|');
45+
DevicePowerConsumeInfo devicePowerConsumeInfo = new DevicePowerConsumeInfo();
46+
devicePowerConsumeInfo.FrameIndex = frameIndex;
47+
devicePowerConsumeInfo.Capacity = Convert.ToInt32(args[0]);
48+
devicePowerConsumeInfo.Temperature = Convert.ToInt32(args[1]);
49+
devicePowerConsumeInfo.BatteryV = Convert.ToSingle(args[2]);
50+
devicePowerConsumeInfo.BatteryCapacity = Convert.ToInt32(args[3]);
51+
devicePowerConsumeInfo.BatteryChargeCounter = Convert.ToInt32(args[4]);
52+
devicePowerConsumeInfo.BatteryCurrentNow = Convert.ToInt32(args[5]);
53+
devicePowerConsumeInfo.BatteryPower = Convert.ToSingle(args[6]);
54+
devicePowerConsumeInfo.UseLeftHours = Convert.ToSingle(args[7]);
55+
devicePowerConsumeInfo.CpuTemperate = Convert.ToInt32(args[8]);
56+
return devicePowerConsumeInfo;
57+
}
58+
#endif
6159
}
-2 KB
Binary file not shown.
-654 Bytes
Binary file not shown.

Assets/Lib/MonitorLib.dll

-2 KB
Binary file not shown.

Assets/Lib/MonitorLib.dll.mdb

-654 Bytes
Binary file not shown.

MonitorLib/MonitorLib-Editor/MonitorLib-Editor.csproj

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -268,9 +268,6 @@
268268
<Compile Include="..\MonitorLib\GOT\Config.cs">
269269
<Link>GOT\Config.cs</Link>
270270
</Compile>
271-
<Compile Include="..\MonitorLib\GOT\CSVHelper.cs">
272-
<Link>GOT\CSVHelper.cs</Link>
273-
</Compile>
274271
<Compile Include="..\MonitorLib\GOT\DeviceInfo.cs">
275272
<Link>GOT\DeviceInfo.cs</Link>
276273
</Compile>

MonitorLib/MonitorLib/GOT/CSVHelper.cs

Lines changed: 0 additions & 131 deletions
This file was deleted.

MonitorLib/MonitorLib/GOT/DevicePowerConsumeInfo.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@ namespace MonitorLib.GOT
88
[Serializable]
99
public struct DevicePowerConsumeInfo : IBinarySerializable
1010
{
11+
/// <summary>
12+
/// 帧率
13+
/// </summary>
14+
public int FrameIndex;
1115
/// <summary>
1216
/// 电池总容量
1317
/// </summary>
@@ -47,6 +51,7 @@ public struct DevicePowerConsumeInfo : IBinarySerializable
4751

4852
public void Serialize(BinaryWriter writer)
4953
{
54+
writer.Write(FrameIndex);
5055
writer.Write(Capacity);
5156
writer.Write(Temperature);
5257
writer.Write(BatteryV);
@@ -61,6 +66,7 @@ public void Serialize(BinaryWriter writer)
6166

6267
public void DeSerialize(BinaryReader reader)
6368
{
69+
FrameIndex = reader.ReadInt32();
6470
Capacity = reader.ReadInt32();
6571
Temperature = reader.ReadInt32();
6672
BatteryV = reader.ReadSingle();
@@ -75,6 +81,7 @@ public void DeSerialize(BinaryReader reader)
7581
public override string ToString()
7682
{
7783
return
84+
$"当前帧:{FrameIndex}\n" +
7885
$"电池总容量:{Capacity}\n" +
7986
$"电池温度:{Temperature}\n" +
8087
$"电池电压:{BatteryV}\n" +

0 commit comments

Comments
 (0)