

name: TestDemo
 Package name: com.unity3d.player
 language: Java
 Api: 17



jar包的位置:
 你的Unity安装位置\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Release\Classes

 AS的app-libs打开快捷方式

 复制粘贴过来就行了

(1.)我们右键点击app,然后选择Open Moudle Settings打开模式设置

 看到classes.jar包被依赖上了

 (2.)右键libs下的classes,然后选择add As Libratr…

 点击Ok!

先找到它


 (1.)将MainActivity.jar文件的继承从 AppCompatActivity 改成 UnityPlayerActivity
 (2.)删掉文件中灰色的引用:

 3.)删掉 setContentView(R.layout.activity_main);

 4.)打开app文件夹下的build.gradle

 1)、最上方的 apply plugin: ‘com.android.application’ 改为 apply plugin: ‘com.android.library’
 2)、注释掉 applicationId “你的包名”
 3)、注释掉测试用的 testInstrumentationRunner “android.support.test.runner.AndroidJUnitRunner”

 注释掉下面的这四项

文件位置:app-src-main-res-values-styles.xml

文件位置:app-src-main-res-layout-activity_main.xml

 1.)如果界面是这个样子的,就点击下面这个Text

 2.)删掉红框所选区域

 3.)删掉灰色代码

文件位置:app/src/main/AndroidManianifest.xml

 a、将 android:theme="@style/AppTheme"> 改为 android:theme="@android:style/Theme.NoTitleBar">
b、将 <activity android:name=".MainActivity"> 改为 <activity android:name="你的包名.MainActivity">

1.)添加 UnityCallShake 方法,
public void UnityCallShake(String msg){
        Toast.makeText(getApplicationContext(),msg,Toast.LENGTH_LONG).show();
        Vibrator vibrator=(Vibrator)getApplication().getSystemService(Service.VIBRATOR_SERVICE);
        vibrator.vibrate(2000);
   	 }
   	 
   	 2.)需要import这几个包
import android.app.Service; import android.os.Vibrator; import android.widget.Toast;
点击这个小灯泡

 添加震动权限


 等待加载完成

jar包位置:app-build-outputs-arr-app-debug.arr

 使用你的压缩软件解压,没有解压选项选择打开方式,如果你的解压软件不支持,那就下载一个别的

 解压完成

 将文件里的libs、res、AndroidManifest.xml文件 复制到Unity文件夹Assets-Plugins-Android文件夹下。

 删掉libs文件夹的classes.jar包,替换为②解压文件根目录里的classes.jar包。

using UnityEngine;
 
public class ClickShake : MonoBehaviour {
 
    AndroidJavaObject JavaObject;
 
	void Start () {
        //以下两行是调用AScurrentActivity中方法的默认写法。不需修改。
        AndroidJavaClass androidJavaClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
        JavaObject = androidJavaClass.GetStatic<AndroidJavaObject>("currentActivity");
	}
 
    public void ClickShakeBtn()
    {
        JavaObject.Call("UnityCallShake", "来自Unity的调用");
    }
    
    a、包名与AS保持一致
b、Unity最小API与AS保持一致
c、用Internal打包
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删