android - 来自原生 Android 服务的 Unity3d 脚本

标签 android unity3d android-service unityscript

我有一个在后台运行的 native Android 服务,需要与 Unity3D 脚本交互。我知道以下方法:

com.unity3d.player.UnityPlayer.UnitySendMessage(String gameObject, String arg1, String arg2)

但它需要一个游戏对象参数。由于该服务在后台运行,我无法 100% 确定附加到特定场景的游戏对象是否尚未被销毁。这是一个合理的假设吗(因为用户甚至可能不在应用中)?

如果是这样,有没有办法实例化一个永远不会被销毁的游戏对象?有没有其他方法可以从 native Java 代码调用统一脚本?

最佳答案

我不知道如何从 native 代码调用 unityscript。但是您可以通过使用 DontDestroyOnLoad 函数使 GameObject 保持 Activity 状态直到手动删除。示例:

void Awake() 
{
    DontDestroyOnLoad(transform.gameObject);
}

更多信息来自 here .

关于android - 来自原生 Android 服务的 Unity3d 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22161846/

相关文章:

unity3d - 建筑物的墙壁碰撞器

使用 DownloadManger 的 Android 下载队列

android - 通过服务接收更新 Activity

Android服务,需要一个持续运行的服务

android - 从 Android 上的应用内浏览器重定向到应用

c# - 变量在 Update() 中不断累加

android - WiFiDirect discoverServices 不断失败并出现错误 3 (NO_SERVICE_REQUESTS)

android - 从服务传递数据

android - float 操作按钮与最后一个卡片 View 中的复选框重叠

c# - 安装时将文件从 Resources/StreamingAssets 复制到 Application.persistentDataPath