Android
文章平均质量分 80
yao891203
这个作者很懒,什么都没留下…
展开
-
MQTT协议实现Android聊天功能
Android客户端实现消息推送无外乎以下几种方式:1、轮询:客户端通过定时机制往服务端获取消息,这种方式太傻逼,不算真正的推送,费流量。2、客户端和服务端建立长久连接:这种方式才是真正的推送,由服务端通过连接的通道主动推送给客户端,常用的有xmpp和mqtt协议。MQTT协议MQTT协议是由IBM提出的基于发布/订阅模型的消息传输协议,相比于XMPP,它显得非常轻量小巧,协议内容...原创 2018-12-18 16:31:41 · 2927 阅读 · 2 评论 -
Android开发资源分享合集
最近整理了一下自己收藏的一些Android相关的资料,特意分享给大家1、Android开发进阶从小工到专家链接:https://pan.baidu.com/s/12JlDj1-OsEMlJA_Qhg8cKw提取码:xee92、Android系统原理与开发要点链接:https://pan.baidu.com/s/1sshBb4Id0zkyHpxx_M77dw提取码:51jy3、Android编程权威指南链接:https://pan.baidu.com/s/19Om6...原创 2020-10-27 16:04:37 · 3934 阅读 · 0 评论 -
自定义view
在实际的开发过程中,Android系统自带的控件往往满足不了我们的需求,这就需要我们具备自定义控件的能力。一般来说,我们通常会有以下几种方法来实现:1、继承原生控件进行扩展2、组合原生几种控件3、继承view或者viewGroup一、view的绘制流程在学习自定义view的时候,首先我们要搞清楚的就是Android view的绘制大致流程,了解相关函数的作用View的绘制基本由measure()、layout()、draw()这个三个函数完成第一步:OnMeasure():测量视原创 2021-03-22 17:03:06 · 844 阅读 · 0 评论 -
Android自定义跑马灯实现(SurfaceView)
按道理跑马灯功能Android已经实现了,但自定义的跑马灯功能是通过SurfaceView来实现,使用子线程来更新视图,性能更好,跑马灯的启动和停止都是由自己控制,更加灵活。public class MarqueeTextSurfaceView extends SurfaceView implements SurfaceHolder.Callback { private ...原创 2015-01-19 14:45:07 · 678 阅读 · 0 评论 -
Android实现延迟退出主界面功能
想必大家在平常使用Android应用的时候,经常会看到退出应用时,需要点击两下才能退出的功能,这就是延迟退出功能、防止用户误操作。实现代码其实很简单,主要是通过handler消息实现:public class MainActivity extends FragmentActivity { private boolean isExit = false; @Suppress...2015-01-19 10:41:11 · 858 阅读 · 0 评论 -
Android新闻客户端开发
一、前言 新闻客户端相信大家都用过,很多开发者对于新闻客户端的主界面很感兴趣,想自己开发一个。 二、源码 主要是使用了SlidingMenu这样一个自定义控件,实现左边和右边都能滑动出菜单界面,而主界面是使用的viewFlipper控件。滑动的菜单和主界面都为fragment1、SlidingMenu控件代码:public class SlidingM...2015-01-19 10:36:22 · 285 阅读 · 0 评论 -
Android系统应用隐藏和应用禁止卸载
1、应用隐藏与禁用Android设置中的应用管理器提供了一个功能,就是【应用停用】功能,这是针对某些系统应用的。当应用停用之后,应用的图标会被隐藏,但apk还是存在,不会删除,核心接口就是PackageManager的setComponentEnabledSetting(ComponentName, int, int)方法具体代码可以查看设置模块:com.android.sett...原创 2016-07-08 14:30:46 · 6835 阅读 · 1 评论 -
Android proguard 详解
原文地址:http://www.androidchina.net/4888.html简介Java代码是非常容易反编译的。为了很好的保护Java源代码,我们往往会对编译好的class文件进行混淆处理。ProGuard是一个混淆代码的开源项目。它的主要作用就是混淆,当然它还能对字节码进行缩减体积、优化等,但那些对于我们来说都算是次要的功能。官网网址是:http://progua...原创 2016-05-23 19:16:45 · 219 阅读 · 0 评论 -
Android编译系统过程研究
Android编译系统过程研究大家平时用虚拟机编译Android系统源码的时候,无非就是下面三个步骤:<!--[if !supportLists]-->1、<!--[endif]-->执行sourcebuild/envsetup.sh命令<!--[if !supportLists]-->2、<!--[endif]-->执行lunch...原创 2016-05-20 10:49:08 · 1247 阅读 · 0 评论 -
使用ant打包Android应用
1、安装配置antAnt是基于Java的一个编译打包工具,下载地址为:http://ant.apache.org/bindownload.cgi下载解压之后,需要为ant配置环境变量,如下图: 然后,在Path中添加 ;%ANT_HOME%/bin;%ANT_HOME%/lib;配置完成之后,打开Dos窗口,输入命令ant,若如下所示,则配置成功 2、使用a...原创 2016-05-17 10:41:46 · 156 阅读 · 0 评论 -
【转载】Android日常开发总结的技术经验60条
1. 全部Activity可继承自BaseActivity,便于统一风格与处理公共事件,构建对话框统一构建器的建立,万一需要整体变动,一处修改到处有效。2. 数据库表段字段常量和SQL逻辑分离,更清晰,建议使用Lite系列框架LiteOrm库,超级清晰且重心可以放在业务上不用关心数据库细节。3. 全局变量放全局类中,模块私有放自己的管理类中,让常量清晰且集中.4. 不要相信庞大的管...原创 2016-05-17 09:43:34 · 128 阅读 · 0 评论 -
【转载】深入分析Android的Bitmap
在日常开发中,可以说和Bitmap低头不见抬头见,基本上每个应用都会直接或间接的用到,而这里面又涉及到大量的相关知识。所以这里把Bitmap的常用知识做个梳理,限于经验和能力,不做太深入的分析。1. 区别decodeResource()和decodeFile()这里的区别不是指方法名和参数的区别,而是对于解码后图片尺寸在处理上的区别:decodeFile()用于读取SD卡上的图,...原创 2016-05-16 15:21:30 · 133 阅读 · 0 评论 -
【转载】Android应用开发必备的20条技能
有些andorid开发人员感觉很迷茫,接下来该去看系统源码还是继续做应用,但是感觉每天仅仅实在画UI和调用MobileAPI处理JSON,没有技术上升的空间。下面是包建强老师的《APP研发录》当中列举的20条需要精通的技能点看看你是否完全掌握:1)Activity相关 App应用开发,以Activity使用最多,设计LaunchMode、onSaveInstanceState、生命周期...原创 2016-05-16 14:55:57 · 114 阅读 · 0 评论 -
【转载】一种快速毛玻璃虚化效果实现
原文:http://www.androidchina.net/4626.html 在iOS设备上我们随处可见毛玻璃效果,而且最近越来越多的场合应用到了这种美观的虚化效果,包括本人的一个开源项目BlureImageView也是受此启发。所以,恰到好处的虚化效果能很好的改善用户体验,而且也能让你的app显得更加优雅。不过,我们目前在android上很少见到毛玻璃效果,我认为很重要的原因是...原创 2016-05-16 14:48:33 · 223 阅读 · 0 评论 -
【转载】40条Android开发优化建议
原文:http://www.androidchina.net/4849.html 以下是开始Android编程的好方法:1、找一些与你想开发的功能类似的代码2、调整它,尝试让它变成你想要的3、回顾开发中遇到的问题4、使用StackOverflow来解决遇到的问题对每个你想实现的东西重复上述过程。采用这种方法能够激励你,因为你在保持不断迭代更新,在这个过程里面你会学到很...原创 2016-05-16 13:50:48 · 179 阅读 · 0 评论 -
Android自定义ProgressBar实现
这里介绍的自定义ProgressBar主要是动态圆形进度条,主要用于某个长时间操作的等待过程,比如用户点击一个按钮发起一个网络请求,获取相关数据并显示在界面。这个过程是一个长时间的操作,开始到结束的时间无法固定,和网络状况和服务器响应等待因素相关,在这个过程中,就必须有一个进度条的效果告诉用户需要等待。进度条的样式定义:(drawable/rotate_progress.xml)&l...原创 2016-05-13 15:44:14 · 128 阅读 · 0 评论 -
Android数据缓存处理
平时我们开发一个Android客户端的时候,谈到缓存处理更多的是关于图片的缓存,其实我们在开发类似于新闻客户端的时候,还需要考虑数据的缓存处理。通过数据的缓存处理,我们可以减少服务端的压力,减少用户的流量消耗。 实现的方式主要是将客户端调用接口获取的列表数据缓存到相应目录下,以文件的形式保存下来,当下次进入界面,首先去缓存目录下找缓存文件,如果没有缓存文件,则直接调用...2016-05-13 15:31:36 · 415 阅读 · 0 评论 -
Android沉浸式状态栏的实现
沉浸式状态栏需要Android4.4以上版本才支持第一种方式:if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { // 透明状态栏 getWindow().addFlags( WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); ...2016-05-13 15:12:40 · 187 阅读 · 0 评论 -
轮播图的实现
平时开发软件的时候,经常会碰到轮播图这样的需求,下面介绍一种轮播图的实现方式:我把轮播图写成了一个自定义控件,需要集成Android Support Library v4包和谷歌推荐的一个图片加载库Glide:import java.lang.reflect.Field;import java.util.ArrayList;import java.util.List;...2016-05-13 15:01:20 · 143 阅读 · 0 评论 -
Android窗口小部件开发
1、App widget介绍App Widget是应用程序窗口小部件(Widget)是微型的应用程序视图,它可以被嵌入到其它应用程序中(比如桌面)并接收周期性的更新。你可以通过一个App Widget Provider来发布一个Widget。2、AppWidgetProviderAppWidgetProvider继承自 BroadcastReceiver,它能接收 widg...原创 2016-05-11 14:04:11 · 275 阅读 · 0 评论 -
Android使用自定义字体
在平时的开发中,我们经常会需要使用自定义字体,其实Android textView控件更换字体很简单。1、将自定义字体放置到工程的assets下的fonts文件夹中,字体格式为tff。 2、textView选择自定义字体代码如下:String content="test";mText.setText(content);Typeface tff = Typeface.cr...原创 2015-02-10 15:53:28 · 130 阅读 · 0 评论