![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android技术篇
文章平均质量分 63
I_托尼
这个作者很懒,什么都没留下…
展开
-
android点滴积累
Fragment 踩过的坑(动画,重叠,降低耦合,转场动画,状态监听)https://gold.xitu.io/post/58670e05ac502e006d65aa72android RecyclerView 使用解析http://blog.csdn.net/lmj623565791/article/details/45059587android博客周刊h原创 2017-01-04 16:23:35 · 771 阅读 · 0 评论 -
Fresco-加载图片基础[详细图解Fresco的使用]
Fresco简单的使用—SimpleDraweeView转自:http://blog.csdn.net/y1scp/article/details/49245535百学须先立志—学前须知:在我们平时加载图片(不管是下载还是加载本地图片…..)的时候,我们经常会遇到这样一个需求,那就是当图片正在加载时应该呈现正在加载时的图像,当图片加载失败时应该呈现图片加载时的图像,当我们重新加转载 2016-08-25 14:39:54 · 2522 阅读 · 0 评论 -
让我们来聊一聊插件化吧---高深莫测
现如今插件化的思想和应用在Android上越来越多了,各式各样的方案也是层出不穷,这篇文章旨在告诉大家插件化的核心思想是什么,又有什么样的实现方式。前言首先,这篇文章的题目为什么不沿用我之前xxxx!xxxxx这样的风格呢,因为我觉得这样风格太中二了。。其次,我写这篇文章的原因是因为前些时候看到有大神写了一篇文章Android 插件化的 过去 现在 未来,里面的内容很不错,特别转载 2016-08-25 10:32:55 · 1337 阅读 · 0 评论 -
协议层
网络通信机制网络由下往上分为:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。IP协议对应于网络层,TCP协议对应于传输层,而HTTP协议对应于应用层,三者从本质上来说没有可比性,socket则是对TCP/IP协议的封装和应用。也可以说,TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据。 TCP/IP协议网络编程的目的就是直接或间转载 2016-06-14 10:50:05 · 1387 阅读 · 0 评论 -
hashMap的实现原理解析
聊到HashMap我们通常会联系到HashTable,那么就让先来说一下他们们的区别。下面有些是看别人分享的路径是:http://blog.csdn.net/vking_wang/article/details/14166593 加上自己的总结。HashMap和Hashtable的区别HashMap和Hashtable都实现了Map接口,但决定用哪一个之原创 2016-09-01 14:15:43 · 554 阅读 · 0 评论 -
Android应用AsyncTask处理机制详解及源码分析
工匠若水 http://blog.csdn.net/yanbober1 背景当使用线程和Handler组合实现异步处理时,当每次执行耗时操作都创建一条新线程进行处理,性能开销会比较大。为了提高性能我们使用AsyncTask实现异步处理(其实也是线程和handler组合实现),因为其内部使用了java提供的线程池技术,有效的降低了线程创建数量及限定了同时运行的线程数,还有一些原创 2016-09-02 09:50:07 · 634 阅读 · 0 评论 -
Android+NDK
Android开发文档 Android中文API开源代码 几乎每天都有更新 23code 更新的不是特别频繁,但还是不错 开源项目 这个是Github上比较经典的 MaterialDesign 这个MaterialDesign比较多的开源项目 eoe eoe论坛 安卓巴士论坛 安卓巴士论坛 网友收集整理Github项原创 2016-08-11 13:57:59 · 457 阅读 · 0 评论 -
图片三级缓存仅适配器
public class baseAdapter extends BaseAdapter{ //创建一个list集合用于接受构造函数传来的list数据的集合 private List list = new ArrayList(); //用于接受传来的context上下文对象 private Context context原创 2016-08-08 12:31:12 · 413 阅读 · 0 评论 -
Fresco 与 Picasso 、Glide 的比较
比较Picasso、Glide 和 Fresco 三种图片加载库比较 Picasso 与 Glide总体来说二者极为相似,有着近乎相同的 API 的使用风格,但 Glide 在缓存策略和加载 gif 方面略胜一筹。基础Glide 和 Picasso 非常相似,Glide 加载图片的方式和 Picasso 如出一辙。虽然两者看起来一样,但 Glid原创 2016-08-26 11:21:06 · 9183 阅读 · 2 评论 -
Android客户端和服务器以TCP&&UDP方式互通之Socket通信原理
一、Socket通信简介 Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信。两者的最大差异在于,http连接使用的是“请求—响应方式”,即在请求时建立连接通道,当客户端向服务器发送请求后,服务器端才能向客户端返回数据。而Socket通信则是在双方建立起连接后就可以直接进行数据的传输,在连接时可实现信息的主动推送,而不需要每次由客户端想服务器发送请求。 那么原创 2016-09-19 15:30:37 · 1615 阅读 · 0 评论 -
android高仿微信表情输入与键盘输入(详细实现分析)
http://blog.csdn.net/javazejian/article/details/52126391原创 2016-12-28 10:01:34 · 515 阅读 · 0 评论 -
Android上玩玩Hook:Cydia Substrate实战
了解Hook还没有接触过Hook技术读者一定会对Hook一词感觉到特别的陌生,Hook英文翻译过来就是“钩子”的意思,那我们在什么时候使用这个“钩子”呢?我们知道,在Android操作系统中系统维护着自己的一套事件分发机制。应用程序,包括应用触发事件和后台逻辑处理,也是根据事件流程一步步的向下执行。而“钩子”的意思,就是在事件传送到终点前截获并监控事件的传输,像个钩子勾上事件一样。并且能够转载 2016-12-09 16:35:09 · 562 阅读 · 0 评论 -
Android 7.0 开发者版本
https://developer.android.google.cn/about/versions/nougat/android-7.0.html#tile_api原创 2016-12-08 16:24:11 · 419 阅读 · 0 评论 -
Android无源码调试APK(使用ApkTool和Eclipse ADT)
Android无源码调试APK转载 2016-12-12 09:48:10 · 694 阅读 · 0 评论 -
如何对apk文件进行签名
有没有发现自己重新打包过后的apk程序无法安装到手机上?那是因为你的程序没有签名或者签名不对。下面就简单介绍一下如何对apk文件进行签名。请确保你的机器上已经安装了JDK。1)首先第一步要生成一个签名用的证书,这个可以用Java自带的工具来做进入到JDK安装路径下的bin目录下,或者在环境变量PATH中加入这个目录,然后敲入命令:[cpp] view plain c转载 2016-12-12 09:46:00 · 747 阅读 · 0 评论 -
Android6.0以后,怎样获取当前运行的app
在Android5.0,即Lollipop(api level 21)之前,大家都幸福的使用如下代码来获得当前运行的app,即所谓的top Activity:ActivityManager activityManager = (ActivityManager) this.getSystemService(Context.ACTIVITY_SERVICE);ComponentName cn =原创 2016-08-03 15:35:20 · 14379 阅读 · 0 评论 -
StrictMode的使用之消除卡顿
StrictMode的使用StrictMode用来基于线程或VM设置一些策略, 一旦检测到策略违例, 控制台将输出一些警告,包含一个trace信息展示你的应用在何处出现问题.通常用来检测主线程中的磁盘读写或网络访问等耗时操作.在Application或是Activity的onCreate中开启StrictMode: public void onCre原创 2016-11-17 10:31:37 · 479 阅读 · 0 评论 -
Android访问网络,使用HttpURLConnection还是HttpClient?
原文地址:http://android-developers.blogspot.com/2011/09/androids-http-clients.html大多数的Android应用程序都会使用HTTP协议来发送和接收网络数据,而Android中主要提供了两种方式来进行HTTP操作,HttpURLConnection和HttpClient。这两种方式都支持HTTPS协议、以流的形式进行上传和下载、配原创 2016-11-11 15:19:19 · 413 阅读 · 0 评论 -
Android HTTPS详解
HTTPS原理HTTPS(Hyper Text Transfer Protocol Secure),是一种基于SSL/TLS的HTTP,所有的HTTP数据都是在SSL/TLS协议封装之上进行传输的。HTTPS协议是在HTTP协议的基础上,添加了SSL/TLS握手以及数据加密传输,也属于应用层协议。所以,研究HTTPS协议原理,最终就是研究SSL/TLS协议。不使用SSL/TLS的HTTP通信,就是不转载 2016-11-11 14:13:55 · 620 阅读 · 0 评论 -
对图片做处理的一个的工具类
话不多说直接上代码,一切话都在代码中。package com.example.demo;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;原创 2016-09-21 10:13:55 · 776 阅读 · 0 评论 -
Linux 命令大全完整版
下载地址:http://download.csdn.net/detail/yishifu/9595818原创 2016-08-05 11:36:09 · 663 阅读 · 0 评论 -
AcessibilityService 检测前台任意界面
Android 辅助功能(AccessibilityService) 为我们提供了一系列的事件回调,帮助我们指示一些用户界面的状态变化。 我们可以派生辅助功能类,进而对不同的 AccessibilityEvent 进行处理。同样的,这个服务就可以用来判断当前的前台应用,这就是我所谓的“方法6”。优势AccessibilityService 有非常广泛的 ROM 覆盖,特别是非国产手原创 2016-08-04 19:56:34 · 2478 阅读 · 0 评论 -
android中常用的技巧
这里收集了大家常用的一些Android代码,持续更新中,内容来自自己的平时积累和网络上看到的文章,部分原文地址在最下方。如有错误欢迎指正,如有侵权,请联系我删除。里面可能会有重复内容,请忽略或者提醒我删除。setBackgroundResource(0) 可以移除 View 的背景色Resources.getSystem().getDisplayMetrics().dens转载 2016-08-16 15:55:32 · 1242 阅读 · 0 评论 -
android发送邮件
这里我说的只是一种方法,其实发送邮件的方式有很多。在之前的那个生成excel的项目继续扩展。没看过之前项目的可以先看下:android生成excel。 首先要导入发送邮件的相应jar包,有三个,分别是activation.jar,additional.jar和mail.jar。这些jar包能在后面的工程中找到。如图: 然后写一个发送邮件工具类来写发送邮件的底层代码,先把代码贴出来。转载 2016-08-01 14:47:35 · 504 阅读 · 0 评论 -
android中生成excel
初始化数据首先我们要先造下测试数据,这里我把数据写死在一个常量类Const中,如下:public class Const { public interface OrderInfo{ public static final String[][] orderOne = new String[][] {{ "123", "九龙", "13294352311",转载 2016-08-01 14:45:08 · 516 阅读 · 0 评论 -
Android多屏适配
多屏适配适配原则layout中,最好采用wap_content, fill_parent,dp,可保证在屏幕上有合适的大小;像素单位使用dp, 文字单位使用sp;程序代码中不要出现具体的px;图片应多使用.9.png;使用百分比布局;适配方法查看不同分辨率的设备市场占有率,分析出需要支持的设备分辨率:对不同大小的屏幕提供不同的layout;对不同密度的屏幕提供不同的图片;原创 2016-08-01 13:49:53 · 580 阅读 · 0 评论 -
APP优化(二)
一、降低执行时间这部分包括:缓存、数据存储优化、算法优化、JNI、逻辑优化、需求优化几种优化方式。1.1 缓存缓存分类包括:对象缓存: 减少内存分配网络缓存: 减少网络传输IO缓存: 减少磁盘的读写次数DB缓存: 减少数据库的访问次数Android常用缓存:线程池图片缓存,Sdcard缓存,数据预取缓存(此处需要进一步完成)消息缓存: 消息复用 handler.se转载 2016-08-01 13:42:50 · 512 阅读 · 0 评论 -
APP优化(一)
一、代码优化1. 广播应用程序内部广播通信,优先采用LocalBroadcastManager,安全性更好,运行效率更高。优势:平时常说BroadcastReceiver,采用的是Binder通信方式,这是跨进程的通信方式,系统资源消耗固然更多。而广播LocalBroadcastManager,采用的是Handler通信机制,Handler的实现是应用内的通信方式,所以效率与安全性都更转载 2016-08-01 13:42:01 · 592 阅读 · 0 评论 -
聊一聊Android 6.0的运行时权限
Android 6.0,代号棉花糖,自发布伊始,其主要的特征运行时权限就很受关注。因为这一特征不仅改善了用户对于应用的使用体验,还使得应用开发者在实践开发中需要做出改变。没有深入了解运行时权限的开发者通常会有很多疑问,比如什么是运行时权限,哪些是运行时的权限,我的应用是不是会在6.0系统上各种崩溃呢,如何才能支持运行时权限机制呢。本文讲尝试回答这一些问题,希望读者阅读完成之后,都能找到较为完美转载 2016-08-01 10:23:37 · 496 阅读 · 0 评论 -
ViewPager+Fragment LazyLoad 最优解
ViewPager+Fragment的模式再常见不过了,以国民应用微信为例,假设微信也是ViewPager+Fragment的实现方式,那表现形式上就是一个ViewPager管理了四个Fragment,左右滑动来回切换。但是ViewPager有一个奇葩的特性叫:预加载,比如打开微信,首先看到的是第一个Tab(微信),但事实上第二个Tab(通讯录)已经加载好了。当选择第二个Tab(通讯录),第三个T转载 2016-07-28 16:03:54 · 733 阅读 · 0 评论 -
Linux下/proc目录简介
1. /proc目录Linux 内核提供了一种通过 /proc 文件系统,在运行时访问内核内部数据结构、改变内核设置的机制。proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取proc文原创 2016-08-05 14:57:58 · 292 阅读 · 0 评论 -
链表(Java描述)
引言 使用数组来存储数据的一个缺点在于,数组是静态结构,因此不能很容易地扩展或缩小以适合数据集。对数组进行插入和删除的代价也比较高。本文考虑一种名为链表的数据结构,解决了数组的一些局限性。 链表是一种线性数据结构,每个元素都是一个单独的对象。 链表的每个元素(称之为一个节点)包括两个部分—数据域和指针域(链接到下一个节点)。最后一个节点链接转载 2016-08-02 13:44:50 · 2075 阅读 · 0 评论 -
Android知识
1 Android service相关知识点Android Service完全解析,关于服务你所需知道的一切(上) http://blog.csdn.net/qq_23547831/article/details/41346543Android Service完全解析,关于服务你所需知道的一切(下) http://blog.csdn.net/qq_23547831/article/转载 2016-08-02 16:59:34 · 372 阅读 · 0 评论 -
JavaScript进阶篇
浏览器对象 window对象JavaScript 计时器计时器setInterval()语法:setInterval(代码,交互时间);参数说明:1. 代码:要调用的函数或要执行的代码串。2. 交互时间:周期性执行或调用表达式之间的时间间隔,以毫秒计(1s=1000ms)。返回值:一个可以传递给 clea原创 2016-08-30 19:33:18 · 1537 阅读 · 0 评论 -
LinkedHashMap的实现原理解析
1. LinkedHashMap概述: LinkedHashMap是Map接口的哈希表和链接列表实现,具有可预知的迭代顺序。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 LinkedHashMap实现与HashMap的不同之处在于,后者维护着一个运行于所有条目的双重链接列表。此链接列表定义了迭代顺序,该迭代顺序原创 2016-09-11 16:43:44 · 618 阅读 · 0 评论 -
Android实践之ScrollView中滑动冲突处理
前言在Android开发中,如果是一些简单的布局,都很容易搞定,但是一旦涉及到复杂的页面,特别是为了兼容小屏手机而使用了ScrollView以后,就会出现很多点击事件的冲突,最经典的就是ScrollView中嵌套了ListView。我想大部分刚开始接触Android的同学们都踩到过这个坑,这一篇文章就从最近做的一个项目讲起,然后在过程中提供一些解决冲突的思路。项目起始项目有一个页面,涉及到了Vie转载 2016-08-08 14:29:07 · 2813 阅读 · 0 评论 -
设计模式-----观察者模式
总原则:开闭原则(Open Close Principle)开闭原则就是说对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,而是要扩展原有代码,实现一个热插拔的效果。所以一句话概括就是:为了使程序的扩展性好,易于维护和升级。想要达到这样的效果,我们需要使用接口和抽象类等,后面的具体设计中我们会提到这点。1、单一职责原则不要存在多于一个导致类变更的原因,也就转载 2016-08-08 14:02:06 · 365 阅读 · 0 评论 -
设计模式-----简单工厂
总原则:开闭原则(Open Close Principle)开闭原则就是说对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,而是要扩展原有代码,实现一个热插拔的效果。所以一句话概括就是:为了使程序的扩展性好,易于维护和升级。想要达到这样的效果,我们需要使用接口和抽象类等,后面的具体设计中我们会提到这点。1、单一职责原则不要存在多于一个导致类变更的原因,也就转载 2016-08-08 13:58:52 · 338 阅读 · 0 评论 -
Android 内存管理 &Memory Leak & OOM 分析
1、Android 进程管理&内存Android主要应用在嵌入式设备当中,而嵌入式设备由于一些众所周知的条件限制,通常都不会有很高的配置,特别是内存是比较有限的。如果我们编写的代 码当中有太多的对内存使用不当的地方,难免会使得我们的设备运行缓慢,甚至是死机。为了能够使得Android应用程序安全且快速的运行,Android 的每个应用程序都会使用一个专有的Dalvik虚拟机实例来运行,它是由Z原创 2016-08-18 17:26:22 · 680 阅读 · 0 评论 -
Android 内存优化 (防Memory Leak)
Android Memory Leak 和 OOM为什么会发生。这次主要说说编码层面,如何来预防Memory Leak的发生。对象都是有生命周期的,对象的生命周期有的是进程级别的,有的是Activity所在的生命周期,随Activity消亡;有的是Service所在的生命周期,随Service消亡。很多情况下判断对象是否合理存在的一个很重要的理由就是它实际的生命周期是否符合它本来的生命周期。很原创 2016-08-18 17:25:33 · 505 阅读 · 0 评论