如何通过Unity将Android设备预热到40度?

Tal*_*gel 9 c# android unity-game-engine unity5

我希望创建一个可以充当"暖手"的Android应用程序.我正在使用GPS呼叫,振动,手电筒,我也使用多个线程在循环中运行代码.电池消耗很高但还不够.

当我使用这个应用程序时,需要大约10分钟,从25度到33度.我的目标是在尽可能短的时间内达到40度.

那么,我如何通过C#代码读取器件温度,以及如何达到40度的热量并保持在那里?

Pro*_*mer 6

您不需要手电筒或振动器来执行此操作,因为应用程序会让大多数人烦恼,因为这两个人即使在不需要时也会打开.

使用不应影响用户身体但能够产生热量的技术.

如何通过C#代码读取设备临时值

在读取传感器之前,首先需要检查设备是否有温度计传感器.至于使用C#从Android读取传感器,您必须使用Java代码编写,然后从C#调用该函数.

您可以使用已经制作的Unity-Android-Sensor-Plugin插件.

private AndroidJavaObject plugin;

void Start ()
{
#if UNITY_ANDROID
    plugin = new AndroidJavaClass("jp.kshoji.unity.sensor.UnitySensorPlugin").CallStatic<AndroidJavaObject>("getInstance");

    //Init the ambienttemperature sensor
    if (plugin != null) 
    {
        plugin.Call("startSensorListening", "ambienttemperature");
    }
#endif
}
Run Code Online (Sandbox Code Playgroud)

要在Update功能中稍后读取环境温度传感器:

float[] sensorValue = plugin.Call<float[]>("getSensorValues", "ambienttemperature");
Run Code Online (Sandbox Code Playgroud)

电池消耗很高但还不够.

这些是用于加热移动设备的技术.

亮度:

1.将亮度更改为最高值.现在,禁用自动调暗,以便屏幕指示灯始终闪亮.

网络:

2.创建多个(4到5个)TCP服务器,每个服务器在自己的线程中运行,并且还在设备上使用不同的端口.

现在,创建相同数量的TCP客户端并使用端口和IPAddress.LoopbackIP 连接到服务器.

在while循环中,随机生成大约13k的浮点数,将其转换为字节数组,然后将其连续发送到每个客户端和服务器.当你收到它时,将该字节数组转换回float,然后对结果一无所知.重复并冲洗.

音频:

3.56个音频文件载入音频文件,将其设置为循环然后将音量设置为0.播放所有音频.

视频:

4个 .Load 56动画,它设置为循环然后播放.它可能在屏幕上不可见,但只要它正在播放,它就可以了.

视频:

5.使用Unity的新VidepPlayer加载3个视频,禁用音频,将视频连接到RawImage.将其他RawImage的alpha设置为不可见.播放视频,让解码完成工作.0

传感器:

6个 .Enable加速度计和陀螺仪传感器轮询它在更新函数每帧.

7,启用GPS并在更新功能中每帧读取轮询.

8,启用蓝牙,每秒钟连续搜索其他设备.

9,启用前后摄像头,从中拉出纹理,但不做任何操作.


如何达到40度的热量并留在那里?

把它放在一起:

将上述所有内容放在函数或其自己的类中.

1.用一个int名为level 的变量写一个简单的类.应使用此级别变量来确定应运行上述哪些操作.

2.当应用程序启动时,更改级别,9然后启用/启动上述每种技术.如果温度达到38左右,则将水平降低到约5.当水平降低时,你停止运行任何东西,所以在这种情况下,你应该停止轮询加速度计,陀螺仪,GPS,蓝牙和摄像头,然后禁用它们.

3,如果温度高于40℃,降低水平.如果低于40,则增加水平.这就是你如何将温度保持在一定~40程度.

4.甚至更好,您可能必须制作自己的PID控制器,使用上述技术.要做到这一点需要时间,但这可能是解决这个问题的最好方法.

提示:

对于您执行的每项操作,请检查帧速率.如果帧速率低于6,则停止.如果不这样做,Android可能会因为没有响应而终止该应用.


注意:

编写一个简单的函数来检测注释部分中提到的某些设备.请确保该应用程序不会对这些应用程式或"跑暖手器 "的应用程序可能会成为一个" 暖手&&切断器 "应用程序.