Unity 与Android /IOS 交互

unity端

Unity调用Android或者IOS

Unity调用Android 或者IOS 我这里是做回调使用的,当Android或者Ios调用Unity,Unity成功或者失败会回调消息返回Android和Ios

        public static void CallBack(
            bool success = false,
            long requestId = -1,
            [NotNull] string msg = "",
            [NotNull] string data = "")
        {
            Log_M("UnityTag: 回调接口進來啦,ID:"+requestId);
        #if UNITY_ANDROID
            var androidReceiver = new AndroidJavaClass("com.xiaoma.gp.business.unity.AndroidReceiver");
            androidReceiver.CallStatic("unityCallback", success, requestId, msg, data);
        #endif
        #if UNITY_IOS
              Log_M("UNITY_IOS");
            unityCallback(success, requestId, msg, data);
        #endif
        }
        #if UNITY_IOS
            //引入声明
            [DllImport("__Internal")]
            static extern void unityCallback (bool success,long requestId,string str1, string str2);
        #endif
    }

Android调用Unity

receiveObj 脚本挂载的对象名字

UnityMethod 调用的方法名字

This is args 参数名字(只能带一个参数,所以可以用Json)

Json结构:
[Serializable]
public class Communication
{
    public long id;
    public string data;

    public Communication(long id, string data)
    {
        this.id = id;
        this.data = data;
    }
}

获取Json实例:

JsonUtility.FromJson<Communication>(dataJson);

调用Unity

Public void AndroidCallUnity(){

        UnityPlayer.UnitySendMessage("receiveObj","UnityMethod","This is args");

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

俊24

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值