unity 关于打包androidjar并调用android jar包开发打电话功能的一些容易出错的点

首先,谢谢网络中分享方法的各位大牛:
下面 我会详细的把我的制作流程写下,有不明白的可以留言,看到后我会及时回复给大家;

好了 ,首先对于我们unity攻城狮来讲,如果没有安卓开发经验的话,开发一个关于安卓的工程也不是一个特别简单的事,里面有特别多要注意的地方

首先 ,安卓eclipse 并包含有安卓的插件

也就是对应的有个android的工程文件,百度搜一下,一大把

接下来 导入unity的jar包,有两种方式
一种是,直接在Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Release\Classes 这个目录下找到classes.jar文件,放在桌面备用
另外一种方法是创建一个新的unity安卓工程,然后在build settings ,切换到安卓 ,然后再 中 build systems 选择ADT ,导出,在bin文件夹下,找到classes.jar文件,放在桌面备用。

(两种方式均可)

在eclipse的安卓工程中,右键项目名称 buildpath->add external archives… 选择我们上面找到的classes.jar文件导入到安卓工程中

有任何问题可以添加 QQ群 207019099

然后开始写代码,下面直接上源码:

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
	super.onCreate(savedInstanceState);
	
}
 public void CallPhone(String string){
    	Intent tt = new Intent();
    	tt.setAction("android.intent.action.CALL");
    	tt.setData(Uri.parse("tel" +string));
    	
    	startActivity(tt);
    }

}

注意在 AndroidManifest.xml 文件中上面加入权限:

然后开始打jar包 ,直接在project-build project 即可,在bin文件下会有一个jar包,即使我们所需要的文件

然后导入到unity工程下,创建Plugins->Android->libs 将文件放入到libs中

将res文件和AndroidManifest.xml 文件放在Android 下,然后开始写unity的代码,直接上源码:

public InputField inputText;

public void CallPhone()
{
    AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
    AndroidJavaObject jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
    jo.Call("CallPhone", inputText.text);
}

写个按钮调用callphone即可

然后发布工程,这里说几点注意的:

1.使用的sdk要是同一个版本
2.使用的jdk要是同一个版本

然后就可以了。

猜你喜欢

转载自blog.csdn.net/gaofei12300/article/details/77195855