zoukankan      html  css  js  c++  java
  • [Unity移动端]SDK接入02:使用Android Studio接入

    参考链接:

    https://blog.csdn.net/qq_38513810/article/details/82664947?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2

    Android Studio下载:

    http://www.android-studio.org

    unity版本:2018.3.8

    Android Studio版本:3.6.2

    1. 新建安卓工程,注意最低SDK最好和unity一样

    2.新建一个library,注意此处的Package name要和unity的一致

    3.在这个library下新建一个Activity

    4.将unity安装目录EditorDataPlaybackEnginesAndroidPlayerVariationsmonoReleaseClasses下的classes.jar复制,选中libs目录粘贴,导入这个jar包

    5.修改library下的MainActivity.java和AndroidManifest.xml

     1 package com.example.mylibrary;
     2 
     3 import android.os.Bundle;
     4 import com.unity3d.player.*;
     5 
     6 public class MainActivity extends UnityPlayerActivity {
     7 
     8     private int count = 1;
     9 
    10     @Override
    11     protected void onCreate(Bundle savedInstanceState) {
    12         super.onCreate(savedInstanceState);
    13         //setContentView(R.layout.activity_main);
    14     }
    15 
    16     public void UnityCallAndroid() {
    17         UnityPlayer.UnitySendMessage("Canvas", "AndroidCallUnity", "hello" + count);
    18         count++;
    19     }
    20 }
     1 <?xml version="1.0" encoding="utf-8"?>
     2 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     3     package="com.example.mylibrary">
     4 
     5     <application>
     6         <activity android:name=".MainActivity">
     7             <intent-filter>
     8                 <action android:name="android.intent.action.MAIN" />
     9 
    10                 <category android:name="android.intent.category.LAUNCHER" />
    11             </intent-filter>
    12         </activity>
    13     </application>
    14 
    15 </manifest>

    6.选中library,Build一下,然后将生成的这3个东西放到unity中

    7.添加这个脚本到Canvas上,然后打包,注意包名要一致,还有Build System的设置

     1 using System.Collections;
     2 using System.Collections.Generic;
     3 using UnityEngine;
     4 using UnityEngine.UI;
     5 
     6 public class TestSDK : MonoBehaviour
     7 {
     8     AndroidJavaClass jc;
     9     AndroidJavaObject jo;
    10     public Text text;
    11 
    12     // Start is called before the first frame update
    13     void Start()
    14     {
    15         jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
    16         jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
    17     }
    18 
    19     public void OnBtnClick()
    20     {
    21         jo.Call("UnityCallAndroid");
    22     }
    23 
    24     public void AndroidCallUnity(string str)
    25     {
    26         text.text = str;
    27     }
    28 }

    问题:

    1.

    解決:

    https://blog.csdn.net/burmem/article/details/80447642?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2

    2.Gradle下载速度慢

    解决:

    https://www.jianshu.com/p/338860fc4921

  • 相关阅读:
    Struts系列教材 (十九)- 其他
    Struts系列教材 (十八)- 其他
    Struts系列教材 (十七)- 其他
    Struts系列教材 (十六)- 标签
    Struts系列教材 (十五)- 标签
    Struts系列教材 (十四)- 标签
    Struts系列教材 (十三)- 标签
    Struts系列教材 (十二)- 标签
    Struts系列教材 (十一)- 标签
    ios中二维码的使用之二: 二维码的扫描
  • 原文地址:https://www.cnblogs.com/lyh916/p/12616792.html
Copyright © 2011-2022 走看看