unity 调用高德SDK

这篇具有很好参考价值的文章主要介绍了unity 调用高德SDK。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

unity 2022.2.20f1c1

一、准备工作:

方式一:Unity打包arr   导入AndroidStudio ,AndroidStudio打包

方式二:Unity通过MainActivity.java调用SDK  ,MainActivity.java  放入到Android Studio中编写代码

二、打包环境:下载jdk11和ndk-r23b

unity 对接高德,unity

三、交互部分

1、高德SDK下载:相关下载-Android 地图SDK|高德地图API (amap.com)

2、将高德sdk导入unity中,放置Plugins/Android下

unity 对接高德,unity

3、unity 如何和sdk交互 ?通过MainActivity.java

 MainActivity如何编写代码?通过Android Studio

第一步:AndroidStudio  新建工程,复制高德Sdk,黏贴到libs文件夹下,然后右键 Add as Library

unity 对接高德,unity

unity 对接高德,unity

第二步:导入unity的Classes.jar 和UnityPlayerActivity

unity的位置:不要安装在C盘,有时候会有权限问题

unity 对接高德,unity

Classes 的包有很多个,根据打包是选择是il2cpp还是mono

unity 对接高德,unity

 文章来源地址https://www.toymoban.com/news/detail-807944.html

unity 对接高德,unity

unity 对接高德,unity

 

unity 对接高德,unity

第三步:创建MainActivity.java并继承UnityPlayerActivity

unity 对接高德,unity

unity 对接高德,unity

然后在MainActivity 写方法,给unity调用:

(这里可以借鉴一下)(7条消息) Unity2019.3.3与Android Studio 3.6.1 交互通信_StarNight16的博客-CSDN博客)

package com.xiaoma.u2a;

import androidx.appcompat.app.AppCompatActivity;

import android.app.Activity;
import android.os.Bundle;
import android.widget.Toast;

import com.unity3d.player.UnityPlayer;

public class MainActivity extends UnityPlayerActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }
    //unity调用Android
    public void UnityCallAndroid () {

        Toast.makeText(this,"unity调用android成功", Toast.LENGTH_LONG).show();

        AndroidCallUnity();
    }

    //android调用unity
    public void AndroidCallUnity () {

        //第1个参数为Unity场景中用于接收android消息的对象名称
        //第2个参数为对象上的脚本的一个成员方法名称(脚本名称不限制)
        //第3个参数为unity方法的参数
        UnityPlayer.UnitySendMessage("receiveObj", "UnityMethod", "This is args.");
    }
}

创建一个SDKTest.cs文件,将脚本挂在receiveObj对象上

unity 对接高德,unity

 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class SDKTest : MonoBehaviour
{
    private AndroidJavaClass jc;
    private AndroidJavaObject jo;

    private Button btn;
    private Text text;

    private void Awake()
    {
        btn = transform.Find("Button").GetComponent<Button>();
        text = transform.Find("Text").GetComponent<Text>();

        //这两行是固定写法
        jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
        jo = jc.GetStatic<AndroidJavaObject>("currentActivity");

        btn.onClick.AddListener(OnBtnClickHandler);
    }

    private void OnBtnClickHandler ()
    {
        //调用Android中的方法UnityCallAndroid
        jo.Call("UnityCallAndroid");
    }

    /// <summary>
    ///  被Android中AndroidCallUnity调用
    /// </summary>
    /// <param name="str"></param>
    public void UnityMethod(string str)
    {
        Debug.Log("UnityMethod被调用,参数:" + str);
        text.text = str;
    }
}

第四步:拷贝MainActivity.java 复制到unity

第五步:修改:AndroidManifest.xml

unity 对接高德,unity

 unity 对接高德,unity

 可以放在Android Studio 中编写好,再拷贝出来(AndroidStudio有报错提示,比较方便)unity 对接高德,unity

 

 

 

 

 

