本雍 2023-04-18 18:32 采纳率: 66.7%
浏览 9

unity使用aar依赖关系处理

我使用AndroidStudio在主模块做了一个启动其他apk的功能,这个功能在AS中在真机上正常执行,但是将aar导入到unity中就报错,提示androidx 找不到。

img

我的unity版本是2019.4,androidStudio GradleVersion是7.5。 查过资料,了解到AndroidX这个库,Unity本身就支持。只是gradle版本不匹配,
所以我在网上下载了一个Gradle5.5,将unity Gradle 版本升级到了Gradle5.5,本来想用最新的8.0,但是一打包就报错,最后根据错误提示,选择了5.5(提示要求gradle版本在5.4.1以上)。只是打包之后运行还是报之前的错误,不知道怎么办了。


另外,我之前其实想找到androidX jar包的,直接使用jar包,不使用gradle加载这种方式,但是androidX太多了,把提示的都加了还是报错,就放弃了。
不知道有没有人知道,使用androidX jar包 可行不?

img


我的依赖文件 ,targetsdk 有红线,但是不影响使用就没管

img

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-04-19 08:09
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:
    • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7440967
    • 以下回答来自chatgpt: 由于您的问题比较复杂,我需要先分析一下您的情况,然后再给出解决方案: 1. 您已经将aar文件导入到Unity中,但在使用时出现了错误。 2. 您在Android Studio中使用了启动其他apk的功能,但在Unity中使用时,提示无法找到androidx库。 3. 您已经升级了Gradle版本到5.5,但在打包时仍然报相同的错误。 4. 您尝试使用androidX jar包替代Gradle加载,但由于androidX库太多,仍然会出现错误。 5. 您的依赖文件中有一个targetSDK显示出现红线,但在实际使用中并没有影响。 根据您的描述,可能出现问题的地方有两个:aar文件的导入和androidx库的使用。针对这两个问题,我分别给出以下解决方案: 1. 解决aar文件导入问题 由于您没有提供具体的错误信息,我无法确定问题出现的根本原因。不过,您可以尝试以下操作: ① 确保您导入的aar文件没有问题,在Android Studio中测试过可以正常运行。 ② 在Unity中尝试重新导入aar文件,或者在Unity的项目中检查是否有其他冲突的文件。 ③ 检查Unity和Android Studio的Android版本是否相同,不同的版本可能会导致兼容性问题。 ④ 检查Unity和Android Studio使用的Gradle版本是否相同,Gradle版本不匹配可能会导致问题。 ⑤ 检查Unity和Android Studio使用的Java版本是否相同,Java版本不同可能会导致报错。 2. 解决androidx库使用问题 为了解决Unity中找不到androidx库的问题,您需要将相关的库添加到Gradle中。以下是一个可能的解决方案: ① 在Unity项目中,找到Assets/Plugins/Android目录。如果没有该目录,请手动创建。 ② 在Android目录下创建一个名为mainTemplate.gradle的新文件。 ③ 打开mainTemplate.gradle文件,并添加以下代码: android { compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } packagingOptions { exclude 'META-INF/DEPENDENCIES.txt' exclude 'META-INF/LICENSE.txt' exclude 'META-INF/NOTICE.txt' exclude 'META-INF/maven/com.google.guava/guava/pom.properties' exclude 'META-INF/maven/com.google.guava/guava/pom.xml' } lintOptions { disable 'MissingTranslation' checkReleaseBuilds false abortOnError false } configurations.all { resolutionStrategy.force 'com.android.support:support-v4:27.1.0' resolutionStrategy.force 'com.android.support:support-annotations:27.1.0' } repositories { mavenCentral() } } dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'androidx.appcompat:appcompat:1.0.2' implementation 'androidx.legacy:legacy-support-v4:1.0.0' } 以上代码包含了常见的androidx库,可以尝试添加到您的项目中进行测试。 ④ 然后重新编译项目,在Unity中运行并测试有没有解决问题。 3. 关于targetSDK的问题 如果您的依赖文件中有一个targetSDK显示出现红线,但在实际使用中并没有影响,那么您可以尝试以下操作: ① 在Android Studio中打开你的项目。 ② 打开File -> Project Structure -> Project将你想要使用的SDK版本选择为Android SDK。 ③ 然后,打开File -> Project Structure -> Modules -> app对依赖项的状态进行检查,确保依赖项中的库版本与您的项目兼容。 以上是我对您的问题的分析和解决方案,希望对您有所帮助。如果还有问题,请告诉我。

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 4月18日

悬赏问题

  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值