Java 如何从Main访问libs中的aar文件
我花了三天时间在Android Studio中阅读一个.aar,但我就是想不出来。 我的项目视图如下所示:Java 如何从Main访问libs中的aar文件,java,android,import,aar,libs,Java,Android,Import,Aar,Libs,我花了三天时间在Android Studio中阅读一个.aar,但我就是想不出来。 我的项目视图如下所示: --- AnApplication ----------------------.gradle -----------------------.idea ----------------------- app -------------------------------- build -------------------------------- libs --------
--- AnApplication
----------------------.gradle
-----------------------.idea
----------------------- app
-------------------------------- build
-------------------------------- libs
---------------------------------------- cube5-debug.aar
(...)
我想从主活动访问cube5-debug.aar中的类
我知道类在.aar文件中
我不知道我必须在主文档开头写的确切导入行。
我尝试导入com.company_cube.cube5(我生成my.aar的项目包)和许多其他变体
我不知道Android Studio是否将该文件识别为库。但是,这些文件已成功与gradle同步
(在上下文中,我生成.aar的项目是由Unity创建的,它将Unity项目导出到Android项目中,然后从该项目生成.aar;目标是在第二个Android Studio项目中使用此.aar文件作为库—我在本文中讨论的项目)
我耐心地等待你能给我的任何帮助。谢谢
编辑:要导入.aar,我遵循了这篇小帖子的图片:
正如Daniel Nugent所说,通过将.aar放入libs文件夹,解决了post报告中的错误。然而,当我试图写作时,主要是:
- Intent Intent=新的Intent(getApplicationContext(),UnityPlayerPractivity.class)李>
通过执行以下操作将.aar文件添加到您的应用程序: 在project
build.gradle中
allprojects {
repositories {
flatDir {
dirs 'libs'
}
}
}
dependencies {
compile(name:'cube5-debug', ext:'aar')
}
应用内build.gradle
allprojects {
repositories {
flatDir {
dirs 'libs'
}
}
}
dependencies {
compile(name:'cube5-debug', ext:'aar')
}
对于android Studio 2.3.3,您可以使用
repositories {
flatDir {
dirs 'libs' //this way we can find the .aar file in libs folder
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile(name: 'cube5-debug', ext: 'aar')
}
在app
级别build.gradle
。我没有检查它是否为AS 3.0。所以我设法解决了它。我提到的.aar文件是在我将一个Unity项目导入AS之后,用AS导出的。我这样做是为了在内部使用Unity程序。然而,这给Unity和AS的某些版本带来了错误。我安装了Unity 5.5.0f3和旧版本的AS,一切正常
注1:如果您打算安装Unity版本,系统会提示您需要一些windows 10工具,您必须获得这些工具(我记不起名称)。我是通过下载Windows10安装并只安装该软件包附带的工具来实现的
注2:我让Unity的程序在内部工作,但这只是因为它是一个简单的程序。后来我想在Unity中做一个增强现实应用程序,并在AS中使用它,但显然做不到。在我将.aar导入AS,并且该.aar库中的一个类无法解析(“视频播放器”)之前,每个类型都可以正常工作。这应该与AR camera类有关,AS无法识别。我最终创建了一个带有Unity的AR应用程序,AS中的另一个应用程序,并从AS应用程序调用Unity应用程序,必要时使用两行代码。要返回AS应用程序,现在在后台,我只需单击Unity应用程序识别的后退按钮(如果你为它编写了统一的代码)并使其破坏自身,返回AS应用程序。谢谢你的回复。我在app build.gradle中有行,但在project build.gradle中没有。我只是添加了行,但似乎没有什么区别……我只是不知道如何从Main调用函数。例如,在我的aar文件中有一个名为“libs”的文件夹"它有一个unity-classes.jar文件。我想从该文件中调用一个类。我只是不知道如何执行。如果导入正确,当您调用该类时,Android Studio应该自动知道您正在从aar导入一个类。您可以通过调用类函数auto-completing来检查这一点。只要尝试调用aar
clas即可ses来自MainActivity,您将看到AS提供了关于它们的提示,并且如果您同意提示,将自动导入所需的类。我正在尝试,但AS没有给出任何建议。我解释了如何导入.aar,我可以在Winrar中看到哪些内容,以及我想在Main中编辑哪一行。如果您能看到,我将非常感谢精确。谢谢你的帮助。我已经在那个文件中有了这些行,这就是为什么我可以毫无错误地同步graddle。但是,我不知道如何从我的Main调用aar文件中的某些内容。在.aar文件中有一个名为“libs”的文件夹它有一个unity-classes.jar文件。我想调用其中的一个类。关于如何从Main调用它,有什么建议吗?