到了这里,关于unity 调用高德SDK的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于高德地图 瓦片 实现 unity lbs

    参考文章:           1.国内主要地图瓦片坐标系定义及计算原理 | CntChen Blog         2.Unity LBS地图(瓦片地图,不接入任何SDK)_099_F11的博客-CSDN博客_unity离线地图 瓦片:高德等地图厂商把 世界地图分成了 好多张图片,每张图片就是一个瓦片 实现思路,根据 https 连接 请求

    2024年02月14日
    浏览(61)
  • 手把手教你搭建个人地图服务器(高德离线部署解决方案):获取地图瓦片数据、高德JS API、私有化部署和调用。。。

    众所周知,目前常见的地图(高德、百度、腾讯等)只提供在线API服务,对于一些内网应用而言,如果需要使用地图展示,则由于不能访问互联网而无法使用类似的第三方地图服务。 本文,通过将高德地图瓦片数据 和 在线JS API做了本地部署,并修改API,将其所有的网络请求

    2024年02月04日
    浏览(60)
  • 树莓派通过天线+gps获取经纬度并调用高德地图api在地图上标点

    完整项目为《 基于机器视觉的行人和路面缺陷检测及其边缘设备部署 》 完整功能视频演示地址:本科最后的课设:“车载系统的辅助系统——基于机器视觉的行人和路面缺陷检测”完结撒花*罒▽罒*_哔哩哔哩_bilibili 该博客介绍的功能为: 1:树莓派通过gps+天线读取经纬度坐

    2024年02月14日
    浏览(62)
  • Python调用海康SDK对接摄像机

    以前做过的项目都是通过 ffmpeg c++ 来捕获摄像机的 RSTP 视频流来处理视频帧,抽空看了一下海康的SDK说明,使用 python ctypes方式实现了对海康SDK DLL的调用, 可以对视频预览、抓图、抽帧、云台控制、布防等任务,SDK使用C++库,速度也很快。如果不要求对视频帧进行实时智能算

    2024年01月16日
    浏览(52)
  • Java 调用 WebService 、java调用Soap请求、Java对接soap接口

    工作第一次遇到对接soap接口,觉得有必要记录一下,毕竟踩了不少坑,网上帖子很多但大都不全,也不可能完全满足自己的需求,于是就有了下面的代码: 除了只是借鉴, 注意事项: 1.http://ip:port/xxx/xxx/soap?wsdl有些soap接口,对面是不需要穿?wsdl对接时要问出清 2. httpPost.set

    2024年02月05日
    浏览(50)
  • uni-app---- 点击按钮拨打电话功能&&点击按钮调用高德地图进行导航的功能【安卓app端】

    先上效果图: 1. 在封装方法的文件夹下新建一个js文件,然后把这些功能进行封装 2.在需要的页面中进行调用 注意点: 1. 拨打电话需要进行app权限配置,设置完成后可以在正式版看到效果。(这几个最好都勾选上) 2. 配置高德地图的app模块设置,这里的appkey需要到高德地图

    2024年02月05日
    浏览(71)
  • Javaweb对接Unity(一)

    一、在JavaIDEA配置Javaweb的Tomcat URL路径是java对接unity的关键 二、创建Servlet类,再配置好Web.Xml

    2024年02月14日
    浏览(35)
  • 【Unity】对接Steam

    步骤1 :搜索Steamworks或点击Steamworks链接 步骤2 :选择文献库 步骤3 :选择Steamworks SDK 步骤4 :点击此处下载最新SDK 将下载下来的SDK压缩包解压,并将Unity打包的游戏文件复制到解压路径steamworks_sdk_153asdktoolsContentBuildercontent下。 注意:    路径中不能有空格或中文。  

    2024年02月16日
    浏览(44)
  • vue对接unity

    业务需求需要前端对接unity,百度一通怎么操作引入。好家伙,是有很多。但是十篇我都没能成功导入unity。所以我决定我踩完坑,自己写一篇分享出来。 首先,方案有两个。一个是引入 vue-unity-webgl ,一个是直接用 iframe 引入。ok。知道方案,怎么做呢,因为vue-unity-webgl和ifr

    2024年02月06日
    浏览(28)
  • Unity对接后台和加载图片

    1、前言         在unity中与后台对接,用await在web端暂时还不支持,所以,协程成为比较好的通用方式,以下适用除post访问外的所有对接 2、对接后台 2.1、安装插件         首先我们需要用到Newtonsoft.dll,如果没有这个.dll的请跟着我一起装上,我们先创建一个脚本WebReq

    2024年02月03日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包