美文网首页
那些年我们学Android的小零碎

那些年我们学Android的小零碎

作者: 做梦枯岛醒 | 来源:发表于2017-09-14 14:59 被阅读616次

2017年11月1日17:33:04更新

一.构建

1.maven 添加多个url

在项目构建的过程中,我们经常会遇到依赖很多库的情况,那么添加多个url的解决办法就在下面啦。

allprojects {
    repositories {
        jcenter()
        maven { url "https://raw.github.com/bmob/bmob-android-sdk/master" }
        maven { url "https://jitpack.io" }
    }
}

二.多媒体

1.从imageview中获得bitmap的方法

经常会遇到从view中获取bitmap的问题,那么这里提供一个简单的方法

Bitmap bm =((BitmapDrawable) ((ImageView) image).getDrawable()).getBitmap(); 

三.Material Design

1.水波纹

水波是个好东西,点击一下会有很灵动的效果,那么在Android5.0上怎么实现呢?其实只需要在空间上添加一个属性

android:background="?android:attr/selectableItemBackground"

四.编译错误

1.导入文件重复

As error

无论是在构建debug版本或者是构建release版本都可能出现的错误,根据字面意思可以知道就是导入的文件重复,那么第一反应就是删一份,那么我们可以看看他们都在哪里,(Double Shift快捷键搜索或者手动打开lib查找)

文件查找

那么找到了之后可以尝试删除,如果删除之后又复现,可以尝试build.gradle里查看是否有冲突的导入,删掉依赖即可。

2.瓜皮问题?

描述:IDE突然报错

//这里没来的及截图
 Error:Execution failed for task ':app:processDebugResources'. > No slave process to process jobs, aborting

查询多处无果,就连StackOverflow都没有……失望,重启AS,我擦!好了……真的是无语了。

3.找不到依赖项

描述:刚升级As3.0,新建了一个工程,结果出现一大片错误……不过错误的种类都是一样的,如下

Error:Unable to resolve dependency for ':app@debug/compileClasspath':
  Could not resolve project :library.
Error:Unable to resolve dependency for ':app@release/compileClasspath':
  Could not resolve project :library.

查询国内外网站都说是As3.0新配置的坑,但是又没有一个能解决的方法,包括Android 开发者官网的方法也是看的一脸懵逼,后来也是在StackOverflow上面看到另一个问题的帖子,觉得他的问题跟我的很像,就抱着试试看的态度改了一下,然后就出现楼上那个瓜皮问题,重启全部搞定。

那么改的是一个设置项 File->Setting->Gradle->offline Work勾去掉。
这里主要是本地工作的原因,导致依赖项没有下载或者更新。

同时在As3.0中我们可以使用下面的依赖方法

//官方依赖
 implementation 'com.android.support:appcompat-v7:26.1.0'
//第三方依赖
 api 'com.airbnb.android:lottie:2.2.5'

当然,使用complie应该也是没问题的,具体可以看上面的url。

4.导入项目问题

解决AndroidStudio导入项目在 Building gradle project info 一直卡住

5.Gradle问题(同4)

当我们能进入项目,但是还是不能编译运行,我们可以考虑用于一个默认的gradler,在setting中选择Use local gradle distribution,然后选择Gradle 的目录即可,这样就不会每次根据项目中\gradle\wrapper\gradle-wrapper.properties 文件下载指定版本的gradle。而是使用指定的gradle

五.代码错误

1.ButterKnife错误

代码.PNG

如上图代码,使用了官方插件导入bind,看似不会报错,但是实际上会报下面的错误

错误

找不到控件,研究源码可以看到,传入的this作为目标,进行布局获取,所以必须把butterknife.bind放在setContentView后面,但是代码确实是这么写的,那么哪里出问题了呢,看报错log下面部分(图未截完整),是该类父类里调用了butterknife.bind这句代码,而父类不存在布局加载,所以导致空布局。

2.Github错误

将项目Share到Github的时候,虽然连得通,但是提示

git error setting certificate verify locations

这个错误是系统证书的问题,系统判断到这个行为会造成不良影响,所以进行了阻止,只要设置跳过SSL证书验证就可以了,打开gitbash,然后输入

git config --global http.sslVerify false

此时导入就没问题了。

六.UI问题

1.桌面小部件测试时候出现正在加载但是就是不出来

遇到这种情况最好检查一下布局中,有没有用到Google官方公布的在小部件中不支持的控件,如editview,cardview等v7控件,如果有只能寻找替代品了,这样认识最快的解决方案了。

相关文章

  • 那些年我们学Android的小零碎

    2017年11月1日17:33:04更新 一.构建 1.maven 添加多个url 在项目构建的过程中,我们经常会...

  • 那些年那些零碎事儿

    走过岁月,才有阅历尘事的从容和智慧,才有对生活深刻的理解,才有对世界崭新的感悟。 一一...

  • 那些年,我们的小幸福

    每天都会打开简书看看,简书丰富了我的生活。但是从来没有发过一篇东西,偶尔看到有人关注我,或许是因为我的名字...

  • 我们的那些年

    我们的那些年 那些年 学校漫天飞舞的银杏叶 成了枯燥生活里 最美的风景 那些年 学...

  • 我们之间的那些零碎事儿

    (一)抉择“我不吃兔子肉,”兔妹妹说,“因为我属兔。” “我只吃兔子肉,”另一个兔妹妹说,“因为我属兔。” 两个人...

  • 那些年我们看过的小言

    被人要求看一篇罗莉总裁文,然后给评,一看字数“五千字喷你妹啊!” 结果还是没忍住 L:说是买断的,主谓宾都傻傻分不...

  • 那些年,我们传过的“小纸条”

    “匆匆那年我们 见过太少世面 只爱看同一张脸 那么莫名其妙 那么讨人欢喜 闹起来又太讨厌……” 听到这首歌又把我的...

  • android面试,那些年我们遗忘的基础

    1.什么是Activity?问的不太多,说点有深度的 四大组件之一,一般的,一个用户交互界面对应一个activit...

  • 那些年,我们的那些年

    那些年,我们最青春勃发,最幼稚的那些年。 那些年,你从不吃辣,喜欢的人知道后恶作剧般的整你给你的饭中放入惨绝人寰多...

  • 那些年我们在“小炮楼”

    我们住的这条小巷里,大都聚集着来自外乡的生意人。 所有的楼房都是私人建的“小炮楼”,面积或大或小,楼层或高或低。每...

网友评论

      本文标题:那些年我们学Android的小零碎

      本文链接:https://www.haomeiwen.com/subject/oujdsxtx.html