Android studio 抛错,是因为有2个module在 AndroidManifest.xml 里面具有一样的package name,修改不同名字即可. 还有一种情况是多个module对同一个library(eg: jar)引入多次,此时,可以一个module引入,另外一个module引入上一个module即可.  …
3情况1:个例 build.gradle 中 dependencies { classpath 'com.android.tools.build:gradle:3.1.1' // } 改成 dependencies { //目前最新版[2018年05月15日] classpath 'com.android.tools.build:gradle:3.1.2' // } 情况2:确实是依赖冲突 Error: Program type already present: android.support.…
前言 实际开发中,为了提高开发速度和效率,总避免不了引用第三方提供的依赖和类库,如果含有相同依赖的类库被我们引用时,而他们的版本又不相同,就有可能会导致一系列问题和异常,本文结合本人时间总结和他人经验,稍作总结. 问题 依赖 下面是一个项目build.gradle中的依赖,我们简单做一下分类 网络相关 okhttp retrofit http-legacy 常用类库 rxpermission(权限监测) leakcanary(内存泄漏) BaseRecycleViewAdapterHelper(…
Apparently, this is intended behavior: com.firebaseui:firebase-ui-firestore:3.1.0 depends on android.arch.lifecycle:extensions:1.0.0-beta1. Switching to version 3.2.2 fixes the issue by using the Lifecycle 1.1 libraries that Support Library 27.1.0 ar…
1.确保所有依赖包的 implementation 'com.android.support:appcompat-v7:25.4.0'是一样的 2.确保最外层的build.gradle中增加如下代码: allprojects { repositories { google() jcenter() } subprojects { project.configurations.all { resolutionStrategy.eachDependency { details -> if (detai…
com.firebaseui:firebase-ui-firestore:3.1.0 depends on android.arch.lifecycle:extensions:1.0.0-beta1. Switching to version 3.2.2 fixes the issue by using the Lifecycle 1.1 libraries that Support Library 27.1.0 are built upon. 解决方案: Try to replace all …
背景 因为公司一个app项目需要扩展,因为功能较多且较完整的流程与业务,而且和以前的业务关系不大,所以我整合到了 另外一个分包中(代号:newFunc,请注意是代号)进行依赖. 当我写完这部分业务开始进行debug的时候我发现了这个错误. 上述中我得出already这个关键字,在对分包的集成测试中没有出现问题,上述中我得出already这个关键字,说明已经存在,那么很有可能是冲突. 分析 材料: app 主包 newFunc(代号) 分包 我搜集了两个包中的build.gradle,最有可能影响…
背景 这个错误的原因是:androidx和 android.support同时存在. 首先,网上有很多解答说这样处理: 在 gradle.properties 添加: android.useAndroidX=true android.enableJetifier=true 然后再build.gradle 中添加这个: implementation "androidx.room:room-runtime:2.0.0-alpha1" annotationProcessor "an…
在app中的build.gradle中加入如下代码, configurations { all*.exclude group: 'com.google.code.gson' all*.exclude group: 'com.squareup.okhttp3' all*.exclude group: 'com.squareup.okio' all*.exclude group: 'com.android.support',module:'support-v13' } 如图…
在app中的build.gradle中加入如下代码, configurations { all*.exclude group: 'com.google.code.gson' all*.exclude group: 'com.squareup.okhttp3' all*.exclude group: 'com.squareup.okio' all*.exclude group: 'com.android.support',module:'support-v13' } 如图…
在app中的build.gradle中加入如下代码, configurations { all*.exclude group: 'com.google.code.gson' all*.exclude group: 'com.squareup.okhttp3' all*.exclude group: 'com.squareup.okio' all*.exclude group: 'com.android.support',module:'support-v13' } 如图…
在原本的代码中已经使用了OKHTTP和rxjava,然后今天依赖retrofit的时候一直报错 Program type already present: okhttp3.internal.ws.RealWebSocket$1.class 说是我重复添加了OKHTTP的包,但其实我直接把OKHTTP的依赖注释掉都没用,只要依赖retrofit相关的就一定报这个错 网上推荐添加以下配置,但我尝试后无效,你们可以试试 configurations.all { // OkHttp 3.5.0+ inc…
https://blog.csdn.net/lvxiangan/article/details/71601451 Android Studio开发中,把一个module输出打包为jar文件,我们会发现里面多了一个BuildConfig类,但在整个开发过程中我们始终没有写过这个类,这是怎么回事呢? 原来,BuildConfig类是一个根据build.gradle配置文件自动生成的类,有点类似于R.class,生成后不能修改.它具备以下特点: 1.该类位置在applicationId(应用包名)下面…
概述 现如今开发越来越追求效率和节奏,节省出时间做更多的事情,除了开发技术上的封装等,开发工具的使用技巧也是很重要的,今天就根据自己的经验来给大家介绍一下Android Studio快速开发之道. Postfix completion 介绍 Postfix completion 是IntelliJ IDEA很早就有的功能,该功能基于已经输入的表达式和你添加的后缀来实现另一个你想要的表达式.例如在布尔表达式之后加上后缀if就是if语句 . 常用后缀介绍 下面介绍一下个人工作中觉得比较常用的几个后缀…
转载:http://www.jianshu.com/p/c439605a4364 概述 现如今开发越来越追求效率和节奏,节省出时间做更多的事情,除了开发技术上的封装等,开发工具的使用技巧也是很重要的,今天就根据自己的经验来给大家介绍一下Android Studio快速开发之道. Postfix completion Postfix completion 是IntelliJ IDEA很早就有的功能,该功能基于已经输入的表达式和你添加的后缀来实现另一个你想要的表达式.例如在布尔表达式之后加上后缀if…
1.dexDebug ExecException finished with non-zero exit value 2 全bug日志如下: (Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'D:\JDK8\jdk1.8.0_…
区域1介绍 这个区域是运行和调试相关的操作. 1.编译2中显示的模块                      2.当前项目的模块列表            3.运行2中显示的模块                  4.调试2中显示的模块 5.测试2中显示的模块代码覆盖率        6.调试安卓运行的进程            7.重新运行2中显示的模块            8.停止运行2中显示的模块 区域2介绍 这个区域主要是和Android设备和虚拟机相关的操作. 1.同步工程的Gra…
一.学习的基本配置文档,搞好各种参数的基本配置,熟练使用. C:\Program Files\Java\jdk1.7.0_09\bin   二.problems meet in weather android studio: 1.代码不自动补全 解决方法: Files ->Settings-> Editor -> Auto Import 代码报错时,按alt+enter可以自动修改丢失文件.   2.关于android studio的报错信息的具体函数查找 解决方法:看高亮的字体 at…
转:http://my.oschina.net/1pei/blog/479162 PNG格式:每个PNG文件是由一个PNG标识(signature),后面跟一些数据块(chunk),每个chunk由 一个chunk类型来标识其功能. 摘要 本文解决了Android Studio 1.2.2下编译期间出现的libpng warning: iCCP: Not recognizing known sRGB profile that has been edited警告问题. 目录[-] 1. 问题描述…
详细内容请参看 http://www.jetbrains.com/idea/webhelp/facet.html 以及 http://www.jetbrains.com/idea/webhelp/android-facet-page.html 那里有android studio的详细使用说明. A module is a discrete unit of functionality which you can compile, run, test and debug independently.…
现如今开发越来越追求效率和节奏,节省出时间做更多的事情,除了开发技术上的封装等,开发工具的使用技巧也是很重要的,今天就根据自己的经验来给大家介绍一下Android Studio快速开发之道. Postfix completion Postfix completion 是IntelliJ IDEA很早就有的功能,该功能基于已经输入的表达式和你添加的后缀来实现另一个你想要的表达式.例如在布尔表达式之后加上后缀if就是if语句 . 常用后缀介绍 下面介绍一下个人工作中觉得比较常用的几个后缀. cast…
http://www.open-open.com/lib/view/open1451917048573.html Java Native Interface (JNI)标准是java平台的一部分,它允许Java代码和其他语言写的代码进行交互.JNI 是本地编程接口,它使得在 Java 虚拟机 (VM) 内部运行的 Java 代码能够与用其它编程语言(如 C.C++ 和汇编语言)编写的应用程序和库进行交互操作.由于Android的应用层的类都是以Java写的,这些Java类编译为Dex型式的Byt…
开发第一应用 可以开发属于自己的应用,是否有点小激动?好吧!让我们开始,首先点击Start a new Android Studio Project创建工程: 接下来需要输入应用名称(第一个字母要大写).公司域以及指定应用存放目录,点击Next按钮进入下一步: 如果第一个字母不是大写,会提示:The application name for most app begins with an uppercase letter 接下来需要选择开发什么设备(可选“手机和平板”.“穿戴(Wear)”.“T…
1. Debug 模式查看变量的值: To quickly evaluate the value of any expression while debugging the program, hold Alt and click this expression to see its value and calculate it, call a            method, etc. 2. 自动补全快捷键,默认,自己设置过快捷键以自己的为准: Use Basic Completion (C…
转摘自:http://blog.csdn.net/zhanghefu/article/details/9286123 第一章   andriod studio 安装与环境搭建 一.Android Studio简介 Android Studio是Google新发布的Android应用程序开发环境,Android Studio是基于IntelliJ IDEA开发而成的.在Android Studio开发环境中,Android开发者可以非常方便地调试Android应用程序,Android Studio…
概述 现如今开发越来越追求效率和节奏,节省出时间做更多的事情,除了开发技术上的封装等,开发工具的使用技巧也是很重要的,今天就根据自己的经验来给大家介绍一下Android Studio快速开发之道. Postfix completion 介绍 Postfix completion 是IntelliJ IDEA很早就有的功能,该功能基于已经输入的表达式和你添加的后缀来实现另一个你想要的表达式.例如在布尔表达式之后加上后缀if就是if语句 . 常用后缀介绍 下面介绍一下个人工作中觉得比较常用的几个后缀…
Android Studio 打 Jar 包一直是一个麻烦的事,按照网上现有的教程,打包一个混淆的 jar 需要完成下列步骤: 1.将 plugin 修改为 library 后 build 出 aar,再提取 aar 里面的 classes.jar 2.使用 jarjar 等工具剔除多余的 class 3.对第二步得到的 jar 进行混淆 无论哪一步,所做的工作量都不少.于我个人而言,相当麻烦,于是花了些时间研究了下 Gradle 打 Jar 包. 代码 废话不多说,先上代码(注:只在 Grad…
文/ skay csdn博客:http://blog.csdn.net/sk719887916/article/details/40541163 最近遇到项目从Eclispe迁移到Android studio,以前的Ant自动打包脚本已经兼容不好了,所以用了Gradle实现打渠道包,切换环境等, Ant打包脚本 <target name="-release-sign" if="has.keystore"> <!-- only create apk…
原文作者:youxiachai <用Gradle 构建你的android程序> 前言 android gradle 的插件终于把混淆代码的task集成进去了,加上最近,android studio 用的是gradle 来构建项目, 下定决心把android gralde 构建项目的用户指南全部看完, 让不会用gradle 的人也用gradle构建android项目,让打包(注意,打包和构建是两码事)多版本android不再痛苦.最后,题外话:珍惜生命,远离ant.... Gradle buil…
在该module的build.gradle中添加 task makeJar(type: Jar) { archiveName 'mysdk.jar' from('build/intermediates/classes/release/') from(project.zipTree("libs/依赖的第三方库")) destinationDir = file('build/libs') exclude('包名/BuildConfig.class') exclude('包名/BuildCo…