
android
文章平均质量分 71
轻迷
我是一个热爱程序的人
展开
-
设置Android模拟器上网的方法
http://myclover.iteye.com/blog/1035957设置Android模拟器上网的方法很多网友也问到为啥自己在家的PC机可以上网,而运行在PC机上面的android模拟器却不能上网呢?是因为家里的PC机的DNS一般为:192.168.1.1,这个只是一般而言,不是绝对,这个得自己使用ipconfig /all命令检查下;而模拟器默认的DNS为:10.0.2.转载 2017-12-19 16:53:34 · 8304 阅读 · 3 评论 -
Android Matrix详解
Matrix的数学原理平移变换旋转变换缩放变换错切变换对称变换代码验证 Matrix的数学原理在Android中,如果你用Matrix进行过图像处理,那么一定知道Matrix这个类。Android中的Matrix是一个3 x 3的矩阵,其内容如下: Matrix的对图像的处理可分为四类基本变换:Tran转载 2016-03-05 16:25:49 · 509 阅读 · 0 评论 -
UI设计师不可不知的安卓屏幕知识
不少设计师和工程师都被安卓设备纷繁的屏幕搞得晕头转向,我既做UI设计,也做一部分安卓界面布局,刚好对这块内容比较熟悉,也曾在公司内部做过相关的讲座,在此,我将此部分知识重新梳理出来分享给大家!1、了解几个概念(1)分辨率。分辨率就是手机屏幕的像素点数,一般描述成屏幕的“宽×高”,安卓手机屏幕常见的分辨率有480×800、720×1280、1080×1920等。720×1280表示此屏幕在宽转载 2015-11-07 18:44:13 · 492 阅读 · 0 评论 -
Android 下拉刷新框架实现
1. 关于下拉刷新下拉刷新这种用户交互最早由twitter创始人洛伦•布里切特(Loren Brichter)发明,有理论认为,下拉刷新是一种适用于按照从新到旧的时间顺序排列feeds的应用,在这种应用场景中看完旧的内容时,用户会很自然地下拉查找更新的内容,因此下拉刷新就显得非常合理。大家可以参考这篇文章:有趣的下拉刷新,下面我贴出一个有趣的下拉刷新的案例。图一、有趣的下拉刷新案例原创 2015-07-16 10:24:56 · 451 阅读 · 0 评论 -
Android网络优化之HttpClient
尽管Android官网推荐在2.3及后续版本中使用HttpURLConnection作为网络开发首选类,但在连接管理和线程安全方面,HttpClient还是具有很大优势。就目前而言,HttpClient仍是一个值得考虑的选择。对于HttpClient的优化,可以从以下几个方面着手: (1)采用单例模式(重用HttpClient实例) 对于一个通信单元甚至是整个应用程序,Ap转载 2015-06-08 17:11:07 · 336 阅读 · 0 评论 -
java的内存分配
1. 寄存器(registers) 反应最快的存储,在处理器里,数量有限,由编译器分配2、栈(stack)位于通用RAM(随机访问存储器)中,但是通过栈指针可以直接从栈指针那里获得直接支持。栈指针向下移动,则分配新的内存;向上移动,则释放那些内存。其快速有效性仅次于寄存器。创建程序时,JAVA必须知道存储在栈区的所有项的确切生命周期,以便上下移动栈指针。比如,JAVA对象引用存储于栈区,但对象原创 2015-06-08 14:34:27 · 420 阅读 · 0 评论 -
JAVA 内存操作流
package org.iodemo; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStream; import java.io.OutputStream; public clas转载 2015-06-08 14:30:24 · 567 阅读 · 0 评论 -
JAVA 字节流和字符流
在整个IO 包中,流的操作就分两种字节流字节输出流 OutputStream、字节输入流 InputStream字符流,一个字符 = 两个字节字符输出流 Writer、字符输入流是 ReaderIO 操作的基本步骤在java 中使用IO 操作必须按照以下的步骤完成:1、使用File 找到一个文件2、使用字节流或字符流的子类转载 2015-06-08 14:30:11 · 521 阅读 · 0 评论 -
Android自定义控件
开发自定义控件的步骤:1、了解View的工作原理 2、 编写继承自View的子类3、 为自定义View类增加属性 4、 绘制控件 5、 响应用户消息 6 、自定义回调函数 一、View结构原理Android系统的视图结构的设计也采用了组合模式,即View作为所有图形的基类,Viewgroup对View继承扩展为视图容器转载 2015-06-26 11:32:55 · 401 阅读 · 0 评论 -
Java正则表达式入门
众所周知,在程序开发中,难免会遇到需要匹配、查找、替换、判断字符串的情况发生,而这些情况有时又比较复杂,如果用纯编码方式解决,往往会浪费程序员的时间及精力。因此,学习及使用正则表达式,便成了解决这一矛盾的主要手段。 大 家都知道,正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它 用以描述在查找文字主体时待匹配原创 2014-09-19 13:47:38 · 456 阅读 · 0 评论 -
android需要学习的其中一些知识
Android系统架构Activity/Service生命周期Android中的动画(补帧与逐帧)Handler机制Android线程之间、Activity之间通信DVM与ARTassest和raw文件夹与程序打包常用的五种布局方式Android中的广播机制设计模式与IoC(Inversion of Control)Android中长度单位Activity的4种启动模式什么是ANR,如何避免Lis原创 2015-06-18 10:52:07 · 1008 阅读 · 0 评论 -
绝对详解的java注解
本文将向你介绍Java 1.5中的新特性之一:注解。本文将从什么是注解;Java 1.5中预定义的注解;如何自定义注解;如何对注解进行注解以及如何在程序中用反射读取注解5个方面进行讨论。一、什么是注解 说起注解,得先提一提什么是元数据(metadata)。所谓元数据就是数据的数据。也就是说,元数据是描述数据的。就象数据表中的字段一样,每个字段描述了这个字段下的数据的含义。原创 2015-05-21 11:22:24 · 527 阅读 · 0 评论 -
Android教你打造ioc框架
http://blog.youkuaiyun.com/lmj623565791/article/details/39269193 上篇http://blog.youkuaiyun.com/lmj623565791/article/details/39275847 下篇转载 2015-05-20 11:59:51 · 407 阅读 · 0 评论 -
UML建模之活动图介绍(Activity Diagram)
一、活动图的组成元素 Activity Diagram Element1、活动状态图(Activity)2、动作状态(Actions)3、动作状态约束(Action Constraints)4、动作流(Control Flow)5、开始节点(Initial Node)6、终止节点(Final Node)7、对象(Objects)8、数据存储对象(DataSt转载 2015-04-09 09:50:35 · 618 阅读 · 0 评论 -
Android ViewPager使用详解
这是谷歌官方给我们提供的一个兼容低版本安卓设备的软件包,里面包囊了只有在安卓3.0以上可以使用的api。而viewpager就是其中之一利用它,我们可以做很多事情,从最简单的导航,到页面菜单等等。那如何使用它呢,与LisstView类似,我们也需要一个适配器,他就是PagerAdapter。看一下api的图片, ViewPager的功能就是可以使视图滑动,就像Lanucher左转载 2015-03-14 09:15:20 · 524 阅读 · 0 评论 -
Android SwipeRefreshLayout 官方下拉刷新控件介绍
转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/24521483下面App基本都有下拉刷新的功能,以前基本都使用XListView或者自己写一个下拉刷新,近期Google提供了一个官方的下拉刷新控件SwipeRefreshLayout,我感觉还不错啊,见惯了传统的下拉刷新,这个反而给人耳目一新的感觉(貌似知乎的APP已经使用这转载 2015-01-21 19:57:24 · 444 阅读 · 0 评论 -
【Arduino】舵机操作
1.servo类成员函数函数说明attach()设定舵机的接口,只有9或10接口可利用。write()用于设定舵机旋转角度的语句,可设定的角度范围是0°到180°。writeMicroseconds() 用于设定舵机旋转角度的语句,直接用微秒作为参数。原创 2015-01-01 16:35:53 · 5126 阅读 · 0 评论 -
用android控制arduino(wifi版)
转载自:http://blog.sina.com.cn/s/blog_6611ddcf01012mku.html要用android控制arduino,首先要买一张Ethernet Shield(arduino的网络扩展板)。当然,你如果仅仅满足于用蓝牙控制,那采用的技术方案就完全不同了。本文讨论的是android通过wifi,控制arduino。android4.0的,当然要试试如转载 2015-01-01 11:07:58 · 5181 阅读 · 0 评论 -
android开发之Fragment 的生命周期及使用方法详解
Fragment 的基础知识介绍 1.1 概述1.1.1 特性By hebang32624Fragment 是 activity 的界面中的一部分或一种行为。可以把多个 Fragment 组合到一个 activity 中来创建一 个多面界面并且可以在多个 activity 中重用一个 Fragment。可以把 Fragment 认为模块化的一段 acti转载 2016-04-18 19:58:39 · 607 阅读 · 1 评论 -
深入理解Java:SimpleDateFormat安全的时间格式化
想必大家对SimpleDateFormat并不陌生。SimpleDateFormat 是 Java 中一个非常常用的类,该类用来对日期字符串进行解析和格式化输出,但如果使用不小心会导致非常微妙和难以调试的问题,因为 DateFormat 和 SimpleDateFormat 类不都是线程安全的,在多线程环境下调用 format() 和 parse() 方法应该使用同步代码来避免问题。下面我们通过一转载 2016-06-25 11:36:22 · 345 阅读 · 0 评论 -
Android单元测试框架Robolectric3.0介绍(二)
一 闲话单元测试我们经常讲“前人种树,后人乘凉”,然而在软件开发中,往往呈现出来的却是截然相反的景象,我们在绩效和指标的驱使下,主动或被动的留下来大量坏味道的代码,在短时间内顺利的完成项目,此后却花了数倍于开发的时间来维护此项目,可谓“前人砍树,后人遭殃”,讽刺的是,砍树的人往往因为优秀的绩效,此时已经步步高升,而遭殃的往往是意气风发,步入职场的年轻人,如此不断轮回。所以,为了打破轮回,从一点转载 2016-06-28 14:48:25 · 2297 阅读 · 0 评论 -
AndroidStudio 多层级 Module 对 aar 引用问题
转载自:https://www.cnblogs.com/bellkosmos/p/6146349.html问题:有个arr文件被放到Module A中引用,现在Module B又依赖了Module A,则在编译过程中会发生错误,Module B找不到aar文件。(同时如果又有Module C 依赖了Module B,C也会出同样的问题)解法:1、正常给一个modul转载 2017-11-09 16:46:15 · 2655 阅读 · 1 评论 -
Gradle的介绍
一、什么是Gradle 简单的说,Gradle是一个构建工具,它是用来帮助我们构建app的,构建包括编译、打包等过程。我们可以为Gradle指定构建规则,然后它就会根据我们的“命令”自动为我们构建app。Android Studio中默认就使用Gradle来完成应用的构建。有些同学可能会有疑问:”我用AS不记得给Gradle指定过什么构建规则呀,最后不还是能搞出来个apk。“ 实际上,app的转载 2017-11-09 15:59:56 · 345 阅读 · 0 评论 -
从Github上Clone一个AndroidStudio工程如何配置环境
一、配置gradle版本 先查看自己电脑上的Androidstudio的gradle和gradle插件版本,其查看方法如链接https://jingyan.baidu.com/article/cbcede0710f49802f50b4d78.html,然后在下载的android项目里的E:\下载的项目\gradle\wrapper文件夹下有一个gradle-wrapper.prope原创 2017-11-09 16:35:03 · 1187 阅读 · 0 评论 -
Android进程保活招式大全
作者:腾讯——张兴华目前市面上的应用,貌似除了微信和手Q都会比较担心被用户或者系统(厂商)杀死问题。本文对 Android 进程拉活进行一个总结。Android 进程拉活包括两个层面:A. 提供进程优先级,降低进程被杀死的概率B. 在进程被杀死后,进行拉活本文下面就从这两个方面做一下总结。1. 进程的优先级Android 系统将尽量长时间地保转载 2017-10-12 16:50:36 · 224 阅读 · 0 评论 -
安卓易学,爬坑不易—腾讯老司机的RecyclerView局部刷新爬坑之路
转载自:http://wetest.qq.com/lab/view/176.html?from=adsout_qqtips_past2&sessionUserType=BFT.PARAMS.201129.TASKID&ADUIN=751743289&ADSESSION=1477044370&ADTAG=CLIENT.QQ.5497_.0&ADPUBNO=26621针对手游的性能优化,腾讯WeT转载 2016-10-21 18:24:14 · 350 阅读 · 0 评论 -
android-自定义View解决wrap_content无效的问题
###问题提出在我们自定义view时,如何需要是当前的view内容自适应,这种平常的使用中,只需要在xml文件中制定宽高或者长高为wrap_content即可,但是如果该view是我们自定义的,那么此时再在xml文件中指定宽高为wrap_content则不能起到内容自适应的效果,并且效果为match_parent。本文即是解决此类问题。###预备知识在讲解该问题之前,我们需要了解一些预备转载 2016-09-20 14:09:33 · 4873 阅读 · 0 评论 -
Android图片压缩上传系列-基础篇
【声明:本文经授权转自简书,作者:laogui,未经许可,禁止转载。】;本文原地址:http://www.jianshu.com/p/64bfba434703#开发中遇到需要上传图片的场景还是很常见的,这就涉及到图片的压缩处理。如果不进行压缩,势必造成消耗大量的流量,下载图片的速度慢等。关于android如何压缩,网上的资料也是很多,但大多数都是代码片段,讲解压缩步骤,而没有一个实转载 2016-09-05 16:20:44 · 533 阅读 · 0 评论 -
使用MVP模式重构代码
之前写了两篇关于MVP模式的文章,主要讲得都是一些概念,这里谈谈自己在Android项目中使用MVP模式的真实感受,并以实例的形式一起尝试来使用MVP模式去重构我们现有的代码。有兴趣的童鞋可以先去阅读之前的文章,因为这里将不再重复概念的部分了,本文会假设你对MVP有一点了解了:1. 在谈MVP之前,你真的懂MVC吗?2. MVP模式是你的救命稻草吗?臃肿的Activity大部分转载 2016-08-25 15:58:42 · 1439 阅读 · 0 评论 -
这一次,我优化了37%的内存
话说,从mta上报的数据上来看,我们的app出现了3起OOM(out of memery):java.lang.Throwable: java.lang.OutOfMemoryError at com.tencent.stat.a.d.(Unknown Source) at com.tencent.stat.g.uncaughtException(Unknown Source) at原创 2016-08-24 16:37:50 · 2433 阅读 · 1 评论 -
ListView的item中有button ImageButton CheckBox EditText等时 点击事件失效问题的解决
在item的布局文件中加入:android:descendantFocusability="blocksDescendants"[html] view plain copy xml version="1.0" encoding="utf-8"?> LinearLayout xmlns:android="http://schemas.an转载 2016-09-09 10:52:26 · 604 阅读 · 0 评论 -
Android获取屏幕高度、状态栏高度、标题栏高度
在android应用中,有时需要计算个View的位置,导致需要计算状态栏高度,标题栏高度等信息。为以后方便,在此做个简单记录。晒代码前先了解一下android屏幕区域的划分,如下图(该图引用自此文http://www.iteye.com/topic/828830 )1、 屏幕区域的获取[java] view plaincopy转载 2016-08-28 15:07:04 · 498 阅读 · 0 评论 -
view_ _ Android应用坐标系统全面详解
1 背景去年有很多人私信告诉我让说说自定义控件,其实通观网络上的很多博客都在讲各种自定义控件,但是大多数都是授之以鱼,却很少有较为系统性授之于渔的文章,同时由于自己也迟迟没有时间规划这一系列文章,最近想将这一系列文章重新提起来,所以就来先总结一下自定义控件的一个核心知识点——坐标系。很多人可能不屑一顾Android的坐标系,但是如果你想彻底学会自定义控件,我想说了解Android各转载 2016-08-28 14:59:32 · 674 阅读 · 0 评论 -
Android Studio(Gradle)解决库依赖冲突问题
最近在调整代码的时候,出现如下问题:12345678910111213Cause: com.android.dex.DexException: Multiple dex files define Landroid/support/annotation/AnimRes; UNEXPECTED TOP-LEVEL EXCEPTION:com.android.dex.DexExcept转载 2016-08-15 16:57:14 · 10447 阅读 · 0 评论 -
单例模式的常见应用场景
单例模式(Singleton)也叫单态模式,是设计模式中最为简单的一种模式,甚至有些模式大师都不称其为模式,称其为一种实现技巧,因为设计模式讲究对象之间的关系的抽象,而单例模式只有自己一个对象,也因此有些设计大师并把把其称为设计模式之一。这里又不具体讲如何实现单例模式和介绍其原理(因为这方便的已经有太多的好文章介绍了),如果对单例模式不了解的可以先看下:http://terrylee.cn转载 2016-07-29 14:47:12 · 377 阅读 · 0 评论 -
Android性能优化之常见的内存泄漏
作者:u010687392 发表于2015/11/23 15:13:23 原文链接(http://blog.youkuaiyun.com/u010687392/article/details/49909477)前言对于内存泄漏,我想大家在开发中肯定都遇到过,只不过内存泄漏对我们来说并不是可见的,因为它是在堆中活动,而要想检测程序中是否有内存泄漏的产生,通常我们可以借助LeakCanary、MAT等转载 2016-07-19 13:00:45 · 340 阅读 · 0 评论 -
基于Android Studio的内存泄漏检测与解决全攻略
自从Google在2013年发布了Android Studio后,Android Studio凭借着自己良好的内存优化,酷炫的UI主题,强大的自动补全提示以及Gradle的编译支持正逐步取代Eclipse,成为主流的Android开发IDE。Android Studio在为我们提供了良好的编码体验的同时,也提供了许多对App性能分析的工具,让开发者可以更方便分析App性能。Google在IO大会上转载 2016-06-20 16:16:54 · 20348 阅读 · 5 评论 -
写点有价值的测试用例
这篇文章为《解读Android官方MVP项目单元测试》(以下简称《解读》)的附录部分,行此文的目的有二,其一是这个项目的单元测试齐全,覆盖率很高,有极高的学习价值,笔者希望把每个测试用例都描述一遍,通过这种方式来强迫自己认真的看完。其二,这部分内容难免枯燥,笔者尽力想把它写得可读性高一点点,却发现着实有难度,简直是给自己挖坑,所以从《写点有价值的测试用例》的角度出发,对这篇附录文章稍作修饰。但不管转载 2016-06-28 14:50:00 · 596 阅读 · 0 评论 -
细说Android事件传递机制(dispatchTouchEvent、onInterceptTouchEvent、onTouchEvent)
转载自 :http://www.it165.net/pro/html/201404/11500.html本文背景:前些天用到了之前写的自定义图片文字复合控件,在给他设置监听时遇到了麻烦。虽然最后解决了问题,但发现在不重写LinearLayout的onInterceptTouchEvent时,子ImageView、子TextView、父Linearlayout三者不同的属性配置(androi转载 2014-12-14 17:59:59 · 417 阅读 · 0 评论 -
Android自定义类似ProgressDialog效果的Dialog
转载自:http://blog.youkuaiyun.com/qjlhlh/article/details/7979179Android自定义类似ProgressDialog效果的Dialog.方法如下:1.首先准备两张自己要定义成哪样子的效果的图片和背景图片(也可以不要背景)。如我要的效果:2.定义loading_dialog.xml布局文件(这里你也可以按自己的布局转载 2014-12-30 10:35:29 · 936 阅读 · 0 评论