Android Studio3.0.1填坑笔记

所属分类: 软件编程 / Android 阅读数: 34
收藏 0 赞 0 分享

从前听大神同事强老师说IntelliJ IDEA 功能强大,是Jet Brains 公司开发商业IDE(集成开发环境),同时支持Java, Scala 和Groovy。商业IDE即IntelliJ 是一款收费的IDE,当然了其实也有免费的社区版本,但是很多功能都被阉割了。IntelliJ 除了支持Android项目开发,还可以搭建java web 开发环境,功能比AS更强大。

阿拉最近重装了电脑,想着干脆也装个IntelliJ 吧,但是另一个同事说Intellij与AS会冲突。一开始我觉得是他太嫩,不爱折腾。后面因为as3.0自身有一些新的坑,Intellij我暂时没弄成功,终于是先放下它,晚点再来对付。毕竟还是要上班工作的,但我是打不死的程序媛。

(一)关于注解

Error:Execution failed for task ':Framework:javaPreCompileDebug'.

Annotation processors must be explicitly declared now. The following dependencies on the compile classpath are found to contain annotation processor. Please add them to the annotationProcessor configuration.

- butterknife-7.0.1.jar (butterknife-7.0.1.jar)

Alternatively, set android.defaultConfig.javaCompileOptions.annotationProcessorOptions.includeCompileClasspath = true to continue with previous behavior. Note that this option is deprecated and will be removed in the future.

See https://developer.android.com/r/tools/annotation-processor-error-message.html for more details.

Android Studio官网的说明如下:

Use the annotation processor dependency configuration

一开始我是先找到了解决方法,后面才看到上面的链接。先说一下解决方法。在build.gradle 的defaultConfig 中添加下列内容:

apply plugin: 'com.android.application'
android {
 ...
 defaultConfig {
 ...
 //大兄弟,这边~
 javaCompileOptions {
  annotationProcessorOptions {
  includeCompileClasspath true
  }
 }
 }
}

(二)关于渠道

Error:All flavors must now belong to a named flavor dimension.Learn more at https://d.android.com/r/tools/flavorDimensions-missing-error-message.html

所有的flavors都必须属于同一个风格。官网中文解释:组合多个产品风味

解决方法就是在build.gradle中添加相应的标志的内容。

flavorDimensions("vas", "normal") //介个
 productFlavors {
 vas {
  dimension 'vas'
  buildConfigField "boolean", "ENABL_VAS", "true"
  dimension "vas" //介个
 }
 normal {
  dimension 'normal'
  buildConfigField "boolean", "ENABL_VAS", "false"
  dimension "normal" //还有介个
 }
 }

(三)关于Sugar

3.0Android: Sugar ORM No Such Table Exception

项目中用到Sugar,在3.0AS中老是提示找不到表。其实解决方法很简单,而且浏览的网站也老早就说了该如何处理,但因为我漏掉了关键的点,所以老是没成功。

 

instant run莫勾选

最后!卸载设备上的旧应用,一定要卸载!然后重新运行新的应用就OK了。

(四)关于Manifest merger

Execution failed for task ':AppMain:processVasNormalDebugManifest'.  Manifest merger failed with multiple errors, see logs

这是我第一次知道原来Manifest还有merge冲突的情况出现。有趣有趣。

 

项目目录

我的项目中有一个application和一个library,这两个module都有自己的manifest。原来as最后会帮我们将两个manifest合并起来,所以当二者设置的内容不一致,就会起冲突,merge失败。原理就是这样了。对比一下两个manifest中有什么值是大不同的,修改一下就好了。那要怎么看合并的结果是怎么样的呢?

比如我打开AppMain的manifest,选择下面的Merged Manifest 模式,就可以看到最终合并结果了。

 

AppMain的manifest

我记得自己的情况是:AppMain的manifest我设置android:allowBackup="false",然后FramewFramework的manifest为android:allowBackup="true",然后改成都为false就好了。大家要看自己的实际情况是什么,再做相应的修改。

以上所述是小编给大家介绍的Android Studio3.0.1填坑笔记,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

更多精彩内容其他人还在看

Android中加入名片扫描功能实例代码

这篇文章主要介绍了Android中加入名片扫描功能实例代码的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

Android仿微信发表说说实现拍照、多图上传功能

这篇文章主要为大家详细介绍了Android仿微信发表说说实现拍照、多图上传功能,使用Retrofit2.0技术,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

设置Android系统永不锁屏永不休眠的方法

在进行Android系统开发的时候,有些特定的情况需要设置系统永不锁屏,永不休眠。本篇文章给大家介绍Android 永不锁屏,开机不锁屏,删除设置中休眠时间选项,需要的朋友一起学习吧
收藏 0 赞 0 分享

Android Retrofit 2.0框架上传图片解决方案

这篇文章主要介绍了Android Retrofit 2.0框架上传一张与多张图片解决方案,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Android自定义等待对话框

这篇文章主要为大家详细介绍了Android自定义等待对话框的实现方法,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Android中Window添加View的底层原理

这篇文章主要介绍了Android中Window添加View的底层原理,需要的朋友可以参考下
收藏 0 赞 0 分享

Android调用系统默认浏览器访问的方法

这篇文章主要介绍了Android调用系统默认浏览器访问的方法的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

Android开发退出程序的方法汇总

Android程序有很多Activity,比如说主窗口A,调用了子窗口B,子窗口B又调用子窗口C,back返回子窗口B后,在B中如何关闭整个Android应用程序呢? 下面脚本之家小编就给大家介绍android开发退出程序的几种方法,感兴趣的朋友参考下吧
收藏 0 赞 0 分享

Android程序开发中单选按钮(RadioGroup)的使用详解

在android程序开发中,无论是单选按钮还是多选按钮都非常的常见,接下来通过本文给大家介绍Android程序开发中单选按钮(RadioGroup)的使用,需要的朋友参考下吧
收藏 0 赞 0 分享

Android实现仿网易今日头条等自定义频道listview 或者grideview等item上移到另一个view中

这篇文章主要介绍了Android实现仿网易今日头条等自定义频道listview 或者grideview等item上移到另一个view中 的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多