Android开发( 右侧选择分类 )
android

Google推荐的图片加载库Glide介绍

在泰国举行的谷歌开发者论坛上,谷歌为我们介绍了一个名叫 Glide 的图片加载库,作者是bumptech。这个库被广泛的运用在google的开源项目中,包括2014年google I/O大会上发布的官方app。它的成功让我非常感兴趣。我花了一整晚的时间把玩,决定分享一些自己的经验。在开始之前我想说,Glide和Picasso有90%的相似度,准确的说,就是Picasso的克隆版本。但是在细节上还是
3725 人浏览
android

Android 嵌套RecyclerView禁止滑动事件

//禁用滑动事件 recyclerview.setNestedScrollingEnabled(false)
3720 人浏览
android01

Android源码解析(十)-- Launcher启动流程

Launcher程序就是我们平时看到的桌面程序,它其实也是一个android应用程序,只不过这个应用程序是系统默认第一个启动的应用程序,这里我们就简单的分析一下Launcher应用的启动流程。不同的手机厂商定制android操作系统的时候都会更改Launcher的源代码,我们这里以android23的源码为例大致的分析一下Launcher的启动流程。通过上一篇文章,我们知道SystemServer
3695 人浏览
android00

Error:Execution failed for task ':app:compileDebugAidl'. > aidl is missing(Android Studio编译错误)

今天下载了一个1.2.1.1版本的Android Studio,使用VPN更新好SDK之后就新建了一个hello world工程测试一下环境,然后就出现以下错误:Error:Execution failed for task ':app:compileDebugAidl'. > aidl is missing 什么情况?全新安装的环境也有错误?Google发布这个工具时没有测试好吗?没搞
3678 人浏览
android00

tools:text和android:text

安卓开发中,在写布局代码xml的时候,如果想看到运行之后才能看到的布局效果,但又不想动不动就把应用跑起来。就可以用到tools这个命名空间了。tools命名空间比较特别。该命名空间可以覆盖组件的任何属性,以便在Android Studio预览中进行不同的展示。而,应用运行时,所有tools打头的属性都会被忽略,上面的文字不会显示出来。真的很方便!例子如下:<TextView and
3675 人浏览
android

Android EditText 实现软键盘搜索按钮

记录一下如何把软键盘的回车按键变成搜索按键这个估计大部分人也经常用的到这个直接xml文件设置 EditText 三个属性android:imeOptions="actionSearch" android:singleLine="true" android:maxLines="1"网上有些直接用 android:imeOptions="actionSearch"这样是不够的 而 android:
3674 人浏览
kotlin

kotlin语法习惯

一些在 Kotlin 中广泛使用的语法习惯,如果你有更喜欢的语法习惯或者风格,建一个 pull request 贡献给我们吧!创建 DTOs(POJOs/POCOs)data class Customer(val name: String, val email: String) 会为 Customer 类提供以下功能:所有属性的 getters (对于 var 定义的还有 setters)equa
3672 人浏览
android

Could not find com.android.tools.build:aapt2:3.2.1-4818971.

Could not find com.android.tools.build:aapt2:3.2.1-4818971.android studio 升级到了3.0 取消了apt 报了这个错Could not find com.android.tools.build:aapt2:3.2.0-alpha14-4748712.Searched in the following locations: fi
3652 人浏览
android

Android 常用控件 - View 属性大全

(1)视图透明度,值在0-1之间,0为完全透明,1为完全不透明 android:alpha setAlpha(float) (2)视图背景 android:background setBackgroundResource(int) (3)视图是否可点击 android:clickable setClickable(boolean) (4)设置view的备注说明,作为一种辅助功能提
3649 人浏览
android

Universal-Image-Loader,android-Volley,Picasso、Fresco和Glide五大Android开源组件加载网络图片的优缺点比较

在Android中的加载网络图片是一件十分令人头疼的事情,在网上有着许多关于加载网络图片的开源库,可以让我们十分方便的加载网络图片。在这里我主要介绍一下我自己在使用Volley, Picasso, Universal-Imageloader的一些使用的感悟。以及最基本的用法介绍。 一、android-Volley 给ImageView设置图片源// imageView是一个Image
3642 人浏览
android01

Android源码解析(十四)-- Activity启动流程

