我是Unity开发的新手。所以,如果我的问题对于一个帖子来说毫无价值,我想表示抱歉。
我开始学习在Unity for GearVR中开发应用程序。在我的场景中,我想将Unity app作为Google Android Project导出到Eclipse进行进一步开发。在Eclipse中,我通过Sendmessage()将消息传递给Unity中的函数。
我的第一步是开发应用程序并在Note4中运行,而不启用"虚拟现实支持"。它运作良好。
然而,后来我启用了虚拟现实支持"并导出为Google Android Project。然后,尝试通过Eclipse安装并运行应用程序。但应用程序崩溃了。我能在LogCat中找到的错误是"致命信号11(SIGSEGV)在0xfa57132b(代码= 1),线程9384(UnityMain)"和"无法找到OVRPlugin"。
然后,我使用" Build and Run"在Unity中将应用程序安装到Note4。这一次,它运作良好。
因此,当虚拟现实支持"虚拟现实支持时,应用程序无法正常工作。在将其作为Google Android Project导出后,启用并通过Eclipse安装。
当我使用" Build and Run"时,我反向设计了Unity创建的apk。我注意到导出的Google Android Project和Reverse Engineered apk项目存在一些差异。特别是,libs文件夹中的内容不同。
如果有人能帮助我解决这个问题,那就太好了。
答案 0 :(得分:1)
我遇到了同样的问题,这最终对我有用:
1)使用"虚拟现实支持"导出Android项目启用。
2)打开Android Studio并使用导入项目(Eclipse ADT,Gradle等)导入项目。为"导入目的地"选择另一个目录。在下一个屏幕上选择所有三个选项。
3)等到导入和Gradle的工作完成。
4)退出项目或Android Studio。
5)将Unity生成的项目目录(project_name / libs / ovrplugin.aar)中的ovrplugin.aar文件复制到Android Studio生成的项目(project_name / app / libs /)
6)编辑位于project_name / app /的build.gradle文件并添加:
allprojects {
repositories {
jcenter()
flatDir {
dirs 'libs'
}
}
}
还有:compile(name:'ovrplugin', ext:'aar')
在dependencies {}
部分
所以这个文件看起来像这样:
apply plugin: 'com.android.application'
android {
(...)
}
allprojects {
repositories {
jcenter()
flatDir {
dirs 'libs'
}
}
}
dependencies {
compile(name:'ovrplugin', ext:'aar')
(...)
}
7)打开你的项目并等到Gradle完成处理更新的文件。
现在这应该可以正常工作。构建APK并测试。