Unity中sdk接入的学习笔记--Plugins

这篇博客记录了在Unity中接入SDK的步骤,包括从Eclipse创建工程,拷贝classes.jar,继承UnityPlayerActivity,创建调用方法,打包jar,放置到Plugins/Android目录,以及处理AndroidManifest和res文件夹。同时提到了宏定义的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

跟着新总学习了sdk的接入,心得一点点整理下哈。

1、在Eclipse新建一个工程,然后将unity的自带lib,data/playbackEngines/adnroidplayer/release/bin/classes.jar(5.0版本的文件路径)拷贝到工程的lib下。

2、MainActivity 要extend UnityPlayerActivity

3、新建一个方法如

public int test (int flag)
{
Log.i("test","flag = "+flag);
return 150831;
}

4、可以命令打包jar;

使用代码

jar cvf test.jar ./com

当然也可以直接用Eclipse的Export来导出。

(在bin路径下)在com下新建cmd文件,执行代码就可以了(只需要打包一个MainActivity)(如果存在多余文件就清掉);

然后将jar文件放在Unity中的Plugins/Android/bin目录下

5、然后将AndroidManifest与res文件夹放在Plugins/Android下

6、宏定义:

#if UNITY_ANDROID
#endif

7、在unity的脚本添加调用Android的方法
    AndroidJavaClass jc = null;
    AndroidJavaObject jo = null;
    void Awake() {
#if UNITY_ANDROID

        if (jc == null) {
            jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); 
            jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
        }
    
#endif      
        }
8、调用Android方法

(1)直接调用Call

if (jo != null) {
            jo.Call<int>("test",150);//test是方法名,150是传值
        }
(2)需调用ui线程的情况

 if (jo != null)
        {
            jo.Call("runOnUiThread", new AndroidJavaRunnable(
                () =>
                {
                    jo.Call<int>("test",150);
                }
                ));
        }
9、在Unity里把脚本挂在GameObject上。打包输出测试。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值