Unity与Android交互之AndroidJavaProxy的使用

前言:因为工作的需要,要在Unity中调用Jar包,这篇文章会持续更新,欢迎吐槽,接受留言,一起进步!

Unity 调用Jar中的接口

首先,在Java代码中定义接口,示例代码如下:

public  interface SDKCallbackListener
{
    void OnSDKInited(String msg);
    void OnAuthSuccess(String token);
    void OnCreatedLive(String url);
    void OnDeletedLive(String id);
}

其次,在Unity 工程C#代码中,实现该接口

注意:Unity C#代码实现Android Java 代码必须要完全一致,但是允许在UnityC#代码中实现多次

class SDKCallbackListener : AndroidJavaProxy
{
        // 这句话很重要!!!C#找到Jar中接口的引用
        public SDKCallbackListener() : base("com.unitynative.weibounitysdk.SDKCallbackListener") { }

        public void OnSDKInited(string msg)
        {
            ATrace.Log( "OnSDKInited:" + msg);
        }
        public void OnAuthSuccess(string token)
        {
            ATrace.Log("OnAuthSuccess:" + token);
        }
        public void OnCreatedLive(string url)
        {
            ATrace.Log("OnCreatedLive:" + url);
        }
        public void OnDeletedLive(string id)
        {
            ATrace.Log("OnDeletedLive:" + id);
        }
}

然后,在C#中new一个SDKCallbackListener,并把new好的值传到Java代码中

Unity 中C#代码,为了完成交互工作

mCallbackListener = new SDKCallbackListener();
// 调用Jar中的方法,并把new的值传进去
 mSDKJavaObject.Call("initSDK", mCallbackListener);

最后,在Java代码中调用接口中的方法就好了

Java 代码,开始使用解开了

private  SDKCallbackListener mCallbackListener;
public  void initSDK(SDKCallbackListener listener)
{
        mCallbackListener = listener;
        mCallbackListener.OnSDKInited("Weibo initSDK ok");
}
  

参考文档:

  • Unity Android Plugin开发指南
    评价:本文包含了分成详细的Unity 与 Android之间的交互
    好了,本篇会一直持续更新下去,虚心学习,没有解决不了的Bug!!!
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 179,516评论 25 708
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,778评论 19 139
  • 少一分欢喜,便多一份自在 我喜欢你,是寂静的 有些东西,经不起消耗 有些感情,败给了试探 最后的最后,抱紧的只有自己
    李宛宸679阅读 288评论 23 23
  • 题目1: HTML5是什么?有哪些新特性?有哪些新增标签?如何让低版本的 IE 支持 HTML5新标签 HTML5...
    萧雪圣阅读 397评论 0 0
  • 早上醒来时,外面己经大亮了。 天气预报说,今天是晴天,想着心情都变得舒畅了。 但没见着清晨的日出,只是被浓雾蒙蔽了...
    jihua_usc阅读 616评论 0 0

友情链接更多精彩内容