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

封装带分类的RecyclerViewAdapter UniversalTypeRecyclerView

UniversalAdapter这是封装的带分类Recyclerview的Adapter,主要解决项目中分类列表繁琐的重复劳动。不影响Recyclerview或其他封装的上拉下拉Recyclerview的正常使用只需写一个继承UniversalAdapter的adapter支持分类和子项部分的自定义布局数据类需实现OnTypeList接口数据结构JSON示例[ { "title&qu
954 人浏览
androidproject

Android GridPager组件,短短几行代码即可实现首页分类多页展示

GridPagerGridPager组件:ViewPager结合GridView,轻松实现类似美团首页分类多页展示。也可用于表情面板的展示。 链式调用,属性配置,几行代码轻松搞定。① 应用的首页经常需要用到这样的分类多页展示的效果,还有些消息输入框需要这样的表情面板。② 既然是常用的,作为懒惰的我,肯定不会每次都去写一遍。网上也找了很多类似的例子,但始终不是我想要的简洁接入使用的方式。要么就是加载
949 人浏览
android01

Android源码解析(八)-- Zygote进程启动流程

大家都知道android系统的Zygote进程是所有的android进程的父进程,包括SystemServer和各种应用进程都是通过Zygote进程fork出来的。Zygote(孵化)进程相当于是android系统的根进程,后面所有的进程都是通过这个进程fork出来的,而Zygote进程则是通过linux系统的init进程启动的,也就是说,android系统中各种进程的启动方式init进程 --&
948 人浏览
SuperBig

Android Service详解(五)---绑定服务BoundService详解之AIDL的使用

一、什么是AIDLAIDL(Android Interface Definition Language)安卓接口定义语言二、为什么使用AIDL呢?如果将Service变成远程Service的话,使用扩展的Binder进行通信会报错:这是由于在Bind Service按钮的点击事件里面我们会让MainActivity和MyService建立关联,但是目前MyService已经是一个远程Service
948 人浏览
android

全国-城市-百度地图中心点坐标

1 121.487899486,31.24916171 上海-上海市2 100.092612914,23.8878061038 云南省-临沧市3 100.229628399,26.8753510895 云南省-丽江市4 99.1779956133,25.1204891962 云南省-保山市5 100.223674789,25.5968996394 云南省-大理白族自治州6 98.589434287
947 人浏览
android01

Android产品研发(五)-- 多渠道打包

国内的Android开发者还是很苦逼的,由于众所周知的原因,google play无法再国内打开,所以android系的应用市场,群雄争霸,而后果就是国内存在着有众多的应用市场,产品在不同的渠道可能有这不同的统计需求,为此android开发人员需要为每个应用市场发布一个安装包,这里就涉及到了android的多渠道打包。本文主要讲解的就是几种主流的多渠道打包方式,以及其优劣势。通过配置gradle脚
946 人浏览
android01

Android产品研发(十六)-- 开发者选项

上一篇文章中我们讲解了android中内存对象的序列化方式。由于android开发涉及到不同Activity的数据传递,对于基本数据类型数据的传递是没有问题的,但是一旦涉及到复杂数据类型,就需要将数据序列化以便传输,在文章中我们主要讲解了两种数据序列化的方式:实现Serializable接口和实现Parcelable接口,同时也比较了它们各自的优缺点和实现方式。具体关于内存对象序列化方面的知识可参
945 人浏览
cnbzlj

android 获取文件夹下的所有文件

在做工作时,我们经常需要遍历所有一个文件夹下的所有文件夹,发现其实也很简单。直接上代码/*读取输入的某个文件夹中所有的txt文件 * 显示文件名、文件内容 * */ import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.IOExce
939 人浏览
SuperBig

Android Service详解(三)---IntentService

这是第三篇文章主要讲的是IntentService的使用一、Service的耗时操作如何解决呢?不管是何种Service,它默认都是在应用程序的主线程(亦即UI线程)中运行的。所以,如果你的Service将要运行非常耗时或者可能被阻塞的操作时,你的应用程序将会被挂起,甚至会出现ANR错误。为了避免这一问题,你应该在Service中重新启动一个新的线程来进行这些操作。现有两种方法大家参考:① 直接在
933 人浏览
cheng

Android Dialog点击返回键不消失

在开发过程中我们经常需要各种对话框,使用最多的应该就是Dialog;面对不同的需求,可能需要不同的效果。1,点击返回键,不关闭Dialog// 默认为 true,为 false 时表示不可取消 mDialog.setCancelable(false);
923 人浏览
android

Glide最新版V4使用指南

概述Glide是一个Android的图片加载和缓存库,它主要专注于大量图片的流畅加载,Glide几乎可以胜任任何你需要使用到图片从网络拉取,压缩,显示的场景。本文主要基于Glide4.0版本介绍其基本使用方法。1 集成Github地址: https://github.com/bumptech/gliderepositories{ mavenCentral() maven{url'htt
922 人浏览
android

Android中EditText常用属性设置

EditText继承关系:View–>TextView–>EditText常用属性如下:android:layout_gravity="center_vertical"//设置控件显示的位置:默认top,这里居中显示,还有bottom android:background="@android:drawable/edit_text"这个属性,
919 人浏览
android01

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

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

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

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

实况天气接口文档(1天) - 3小时更新一次

实况天气接口文档(1天) - 3小时更新一次声明: v1七日,v6实况天气接口无需注册,永久免费,请放心使用! (仅限于个人非商业用途, 日限5万次)商用请付费, 以便获得更快的更新频率和稳定性! API地址GET https://www.tianqiapi.com/api/?version=v6 GET参数 参数 类型 必填 备注
908 人浏览
android

Android 嵌套RecyclerView禁止滑动事件

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

Android EditText 实现软键盘搜索按钮

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

Android源码解析(十三)-- apk安装流程

上一篇文章中给大家分析了一下android系统启动之后调用PackageManagerService服务并解析系统特定目录,解析apk文件并安装的过程,这个安装过期实际上是没有图形界面的,底层调用的是我们平时比较熟悉的adb命令,那么我们平时安装apk文件的时候大部分是都过图形界面安装的,那么这种方式安装apk具体的流程是怎样的呢?下面我们就来具体看一下apk的具体安装过程,相信大家都知道如果我们
900 人浏览
android

Android-string.xml动态替换文本

需求:我是做Android开发的,工作3年了。这段字符串中,Android和3需要动态替换。在string.xml中定义:<stringname="demo">我是做%1$s开发的,工作%2$d了。</string>在程序中使用:Stringinput=getResources().getString(R.string.demo); Stringoup
897 人浏览
android01

Android产品研发(九)-- 较少App网络传输协议

上一篇文章中我们讲解了App的数据统计,其主要分为两种:使用第三方服务统计和自身实现数据统计。一般而言我们使用第三方统计服务已经可以很好的满足我们的也无需求了,只是部分数据敏感性App,可能自身实现数据统计服务是一个更好的选择。而本文中将要介绍的是App端的网络传输协议。那么这里首先需要明确一点的是什么是网络传输协议呢?好吧,这里首先套用一段百度百科的定义:网络传输协议或简称为传送协议(Commu
895 人浏览