参考文档
http://docs.unity3d.com/Documentation/Manual/PluginsForAndroid.html
参考文章
http://www.xuanyusong.com/archives/667
虽然Unity3D是非常强大的工具,为我们节省了不少代码,但是在实际项目中,我们有时候必须借助其他
此方法能将Android插件“类库化”,从而不限制在Unity3D的发布设置中将包名改为android插件的包名,达到真正的插件化。
首先,还是在Unity工程下创建Plugins->Android,这是Android插件存放的位置
图中为最后配置完插件的样子,因为使用了第三方库,所以有libs文件夹
第二步,制作Android插件
1.与原文不同,我们并不仅仅使用
您安装Unity的路径\Editor\Data\PlaybackEngines\\androidplayer\bin
下的classes.jar作为外部库导入,而是将androidplayer作为Android工程整个拷贝出来修改。
2.在拷贝出的androidplayer工程中,导入classes.jar作为外部库。
3.在包com.unity3d.player中找到UnityPlayerActivity.java并将其作为主Activity按照常规方法制作android插件,当然你可以随意修改包名,修改类名,修改AndroidManifest,导入您需要的第三方类库
4.将UnityPlayerActivity.java制作完成后将工程打包成.jar
5.将jar拷贝至Unity工程的Android插件存放地
6.将jar中的AndroidManifest.xml,libs等内容拷出,删除其他内容只剩下com和META-INF文件夹
完成
用此方法制作的Android插件不需要将Unity3D发布设置中的Bundle Identifier修改成Android工程的包名,Unity3D会自动帮您重新打包,至此,真正意义上的Android插件就制作完成了!
最后做一点补充,在原文中,大神们打包jar的方式都是命令行的,这里我提供一个稍微简便的方法(可能也有其他人提到过)
在Eclipse中,在Project Explorer视图中,右键选择您要打包的Android工程,选择Export(导出),弹出如图所示对话框
选择Java下的JAR file,点击Next弹出如图所示对话框
JAR file中设置好自己要导出的位置和jar包名,点击Finish即可。