热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

疑难杂症(一)集成优酷sdk[aar]libraryModule依赖,找不到aar[Couldnotfind:YoukuPlayerOpenSDKrelease:.]

集成优酷视频播放sdk时,遇到了一个很蛋疼的问题sdk提供了一个aar,正常套路都是直接copy代码把arrcopy到自己libraryModulelibs下,然后build.gr

集成优酷视频播放sdk时,遇到了一个很蛋疼的问题
sdk提供了一个aar,正常套路都是直接copy代码
把arr copy到自己library Module libs下,然后
build.gradle

android {
......
repositories {
flatDir {
dirs 'libs'
}
}
sourceSets {
main {
jniLibs.srcDirs = ['libs'];
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
//系统库
compile 'com.android.support:support-v4:25.0.1'
//公共库
compile 'com.alibaba:fastjson:1.1.56.android'
compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
//sdk
compile(name: 'YoukuPlayerOpenSDK-release', ext: 'aar')

代码的套路总是让我无法自拔

《疑难杂症(一)集成优酷sdk[aar] library Module 依赖,找不到aar[Could not find :YoukuPlayerOpenSDK-release:.]》

Error:svn: E155010: Path 'E:\...\GFishing\other\youkuplayer\libs\YoukuPlayerOpenSDK-release.aar' does not exist
> Could not resolve all dependencies for configuration ':app:_debugApk'.
> A problem occurred configuring project ':library'.
> Could not resolve all dependencies for configuration ':library:_debugPublishCopy'.
> Could not find :YoukuPlayerOpenSDK-release:.
Required by:
project :library > project :youkuPlayer

what?
找不到aar…
折腾了半天才搞定

原因:

@aar 本身就是一种library Module,直接作用在
apply plugin:'com.android.application'

我上面写在了apply plugin: 'com.android.library',所以找不到
解决办法Android Studio多Module使用 aar 依赖包 丢包解决,我采用了如下两种

1、 在Project 下的 build.gradle 中的 repositories 中添加相应的引用如下:


allprojects {
repositories {
jcenter()
maven { url "https://jitpack.io" }
/**子模块含有aar:添加全局引用*/
flatDir {
// 由于Library module中引用了 youkuplayer 库的 aar,在多 module 的情况下,
// 其他的module编译会报错,所以需要在所有工程的repositories
// 下把Library module中的libs目录添加到依赖关系中
dirs project(':youkuPlayer').file('libs')
}
}
}

2、在app 的build.gradle文件中加入如下一段:

/**子模块含有aar*/
repositories {
flatDir {
dirs 'libs','../youkuPlayer/libs' //我的aar在youkuPlayer Module下
}
}

推荐阅读
  • Android与JUnit集成测试实践
    本文探讨了如何在Android项目中集成JUnit进行单元测试,并详细介绍了修改AndroidManifest.xml文件以支持测试的方法。 ... [详细]
  • Flutter 核心技术与混合开发模式深入解析
    本文深入探讨了 Flutter 的核心技术,特别是其混合开发模式,包括统一管理模式和三端分离模式,以及混合栈原理。通过对比不同模式的优缺点,帮助开发者选择最适合项目的混合开发策略。 ... [详细]
  • 2023年最新Linux环境下Android开发环境搭建指南
    2023年最新Linux环境下Android开发环境搭建指南,帮助Android开发者在Linux系统上快速搭建开发环境,解决常见的配置问题。 ... [详细]
  • 本文介绍了一种通过设置主题(Theme)来实现快速启动的Android引导页,并详细说明了如何避免因不同屏幕分辨率导致的图片拉伸问题。 ... [详细]
  • 实践指南:使用Express、Create React App与MongoDB搭建React开发环境
    本文详细介绍了如何利用Express、Create React App和MongoDB构建一个高效的React应用开发环境,旨在为开发者提供一套完整的解决方案,包括环境搭建、数据模拟及前后端交互。 ... [详细]
  • Android Studio: 修改应用包名的详细步骤
    本文详细介绍了在Android Studio中如何修改应用的包名,包括具体的操作步骤和注意事项。这对于需要更改包名以适应不同需求的开发者非常有用。 ... [详细]
  • 本文介绍了GitHub上的一些Python开源项目,特别是IM(即时通讯)技术的应用。通过Sealtalk项目,探讨了如何利用开源SDK提升开发效率。 ... [详细]
  • 本文介绍了如何在Android应用中通过Intent调用其他应用的Activity,并提供了详细的代码示例和注意事项。 ... [详细]
  • 本文详细介绍了如何在 Ubuntu 14.04 系统上搭建仅使用 CPU 的 Caffe 深度学习框架,包括环境准备、依赖安装及编译过程。 ... [详细]
  • Vue CLI 基础入门指南
    本文详细介绍了 Vue CLI 的基础使用方法,包括环境搭建、项目创建、常见配置及路由管理等内容,适合初学者快速掌握 Vue 开发环境。 ... [详细]
  • 探讨如何在Android系统中实现APK间的依赖安装,确保特定应用在安装前检查并安装其依赖项。 ... [详细]
  • 本文介绍如何在阿里云环境中利用 Docker 容器化技术部署一个简单的 Flask Web 应用,并确保其可通过互联网访问。内容涵盖 Python 代码编写、Dockerfile 配置、镜像构建及容器运行等步骤。 ... [详细]
  • 本文详细介绍了如何在ARM架构的目标设备上部署SSH服务端,包括必要的软件包下载、交叉编译过程以及最终的服务配置与测试。适合嵌入式开发人员和系统集成工程师参考。 ... [详细]
  • 在现代前端开发中,组件化已成为不可或缺的技术,尤其在 React 和 Vue 生态中。然而,组件的管理和测试一直是开发者面临的挑战。本文将介绍如何使用 Storybook 来简化这一过程,提高开发效率。 ... [详细]
  • 本文将在前几篇关于Android测试理论知识的基础上,通过ApiDemoTest实例详细探讨如何使用ApplicationTestCase进行Android应用测试。建议读者先阅读Android测试教程系列中的相关内容,以便更好地理解本文的实践部分。 ... [详细]
author-avatar
HurricaneCC
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有