好吧,终于要开始讲解Activity的启动流程了,Activity的启动流程相对复杂一下,涉及到了Activity中的生命周期方法,涉及到了Android体系的CS模式,涉及到了Android中进程通讯Binder机制等等,首先介绍一下Activity,这里引用一下Android guide中对Activity的介绍:An activity represents a single screen w
3638 人浏览
android01

Android产品研发(十三)-- App轮训操作

上一篇文章中我们讲解了android app实现长连接的几种方式,各自的优缺点以及具体的实现,一般而言使用第三方的推送服务已经可以满足了基本的业务需求,当然了若是对技术有追求的可以通过NIO或者是MINA实现自身的长连接服务,但是自己实现的长连接服务一来比较复杂耗时比较多,而且可能过程中有许多坑要填,一般而言推荐使用第三方的推送服务,稳定简单,具体管理长连接部分的模块可参考:android产品研发
3629 人浏览
android00

Android 清除glide缓存

清除glide的缓存 在进Activity时的onCreate()里执行缓存清理1, 清除硬盘缓存Glide.get(this).clearDiskCache();2,清除内存缓存Glide.get(this).clearMemory();
3628 人浏览
android01

Android产品研发(二十)-- 代码Review

上一篇文章中我们讲解了如何在android studio中进行单元测试。实际开发过程中有一些功能性的需求,比如测试工具类,测试数据存储等测试工作,如果还是通过重复执行apk文件的编译,安装,运行等会浪费大量的时间,而这些功能与android的开发环境无太大的关系,我们完全可以使用单元测试来执行。android studio中默认是支持进行单元测试的,并提供了获取Context等系统对象的API,我
3620 人浏览
android01

Android产品研发(十八)-- WebView问题集锦

上一篇文章中我们介绍了hybrid开发相关的知识。重点介绍了hybrid开发的概念,hybrid开发的作用,android中如何实现hybrid开发,android中实现hybrid开发的例子,以及产品开发中hybrid开发实践等,通过对以上这些概念的介绍我们对hybrid开发应该已经有了大概的了解,更多具体的内容可参考我的:android产品研发(十七)-->Hybrid开发本文中我们将介
3618 人浏览
android01

Android源码解析(十八)-- Activity布局绘制流程

这篇文章是承接上一篇文章(Android布局加载流程:android源码解析(十七)-->Activity布局加载流程)来写的,大家都知道Activity在Android体系中扮演者一个界面展示的角色,通过上一篇文章的分析,我们知道Activity是通过Window来控制界面的展示的,一个Window对象就是一个窗口对象,而每个Activity中都有一个相应的Window对象,所以说一个Ac
3610 人浏览
android00

android中?attr/**与@drawable/**或@color/**等的区别

今天在写一个Demo的时候,突然遇到?attr/colorPrimary这个用法,我苦思冥想,最终还搬出了Android源码,终于知道了意思,暂且记下来,作为备忘录吧。一、?attr/** 这个google叫预定义样式 这个是用在多主题时的场景,属性值会随着主题而改变。但并不是一上来就可以用的,必须做足以下准备工作:1,如果是自定义控件,请在style.xml中或attrs.xml中声明属性:&l
3582 人浏览
android01

Android产品研发(十一)-- 应用跳转协议scheme

上一篇文章中我们讲解了在Android App的实际开发中,尽量不在静态变量、全局变量中保存数据,这是因为App的进程可能是不安全的,在部分手机中其有可能被系统杀死,从而造成静态全局变量重新初始化。而这时候App当前页面的Activity还会被保存在内存中,从而造成App并没有被重启的假象,但是这只是显示的页面没有被杀死,而进程实际上是被重新启动了的。这时候在使用已被重新初始化的静态变量就会发生一
3550 人浏览
android

Android webview https 链接中加载http图片,加载不出

问题:链接是https的,但是里面的图片是http的,所以导致图片加载不出。解决:在webview中加上代码webView.getSettings().setJavaScriptEnabled(true); // 启用js webView.getSettings().setBlockNetworkImage(false); // 解决图片不显示 if(Build.VERSION.SDK_INT
3540 人浏览
androidproject

Github flutter自定义波浪view

flutter自定义波浪viewvoidmain()=>runApp(WaveWidget( bgColor:Colors.lightBlue, //imageProvider:AssetImage('assets/pic/ic_headimg.png'), //imgSize:Size(50.0,0.0), size:Size(300.0,500.0), ));
3532 人浏览