首页
学习
活动
专区
圈层
工具
发布

开发工具总结(2)之全面总结Android Studio2.X的填坑指南

在安装了新的 Android Studio 之后,AVD 新建并启动模拟器的时候报以下错误: emulator:ERROR:x86 emulation currently requires hardware...Failed to resolve: junit:junit:4.12 出现原因:项目中引用了junit库中的代码,但是却没有相关的junit的依赖库 解决办法:添加相关的依赖库引用,在项目的Module...解决办法: 把v4包注释修改之后,clean,rebuild一下,OK ★★★★ 问题二: non-zero exit value 2 解决办法: 这个错误在app的build.gradle...点开之后发现了一个pom.xml,这里面就是关于这个jar的一些配置文件,往下找,发现了一个依赖库的引用, 复制里面groupId,到你的app的build.gradle里,找到那个依赖,添加{exclude...在项目的build.gradle文件中添加以下代码: multiDexEnabled true 重新编译之后,项目成功移植了。 23.

2.5K11

gradle 入坑指南(基本原理介绍+错误集锦)

这次我真的是算是掉坑了,必须写一波来抒发自己对gradle的敬畏之心。 本文主要讲解在Android Studio中gradle配置的坑。...下面是gradle一些配置说明: 1.Offline work工作模式 配置描述: 离线模式工作,看这个名字已经明白了一二。 离线工作模式会从缓存中获取依赖库,而不去网络下载。...3.设置HTTP代理 设置完后置gradle.properties文件会出现设置内容,如果不用记得清除。...然后是设置HTTP代理(步骤介绍上文),设置过之后也可以访问外国网站。你发现并没有卵用。...解决:https://blog.csdn.net/#Maven 错误2:gradle下载不了第三方库、 Could not download 、 Connet refused 分析和解决:

5.5K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android 天气APP(三十七)新版AS编译、更新镜像源、仓库源、修复部分BUG

    ,对于项目本身来说一些依赖库就无法使用了,但是在之前的AS版本中是可以的。   ...改成了 mirrors.aliyun.com/macports/distfiles/gradle 改完之后Sync Now即可,两者选一个就好了。...从上诉错误来看有四个库的依赖出了问题,这几个库的作用分别是权限、刷新、数据库,实际上是3个,因为这个下拉刷新实际上是可以一起改的。...}   这个就看你自己要不要替换了,需要注意的是,国内的库并不是实时同步国外的库的,所以,你可以不注释google()和mavenCentral(),同时更新一些库的版本,改动后记得Sync Now同步一下即可...,如果还有别的地方出现这样的情况,你可以再去更改,在MainActivity中改动如下图所示: MapWeatherActivity中改动如下所示: 运行一下看看 非常好,我的代码还是照样运行,只不过我不会再把

    51711

    系统jar包,sdk的制作及引用

    需求 因为我是开发ROM的,所以系统的一些改动需要暴露给我们自己的APP。...所以需要我编译一个包含新接口方法的jar包交给APK编译。(生成jar包的方法见该文章) 编译Jar包 其实编译系统jar包很简单 make framework 即可得到framework.jar。...SDK制作 前面的方法,虽然可以让App访问系统自定义的API,但是,有些APP做了很多的外部库引用,我们的jar包因为包含很多系统方法,会导致正常的类引用出现奇怪的错误。...这些错误很难解决,所以就讨论了另外一个方案:做一个SDK,在SDK中调用系统的方法,然后让APP调用我的SDK。...菜单双击makeJar进行模块编译,会在sdk里的build/outputs/aar出现 mysdk-debug.aar和mysdk-release.aar两个库文件。

    6K30

    编写 Android Library 的最佳实践

    其实 Android 的编译系统早就支持库模块包含自己的 ProGuard 配置文件了,如果你希望你自己库里的一些代码,在调用者编译时也不被混淆,可以在自己 library 的 proguard-rules.pro...而照常来讲,一个应用是不应该直接引用一些第三方库里面的资源的,搞不好就很容易出现一些问题。比如万一哪天人家库升级把这串值改掉了,或者干脆拿掉了,你 app 就跪了。...但是升级到 Android Studio 3.3 + Gradle Plugin 3.1.3 之后我发现 IDE 不会再警告了,也可以通过编译,不知道这又是什么坑。...而接入者的项目原可能已经依赖了这些库,一旦再接入了你的,就会导致错误,提示 duplicated class was found。 这种做法与 Gradle 的依赖管理机制完全是背道而驰的。...使用单个文件统一依赖库的版本 如果你的项目分了好多模块,结构比较复杂,我这边推荐大家使用一个 versions.gradle 文件来统一所有模块依赖库的版本。

    1.6K01

    从零开始用android studio

    我这篇博客写的有点迟了,很多原因 ,不一一说明了,而且网上也有很多介绍这个android 开发神器的文章,很多我在碰到问题的时候也都一一看过,但是我还是想写一篇总 结的比较全一些的。...然后开始新建项目或者导入eclipse 中的项目 你新建一个项目后会出现第一个问题  界面一直卡在那里不动,是因为在配置gradle或者更新sdk,这个很耗时,有的甚至几个小时都会卡在那里,如下图...出现上面的情况需要做以下几件事: 1)在Android Studio安装目录下的 bin 目录下,找到 idea.properties 文件,在文件最后追加disable.android.first.run...的问题,倘若上面的gradle配置好了应该就不会有这个错误,如果有的话检查一下 build.gradle里面的版本对不对 5.so文件加载问题 我们将eclipse里面的项目导入进来之后 会发现很多问题...依赖的jar包有冲突,导致编译出现这种错误,解决方法就是删掉重复的jar包 比如v4或者v7 保留一个就好。

    1.7K20

    《Android群英传 神兵利器》读书笔记

    Lint 用于检测各项目中(包含库)中的一些错误问题,比如资源未用或过时的api等。 在AS命令行使用gradle lint。...(如果gradle版本更新则要更改配置) // 使用lint检查代码时错误的话停止,加上这个之后就会继续,但是一般不启动lint,因为启动后会编译很慢 lintOptions{ abortOnError...RSS - Resident Set Size 实际使用物理内存(包含共享库占用的内存)。 PSS - Proportinal Set size 实际使用的物理内存(比例分配共享库占用的内存)。...USS - Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)。...在Android2.3之后,系统修改了GC,将GC作为并发线程,同时每次GC并不会遍历整个Heap,而是只遍历一部分内存。

    78610

    JUnit 5 简介

    导入类库 在JUnit 5还在测试阶段的时候,官方文档上还有在Maven和Gradle中集成JUnit 5的例子。...在junit5-gradle-consumer 示例项目中也有比较详细的说明。 首先,Gradle默认不支持JUnit 5,,所以需要启用JUnit Platform Gradle 插件来支持。...常见问题 区分不同版本间的@Test注解 就在我写这篇文章的时候, 我的测试小例子就遇到了一个问题,测试通不过,显示如下的错误信息。...但是前面明明说了,JUnit 5取消了这个限制,那么为什么还会出现这个错误呢?我仔细一看,发现了错误所在。...import org.junit.jupiter.api.Test; 修改之后,再次运行测试,果然没有问题了。当然这里为了学习和使用,我同时引用了JUnit 4的包,所以才会出现这个冲突。

    1.7K90

    Android Studio 3.0~3.x正式版填坑之路

    正文 ---- AS升级到 Android Studio 3.x(Stable 3.0.0 ~ 3.4.0)之后,会遇到一些版本升级变更的问题。...关键字依赖发生变化: compile(implementation/api),provided(compileOnly),apk(runtimeOnly) AS 3.0后,在使用新依赖配置项时,引用本地库使用...输入法中文状态下无法选词 Question AS 3.0后在输入中文时候会出现键盘不显示,无法筛选词输入中文 Solution 首先要说不是你的输入法问题,而是AS 3.0后的一个BUG,下面提供几种解决方案...此外,还有一些已知的问题,所以暂时不建议在生产项目中使用。 12. AS 3.3.0警告问题 在 AS升级到 3.3.0,Gradle升级到 4.10.1+ 时,编译会一直提示警告。...Android Gradle配置文档,点击开启传送门! 下载 Android Studio下载,请戳我哟! Android Gradle下载,请戳我哟!

    2.2K10

    MAC上使用Android Studio 3.0的Gradle问题小解

    下载了 Mac 版本的 Android Studio 3.0 Canary 3 后,发现新建项目后出现一些构建上的问题,主要是 AS 3.0 预览版构建工具使用的是 4.0 新版本的 Gradle ,在工程项目文件.../gradle-4.0-milestone-1-all.zip 然后出现几个问题的错误信息包括: Unable to load class 'org.gradle.internal.event.ListenerBroadcast...另外,在我后来 Windows 10 上使用 AS 3.0 时并没有出现这些 Gradle 相关的问题,构建一切正常!...,我用的 Homebrew : $ brew install gradle 这样安装好之后,一般 Gradle Home 也设置好了,我写此文的时候 Gradle 在我机器上的版本是 3.5 。...手动下载并手动设置 如果按照上面步骤安装好本地 Gradle 后在 Android Studio 中出现这种错误信息: Error:(1, 0) Minimum supported Gradle version

    3.5K20

    使用AndroidStudio编译NDK的方法及错误解决方案

    :http://tools.android.com/tech-docs/new-build-system 实践证明: 0.4.2只有在gradle1.10版本下创建只包含AndroidLibrary模块的工程时才能正常编译...so库文件生成,如图: 注意这里的Android.mk文件每次编译都会重新由工具自动生成,而非手动编辑的,我觉得这一点设计就比较差劲。...测试: 编译运行app,apk安装完毕运行时输出log信息: 后面列出了可能出现的gradle错误以及解决方案,以供参考。...解决方案: 这是NDK在Windows下一个bug,当只编译一个文件时出现,解决方法就是再添加一个空的文件即可。...ó 无论使用哪个版本都有问题,后来仔细查看了下'AppPlugin'这个错误是出现在‘app’模块上的而非‘hellojni’模块上,于是考虑新建工程项目并且只在该工程下建立一个库模块,不再创建app模块

    2.9K120

    Android NDK开发:打包so库及jar包供他人使用

    四、为库模块添加c++支持 首先要做一些准备工作。为了顺应时代潮流,此处使用cmake构建。...然后按照我们之前说的,在包下建立名为MyStringUtil.java的文件。之后的文件结构如图: 在java文件中加载ndk库,然后声明函数,要和c++文件中的对应起来。...而且现在AndroidStudio越来越难用,很多bug出现。 4.4 测试库 至此我们已经把库的部分完成了,但是还是要测试一下能不能正常运行。...nice,字符串没有错误,说明成功了。 五、打包so库 so库其实不用打包,因为我们已经在CMakeLists文件中指定了so库的输出路径。...放一个完整的sdk的build.gradle,如果有c++配置或者其他的一些问题可以参考这个gradle。

    3.8K21

    Android 项目Gradle文件讲解(Groovy和Kotlin)

    它可以包含一些常用的配置属性和自定义属性,以影响项目的构建过程。...:“official 官方”或“obsolete 过时”: kotlin.code.style=official # 启用每个库的 R 类的命名空间,以便其 R 类仅包含库本身中声明的资源,而不包含库依赖项中的资源...,从而减小该库的 R 类的大小 android.nonTransitiveRClass=true 实际上就4行代码,我将一些内容翻译了一下,可能不是那么准确,但是差不太多,平时这里改动比较少。...gradle-wrapper.properties 文件包含了一些重要的配置属性,用于指定 Gradle Wrapper 的行为和使用的 Gradle 版本。...{}下进行配置,如下图所示: 注意,当gradle文件改动之后你都需要点击Sync Now进行同步配置,否则配置不生效,这也是很多人问过我的问题。

    4.3K10

    速读原著-Gradle 在大型 Java 项目上的应用

    在最近半年里,我在使用Gradle 作为构建脚本的大型Java 项目上工作,更深切体会到Gradle 在项目构建过程中是如此的简单、易用。...在一些复杂的项目中,经常会把配置文件放置到一个目录进行统一管理。比如在我所在的项目, 就专门提供了一个 config 子目录,里面存放了所有的配置信息。...2.4 初始化数据库 在项目开发过程中,为了方便为不同环境构建相同的数据库及数据,我们通常需创建数据库的表以及插入一些初始化数据。...在 Gradle 脚本中,使用 Groovy 加载数据库的 Driver 之后,就可以使用 Groovy 提供的 Sql 类去执行SQL 来初始化数据库了。代码如下: ?...对于一些必须运行成功的 SQL 文件,可以在 catch 块里通过抛出异常来中止数据库的初始化。需要注意的是需要将数据库的 Driver 加载到 ClassPath 里才可以正确地执行。

    2.8K10

    Android必知必会-发布开源 Android 项目注意事项

    合理配置 .gitignore 文件 配置 .gitignore 可以排除一些非必要文件和保护保密信息,下面是在项目根目录下 .gitignore 的配置: .gradle /local.properties...3. .SO 文件 如果开源项目中使用的开源库中有多个库包含 jni,由于每个开源库提供的 so 文件的编译版本不尽相同,那么,很有可能在不同 CPU 架构的手机上崩溃,所以要在打包时进行 so 文件的过滤或者说选择...下面举个简单的例子:假设我的一个开源项目使用了 gif-drawable、fresco、Vitamio-4.0 在 /app/build.gradle 中的配置如下: dependencies {...,在实际的开发项目中更要注意这一点,所以在选择包含了 jni 的开源库时,务必要注意到当前项目中其他开源库的 jni 的版本。...每次添加新的包含 jni 的类库时,都要做一次比对,务必打包它们交集的 jni 版本。 4.

    90120

    Android MavenCentral 仓库更新问题

    前言   在去年的3、4月份的时候我发布了一个开源库EasyView,在MavenCentral上,可以说当时发布的时候就遇到过很多问题,发布的难度远超在jitpack上发布库,随着发布之后一些开发者的使用和提出的建议...,我对库进行了一些优化,优化之后就是库的版本更新了,于是就有了我下面要讲的内容。...并没有,随着我的不断尝试,于是找到了一个可行的方法,下面我先介绍一些事情的前因后果。...然后点击下拉选择User Token,进入User Token页面,这里面你可以访问和重置User Token   点击 Access User Token,将会验证你的账号和密码,验证之后会出现一个一分钟后关闭的小弹窗...② 解决1   然后我的解决方式是在我的easy模块下的build.gradle中的signing{} 闭包下添加一行代码: useGpgCmd() 如下图所示: 然后Sync Now,再publish

    41210

    模型部署从0到1

    不过得看网络快不快,毕竟下载的库都在国外,可能会出现错误。...首先,Gradle 这个东西应该是 AS 里面的一种插件之类的吧,我发现每次新建一个项目他都会给我重新下载一个 Gradle,我暂时不知道这是在干什么的,比较重要的是,我们的 Gradle 的版本是比较重要的...AS 自己下载好 Gradle 之后,一般来说,上方的锤子就会变绿,并且会有一个安卓图标的 app 配置在右边。但是一般情况下直接编译的话是会报错的,会说类似如下的东西。...经过一番心态爆炸之后我才知道 Android Gradle 插件与 Gradle 版本是有对应关系的,我们得下载对应版本的插件?...main/res 里面是一些布局之类的,layout 里面是整个 UI,点进去的话会出现 QT designer 一样的控件页面,可以拖拽,其他的没啥讲的,我们主要是看 main/java 里面的代码

    1.4K10

    安卓入门-熟悉Android Studio以及创建第一个安卓模块

    有些时候,我们会有一些个性化的构建需求,比如我们引入了第三方库,或者我们想要在通用构建过程中做一些其他的事情,这时我们就要自己在系统默认构建规则上做一些修改。...项目中一般会出现2个或者多个 build.gradle 文件,一个在根目录下,一个在 app 目录下。如果切换到 Android 模式下则全部在 Gradle Scripts: ?...其中,最后面的部分是插件的版本号,我在写作本书时最新的插件版本是2.2.0。  ...Log.w() 用于打印一些警告信息,提示程序在这个地方可能会有潜在的风险,最好去修复一下这些出现警告的地方。对应级别warn,比info高一级。...Log.e() 用于打印程序中的错误信息,比如程序进入到了catch语句当中。当有错误信息打印出来的时候,一般都代表你的程序出现严重问题了,必须尽快修复。对应级别error,比warn高一级。

    6.2K30

    Spring5.2.x源码下载及编译

    建好项目之后再gradle的配置文件中添加spring的依赖——相当于你建了一个maven项目,在pom文件中添加spring的依赖 compile(project(":spring-context")...System.out.println(annotationConfigApplicationContext.getBean(InstanceA.class)); } } 右键运行——可能你会出现一些错误...;比如笔者这里就出现了某些类找不到的错误 ?...如上图所示,出现的错误,小伙伴可以按照我下面的步骤去解决即可 ? ? ? 当再次右击运行的时候,又会出现找不到某些类的情况 ?...出现如上图的错误,小伙伴不必担心,完全可以忽略掉,因为我们运行tese包,但是包中没有一个类,但是IDEA还是会帮我们编译的,只是编译是个空的 我们仍然可以看到out文件夹产生了 好,问题解决完成后,

    3.2K11
    领券