- 博客(85)
- 资源 (16)
- 收藏
- 关注
原创 异常处理:.net.UnknownHostException nodename nor servname provided, or not known
开发web项目运行tamcat时遇到上面的问题,我用的是idea,在命令行输入如下命令就可以了!$ scutil --set HostName "localhost"
2016-11-17 16:28:34
6483
转载 打造通用的PopupWindow
国际惯例,先上地址https://github.com/razerdp/BasePopupPS:效果图都放在了github,github有着我继承该类做出来的popupWindow//2016-01-15 目前只写了两个PopupWindow效果图:普通的放大缩小:从下方弹出:通常情况下,面
2016-01-26 09:51:30
2248
原创 Android设计模式源码解析之外观模式(Facade)
1. 模式介绍模式的定义外观模式(也成为门面模式)要求一个子系统的外部与其内部的通信必须通过一个统一的对象进行。它提供一个高层次的接口,使得子系统更易于使用。模式的使用场景在设计初期阶段,将不同的两个层分离;在开发阶段,子系统往往因为不断的重构演化而变得越来越复杂,大多数的模式使用时也都会产生很多很小的类,这本是好事,但也给外部调用它们的用户程序带来了使用上的困难,
2016-01-25 17:35:32
543
原创 Android比iOS卡得原因和本质区别总结
Android比iOS卡得原因!1.IOS是用objective-c开发的,属于编译语言,无需虚拟机,无需解释器,但是安卓丫的用JAVA搞的,一个进程一个虚拟机,每个程序运行起来都需要一个解释器边解释代码边运行,这就牺牲了很大的性能。这也是为什么不管什么样的安卓手机跑temple run都会多多少少卡一些,4S就完全不会卡了。只要安卓一直用JAVA搞,在同样的配置下根本没法跟IOS相提并论。
2015-12-03 14:01:34
943
原创 2015年12月3日面试是被问到得问题记录
2015-12-02面试中问到得问题!Android如何进行内存管理?Xmpp的特点和缺点?TCP和UDP的区别?Android和iOS的区别?Android系统为何比iOS卡?解释一下MVC?觉得自己有哪些不足或者需要改进的地方?项目中遇到了哪些让你棘手的问题?又是如何觉得的?关于本公司你有什么问题要问的吗?XX项目有某些功能你认为多久时间能够完成?你
2015-12-03 13:55:01
490
转载 android流式布局--流式标签
1、概述上一篇已经基本给大家介绍了如何自定义ViewGroup,如果你还不了解,请查看:Android 手把手教您自定ViewGroup ,本篇将使用上篇介绍的方法,给大家带来一个实例:实现FlowLayout,何为FlowLayout,如果对Java的Swing比较熟悉的话一定不会陌生,就是控件根据ViewGroup的宽,自动的往右添加,如果当前行剩余空间不足,则自动添加到下一行。有点所
2015-11-25 15:28:20
857
转载 MVC 与 MVP 的区别,MVP的框架模式的应用
一、概述对于MVP(Model View Presenter),大多数人都能说出一二:“MVC的演化版本”,“让Model和View完全解耦”等等。本篇博文仅是为了做下记录,提出一些自己的看法,和帮助大家如何针对一个Activity页面去编写针对MVP风格的代码。对于MVP,我的内心有一个问题:为何这个模式出来后,就能被广大的Android的程序员接受呢?问了些
2015-11-24 15:31:51
488
原创 Android设计模式--适配器模式
我们经常可以看到适配器出现在我们的代码中,如在Android便充分利用了适配器来实现view和数据的联系,如:ListView和BaseAdapter。我们举一下一个小例子来说明一下适配器模式。就拿我们首页的图来看,我们国家的标准电压是220v,而我们笔记本所需的电压就15v左右;所以肯定不可以把我们的交流电直接接到笔记本上,这时,我们得有一个变压器(电源适配器)就可以了,把220v电
2015-11-23 11:36:12
465
原创 android 观察者模式解析
观察者模式的优点好处:可以降低代码的耦合度,维护更方便,相对于广播和Intent来说!观察者模式首先需要知道两个重要的类:Observer类和Observable类,Observable是被观察者类,Observer是观察者类,他们之前如何实现交互通信传值呢?package com.myboserver;import java.util.Observable;public cl
2015-11-23 10:30:16
404
转载 Android 自定义控件,继承控件,组合控件
一、自绘控件自绘控件的意思就是,这个View上所展现的内容全部都是我们自己绘制出来的。绘制的代码是写在onDraw()方法中的,下面我们准备来自定义一个计数器View,这个View可以响应用户的点击事件,并自动记录一共点击了多少次。新建一个CounterView继承自View,代码如下所示:[java] view plaincopy
2015-11-16 16:49:41
912
转载 android权限大全
访问登记属性android.permission.ACCESS_CHECKIN_PROPERTIES读取或写入登记check-in数据库属性表的权限获取错略位置android.permission.ACCESS_COARSE_LOCATION通过WiFi或移动基站的方式获取用户错略的经纬度信息定位精度大概误差在30~1500米获取精确位置androi
2015-11-05 11:01:54
368
原创 实时视频监控的设计实现原理
由于赶项目没有过多的时间写博客,在此提供一个我看完觉得很有用的学习网站供大家参考 :http://www.docin.com/p-658193072.html
2015-11-03 10:21:32
1541
原创 Android手机实时视频监控
于软件“千里眼”,经过代码的翻看,发现采用的是VideoView中访问RTSP实时视频流的思路实现的。反编译后的代码String str = getIntent().getStringExtra("rtsp");if (str != null){ VideoView localVideoView3 =this.videoView;
2015-11-02 10:31:31
6065
1
转载 Android 开发中的日常积累
欢迎Star,Forkhttps://github.com/lizhangqu/CoreLink里面记录了开发过程中有用的东西,欢迎补充,不定时更新。Android 性能优化Android内存优化之OOMAndroid最佳性能实践(1):合理管理内存Android最佳性能实践(2):分析内存的使用情况Android最佳性能实践(3):高性能编码优化Android最佳
2015-10-14 12:56:01
481
原创 Android最佳性能实践布局优化技巧
重用布局文件Android系统中已经提供了非常多好用的控件,这让我们在编写布局的时候可以很轻松。但是有些时候我们可能需要反复利用某个已经写好的布局,如果你总是使用复制粘贴的方式来进行布局重用,这显然是一种很笨的做法。而Android当然也已经充分考虑到了布局重用的重要性,于是提供了和这两个非常有用的标签,下面我们就来逐个学习一下。标签可以允许在一个布局当中引入另外一个布局,
2015-10-14 12:49:20
500
转载 Android属性动画-Property Animation(二) 使用ObjectAnimator完成动画
上一篇文章中我们分析了属性动画的工作原理,这篇文章开始介绍属性动画的实现,就不会再去分析原理,如果对原理不清楚的朋友可以看一下 Android属性动画-Property Animation(一) 原理分析 使用属性动画时我们通常使用Animator的两个子类,ValueAnimator和ObjectAnimator。这两个子类如何选择呢?在大多数情况下我们会使用Object
2015-10-14 12:07:52
591
转载 Android属性动画-Property Animation(四) 组合动画
(一)、使用AnimatorSet实现动画集之前我们研究的都是一个动画一个动画的单独播放,而在很多时候,我么需要将几个动画,以某种逻辑顺序来执行。我们可以用AnimatorSet来组合各种各样的动画。首先我们先来看这样一个动画:这个动画集由{下落动画,改变背景颜色动画,改变字体颜色动画}组成的。他们是同时执行的布局文件如下:
2015-10-14 11:39:21
559
转载 Android网络框架-Volley实践 使用Volley打造自定义ListView
这篇文章翻译自Ravi Tamada博客中的Android Custom ListView with Image and Text using Volley最终效果这个ListView呈现了一些影视信息,每一行是一个影片的信息,每一行中有一张电影的图片,电影的名字、评分、类型、年份等信息。1.json数据我们通过解析json然后拿到数据,这个json数据
2015-10-14 11:30:45
626
原创 Android中对于Context的理解
在Android中,Context到底是个什么鬼东西,它到底是干嘛使得,我读了很多篇文档,然而并不能清除的理解它的含义。答案: 简单来说,就像它的名字(上下文)一样,他是项目当前的状态的一个标识,他可以让新创建出来,新加入进来的对象或组件知道当前项目的进度,处于一个什么状态,这样我们就可以容易理解上下文的意思了把,上文就是自己知道了之前项目已经处于一个什么样的状态,下文就是告诉后来的对
2015-10-14 10:50:26
608
原创 android避免service被杀
最近项目要实现这样一个效果:运行后,要有一个service始终保持在后台运行,不管用户作出什么操作,都要保证service不被kill,这可真是一个难题。参考了现今各种定制版的系统和安全厂商牛虻软件,如何能保证自己的Service不被杀死呢?其实除了常规的手段,我们可以参考一下微信和360,设置-程序-正在运行,可以看到微信是同时开启了两个进程和服务:【有兴趣可以研究一下 守护进程
2015-10-12 15:07:02
524
转载 Android 自定义RadioButton 实现文字上下左右方向的图片大小设置
好久没有更新博客,写这篇技术时,感觉很多东西生疏了好多。于是心有感慨:我们做技术的,要是长时间不搞技术,那就是被技术搞!所以攻守之间,大家谨慎思量。冬天已过,放假出去玩耍时,看到两旁嫩嫩的树叶,想起贺知章的诗句: 《咏柳》碧玉妆成一树高, 万条垂下绿丝绦。不知细叶谁裁出, 二月春风似剪刀。犹自感叹,春天来了,美腿还会远么。
2015-10-05 14:49:39
1883
原创 WiFi的基本介绍及实现
10.5 WiFi的基本介绍及实现(2)(4)WifiManager 管理WiFi 连接,由于内容比较多,简单地描述一部分方法。我们在例子里面再讲解。addNetwork(WifiConfiguration config) 通过获取到的网络的链接状态信息来添加网络。calculateSignalLevel(int rssi , int numLevels) 计算信号的等级。com
2015-09-18 14:56:48
860
原创 android 加载本地联系人实现方法
首先先建布局文件,界面很简单,就是一个搜索框和下面的联系人列表:代码如下: android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#FFD3D7DF" android:orientation="vertical" andro
2015-09-07 09:40:56
767
原创 Android 管理Log日志
管理log一般有两种方法,博主推荐大家使用下面的第一种方法:第一种方法:第一步:定义一个logTools工具类,相信你能够看懂的,谁的log,可以用谁的名字做方法名,如logli,这就是工程师li打印的日志复制代码 代码如下:import android.util.Log;public class LogTools { public static bool
2015-08-19 16:34:54
484
转载 ByteBuffer使用总结
在NIO中,数据的读写操作始终是与缓冲区相关联的.读取时信道(SocketChannel)将数据读入缓冲区,写入时首先要将发送的数据按顺序填入缓冲区.缓冲区是定长的,基本上它只是一个列表,它的所有元素都是基本数据类型.ByteBuffer是最常用的缓冲区,它提供了读写其他数据类型的方法,且信道的读写方法只接收ByteBuffer.因此ByteBuffer的用法是有必要牢固掌握的.1.创建B
2015-08-10 15:54:32
453
原创 比isConnected()更靠谱的的获取socket实时连接状态!
估计很多人会说用socket.isConnected()或者socket.isClosed()等方法来判断就行了,但事实上这些方法都是访问socket在内存驻留的状态,当socket和服务器端建立链接后,即使socket链接断掉了,调用上面的方法返回的仍然是链接时的状态,而不是socket的实时链接状态,下面给出例子证明这一点。
2015-07-21 15:16:15
9117
5
原创 WifiManager类详解
Calculates the level of the signal. This should be used any time a signal is being shown.参数rssi The power of the signal measured in RSSI.numLevels The number of levels to consider in the calculated level.返回值A level of the signal, given in the range o
2015-07-16 19:31:06
4714
原创 ADT下载地址整理
http://dl.google.com/android/ADT-22.0.5.ziphttp://dl.google.com/android/ADT-22.0.4.ziphttp://dl.google.com/android/ADT-22.0.1.ziphttp://dl.google.com/android/ADT-22.0.0.ziphttp://dl.google.com
2015-07-08 12:27:28
533
原创 Android亮屏和熄屏控制
Android系统提供了电源管理的类PowerManager;调用相应的属性即可实现;系统服务 --- PowerManager.java顾名思义,PowerManager.java就是管理我们电源方面的功能的,当然也包括我们屏幕的亮和熄灭。没错,我们的应用程序就是通过这个系统服务来实现亮屏和熄屏的功能的。1. 应用程序获取PowerManager服务, 我们可以这样书写:
2015-07-07 17:53:50
4867
转载 Android视图SurfaceView
在Android系统中,有一种特殊的视图,称为SurfaceView,它拥有独立的绘图表面,即它不与其宿主窗口共享同一个绘图表面。由于拥有独立的绘图表面,因此SurfaceView的UI就可以在一个独立的线程中进行绘制。又由于不会占用主线程资源,SurfaceView一方面可以实现复杂而高效的UI,另一方面又不会导致用户输入得不到及时响应。在本文中,我们就详细分析SurfaceView的实现原理。
2015-06-26 14:28:29
509
原创 在Android中不要将数据存储在Application类中,
最近在开发中发现了一个比较严重的问题,当我们将应用按home键放入后台运行,一段时间后,当我们再次打开应用的时候,十有八九会出现一个NullPointException的空指针异常,根据logcat的日志,就会定位到一个去全局性到变量去,这是什么原因呢?原来,是因为我们我们将很多数据放入了application中作为全局变量,导致了问题的产生,下面来说下为什么不能将数据放在application中。
2015-06-24 17:41:53
1495
原创 Android APP崩溃上传日志到服务器并且重启!
我们写程序的时候都希望能写出一个没有任何Bug的程序,期望在任何情况下都不会发生程序崩溃。但没有一个程序员能保证自己写的程序绝对不会出现异常崩溃。特别是当你用户数达到一定数量级后,你也更容易发现应用不同情况下的崩溃。 对于还没发布的应用程序,我们可以通过测试、分析Log的方法来收集崩溃信息。但对已经发布的程序,我们不可能让用户去查看崩溃信息然后再反馈给开发者。所以,设计一个对于小白用户都可以
2015-06-16 10:33:44
3909
1
转载 Android应用Activity、Dialog、PopWindow、Toast窗口添加机制及源码分析
1 背景之所以写这一篇博客的原因是因为之前有写过一篇《Android应用setContentView与LayoutInflater加载解析机制源码分析》,然后有人在文章下面评论和微博私信中问我关于Android应用Activity、Dialog、PopWindow加载显示机制是咋回事,所以我就写一篇文章来分析分析吧(本文以Android5.1.1 (API 22)源码为基础分析),以便大家
2015-06-16 10:16:16
1834
原创 Android 用源代码写layout布局
通过纯代码实现XML同样的效果:[java] view plaincopyimport android.app.Activity; import android.content.Context; import android.graphics.Color; import android.os.Bundle; import an
2015-06-15 09:31:29
958
原创 Android程序崩溃统一处理机制
Android程序崩溃统一处理机制, 在应用发布以后,由于安卓机型的千差万别 ,可能会出现各种各样的问题,这时候如果我们可以将这些信息收集起来,并进行修改就很不错了。下面就来讨论一下怎么处理程序崩溃以后,错误信息的手机。
2015-06-12 10:22:35
1620
转载 Android 手势检测实战 打造支持缩放平移的图片预览效果;单图+viewpager版下载地址
1、自由的进行移动我们在onTouchEvent里面,加上移动的代码,当然了,必须长或宽大于屏幕才可以移动~~~[java] view plaincopy@Override public boolean onTouch(View v, MotionEvent event) { mSca
2015-06-11 10:20:55
773
转载 Android 下拉刷新框架实现
前段时间项目中用到了下拉刷新功能,之前在网上也找到过类似的demo,但这些demo的质量参差不齐,用户体验也不好,接口设计也不行。最张没办法,终于忍不了了,自己就写了一个下拉刷新的框架,这个框架是一个通用的框架,效果和设计感觉都还不错,现在分享给各位看官。致谢:1. 感谢lk6233160同学提出的问题,旋转View时调用setRotation方法只能是在API Level11(3.0)以
2015-06-10 16:24:43
465
android设计模式
2015-09-08
android亲测非常简单实用的ListView和ExpandableListView下拉刷新通用
2015-06-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人