从Android服务调用UnitySendMessage

时间:2017-03-05 13:04:01

标签: android unity3d android-service

我正在编写使用Android原生插件的Unity Android应用程序。此插件实现跟踪用户位置的后台服务,并在用户输入某些地图点时发送推送通知。

我将此服务构建为独立的.jar包并放入Assets/Plugins/Android文件夹。但是当我构建它时,我无法访问UnityPlayer来使用UnitySendMessage

那么如何从我的服务中运行UnitySendMessage方法呢?谢谢你的回复。

1 个答案:

答案 0 :(得分:3)

您需要在Android项目中导入依赖项,该项目是包含UnityPlayer类的Unity库。

它位于文件夹:

Windows:Unity\Editor\Data\PlaybackEngines\androidplayer\release\bin

OS X:Applications/Unity/PlaybackEngines/AndroidPlayer/Variations/mono/Release/Classes/

该文件名为classes.jar(我强烈建议更改可识别的名称)。

之后,您需要告诉Gradle您不希望在jar文件中添加此jar文件(unity会自动提供它)。因此,您在build.gradle依赖项中添加了该广告:provided files('./libs/UnityPlayer.jar')

最后,您只需要在java文件中导入库:import com.unity3d.player.UnityPlayer;