自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(149)
  • 资源 (15)
  • 收藏
  • 关注

转载 webview遇到的那些坑与解决方法

1. WebView的内存泄露。这个问题,很难清晰描述,你在谷歌里搜 webview lead memory 能搜到很多结果 甚至还有给谷歌提交的issue 哈哈,我也无法给出一个清晰的答案 在什么时候 什么版本那些手机上一定会出现内存泄露, 但是根据一些monkey结果来看,有时,webview内存泄露的情况还是很严重的,尤其是当你加载的页面比较庞大的时候。解决方案参考下微信和qq的做法,试了一

2016-09-05 14:40:09 4662

转载 android开发小tips

1、android.text.TextUtils这个类就能胜任绝任多数的工作,比如:text.TextUtils.isEmpty这个方法判断字符串非null且非空,在对字符串进行判断时可以不必if(str!=null && str.length()>0)这样的判断。 public static CharSequence concat(CharSequence… text) 字符串连接。有很多字符串

2016-08-30 16:16:00 695

转载 助你快速搭配 Material Design 配色方案的10款Web工具

在设计 Material Design 的过程中你会发现一个很大的问题,那就是如何大胆、灵活的使用色彩组合。 Material Design 里的调色板工具将色彩描述为“受大胆排列色块并结合柔和的环境、深阴影和亮高光而产生的灵感”。这周我们专门为设计导航的配色类目更新了10款 Google Material Design 专用的配色工具,如果你需要材质设计调色板,这些web工具可以助你一臂之力。下

2016-08-04 15:59:30 12876

转载 android实现观察者模式的几种方法

观察者模式在 android开发中应用还是非常广泛的,例如android按钮事件的监听、广播等等,在任何类似于新闻-订阅的模式下面都可以使用。从某种意义上面来说android有点像JAVA EE的WEB页面,在都需要提供View层用于进行操作,在多个页面之间传递数据发送通知都是一件很麻烦的事情。在android中从A页面跳转到B页面,然后B页面进行某些操作后需要通知A页面去刷新数据,我们可以通...

2016-08-03 16:14:15 9508

翻译 Android M新的运行时权限开发者需要知道的一切

如果permissions没有影响到用户的隐私,系统就会自动授权。如果权限可能会访问到敏感的用户信息,系统则会要求用户处理这种权限要求。系统permissions被分为两类,normal和dangerous:Normal permissions不会直接触及到用户的隐私,如果你的app已经在Manifest文件中列出了常规权限,系统则会自动授权。dangerous的权限能够给app访问用户可信任的

2016-07-28 16:22:56 479

转载 知道这20个正则表达式,能让你少写1,000行代码

正则表达式,一个十分古老而又强大的文本处理工具,仅仅用一段非常简短的表达式语句,便能够快速实现一个非常复杂的业务逻辑。熟练地掌握正则表达式的话,能够使你的开发效率得到极大的提升。正则表达式经常被用于字段或任意字符串的校验,如下面这段校验基本日期格式的JavaScript代码:var reg = /^(\\d{1,4})(-|\\/)(\\d{1,2})\\2(\\d{1,2})$/; var r

2016-07-28 13:58:20 367

转载 浅谈程序员的英语学习

作为在中国工作的程序员,不懂得英语似乎也不妨碍找到好工作,升职加薪。但程序员这个工种则稍有不同,因为程序,尤其是高级语言,基本上都是由英语和数字表达式构成的。英语对于程序员十分重要。我的大学本科全部采用英文教学,工作时也经常会遇到外国人,和他们谈笑风生,自认为自己的英语水平比园子的平均水平高一点。下面我就根据自己的经验来说说英语的学习方法。为什么要学习英语学好英语你可以直接阅读各种经典书籍的原文版。

2016-07-28 10:36:15 383

转载 android webview打开本地图片上传

Webview打开本地图片选择器十分之麻烦,其在安卓系统3x 4x 5x上的行为都不同,处理也不同,所以之前差点崩溃。经过测试和完善,最终其在各个版本上都能完美工作。 直接上代码package com.testandroid.webview;import android.content.Intent;import android.net.Uri;import android.os.Bundle

2016-07-26 08:59:23 2521

转载 程序员跳槽注意事项

很多人觉得,现在的程序员很浮燥,干不了多久就要跳了。 但是,有没有想过,这是什么导致的。 你一年不涨工资,两年不涨工资,那别人发现,自己的工资与业界水平相距太远,不得不跳。 或许你说,那至少要要多呆些日子,多积累经验再跳吧。 我们来看看第二条潜规则。

2016-07-15 16:14:56 629

原创 Node.js实现android的apk版本更新服务器

以下内容仅为android程序员自己测试时搭建的简单测试服务器。 根据一般apk升级步骤: 1. 请求服务器versionCode和本地apk的versionCode比对,如果服务器versionCode大于apk的versionCode,则执行2),否则结束; 2. 弹出对话框,告知用户有新的版本可以更新,用户点击更新,则执行3)开始下载apk,否则结束; 3. 后台下载最新版本的apk。

2016-07-13 15:33:01 4904

转载 node.js下载文件

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2016-06-24 22:37:23 1878

原创 Android开源SlidingMenu的使用

一、SlidingMenu简介SlidingMenu是最常用的几个开源项目之一.GitHub上的开源项目Slidingmenu提供了最佳的实现:定制灵活、各种阴影和渐变以及动画的滑动效果都不错。不过这是一个开源库,要把它作为library引入到你自己的工程里,简单配置一下就可以实现SlidingMenu的效果。二、项目的导入三、具体实现你可以直接继承app这个包中的Sl

2016-06-24 09:54:04 351

转载 Android开发模板------RecyclerView的使用

官方介绍 RecyclerView 是 ListView 的升级版本,更加先进和灵活。那么有了ListView、GridView为什么还需要RecyclerView这样的控件呢?整体上看RecyclerView架构,提供了一种插拔式的体验,高度的解耦,异常的灵活,通过设置它提供的不同LayoutManager,ItemDecoration , ItemAnimator实现令人瞠目的效果。

2016-06-24 09:52:27 521

原创 Android通知Notification详解

Notification的使用大体步骤Notification简介PendingIntent简介使用RemoteViews自定义Notification更新与移除通知设定提示响应附录Notification的使用大体步骤:1、 获取状态通知栏管理 2、 实例化通知栏构造器 3、 设置NotificationCompat.Builder 4、 设置PendingIntent

2016-06-20 16:11:15 25797 4

原创 关于Fragment的那些事儿

Fragment生命周期:onAttach():当Fragment被加入到activity时被调用(在这个方法中可以获得所在的activity)onCreate(),onCreateView():当activity要得到fragment的layout时,调用此方法,fragment在其中创建自己的layout。onActivityCreate():当activity的onCre

2016-05-23 11:21:49 501

原创 WebView的碎片化解决方案:Crosswalk

项目的需要,App内嵌入了很多WebView。但在适配的时候出现了大量的问题,典型的就是小米,WebView兼容性一直都是Android开发的一个大问题。Android4.4-的WebView是基于WebKit内核,虽然android4.4+的WebView采用了chromium的核,但是第三方ROM可能对源生WebView有做修改,导致了很多兼容性问题。各个手机WebView版本不同、内核也会不同

2016-04-13 09:28:50 2884

转载 android开发建议

Android开发建议• 尽量阅读官方文档,这才是原汁原味、不失真的开发指导;• 即使你认为设计程序是浪费时间,你只是喜欢写程序,至少你也得用思维导图理清思路,思维导图对于帮助你理解设计文档、理清思路有很大的帮助;• 不要用Intent传递大量的数据,这有可能导致ANR或者报异常;• 在退出页面后,系统不一定会及时执行onDestory方法,如果你在onDestory方法里做关

2016-02-29 22:15:28 479

转载 android性能优化

Android app性能优化 用Hierarchy Viewer知道是哪一个子View耗时比较多,找到此View的code,那么如何定位到具体某个方法里呢?当然需要traceview工具。Traceview工具十分强大,可以轻松把每个方法占用CPU时间计算出来,找到占用时间最长的方法,然后分析此方法即可。 Lint工具会给出Layout优化提示(既包括图片资源、layout文件

2016-02-29 22:14:19 428

原创 隐藏输入法

点击别处隐藏输入法的方法 @Override public boolean onTouchEvent(MotionEvent event) { if (event.getAction() == MotionEvent.ACTION_DOWN) { if (this.getCurrentFocus() != null) {

2016-02-29 22:11:43 410

转载 Android开发规范

• 书写规范• 编码方式统一用UTF-8.AS默认已是UTF-8,只要不去改动就可以了。• 花括号不要单独一行,和它签名的代码同一行。而且,花括号与前面的代码之间用一个空格隔开。• 空格的使用:if\else\for\switch\while等逻辑关键字与后面的语句留一个空格隔开。运算符两边各用一个空格隔开。方法的每个参数之间用一个空格隔开。• 将逻辑相关的代码段用空行隔开,

2016-02-28 18:45:50 374

原创 Python作为移动客户端后台服务器

python+flask实现服务器:安装python和flask略过,servicestest.py代码:from flask import Flask, jsonifyapp = Flask(__name__)tasks = [ { 'id':1, 'title':u'Buy groceries', 'description':u'Milk, Cheese, Piz

2016-02-26 17:32:58 6185

转载 最全Android开发常用工具类

主要介绍总结的Android开发常用的工具类,大部分同样适用于Java。目前包括 HttpUtil、DownloadManagerPro、Safe.ijiami、ShellUtils、PackageUtils、 PreferencesUtils、JSONUtils、FileUtils、ResourceUtils、StringUtils、 ParcelUtils、RandomUtils、

2016-02-04 15:12:28 616

原创 Android常用开源项目库

开源库网上很多,项目比较常用的整理如下:StaggeredGridView、EventBut、Android-Image-Cache、ImageFilterForAndroid、RESTProvider、Robospice、AndroidSideMenu、AndroidSideMenu、ScreenCap、SlidingMenu、Drag-Sort-ListView、Android-Flip、Android-PullToRefresh、Picasso、Card-UI、SmoothProgressBar、A

2016-02-03 18:30:42 869

原创 《重构 改善即有代码的设计》笔记

我不是个伟大的程序员,我只是个有着一些优秀习惯的好程序员。--Kent Beck个人认为这本书是每个程序员都需要读的一本书,有种让人欲罢不能的感觉。有人把《重构》与《设计模式》并列为“java行业的圣经”。下面是我提炼出来的一些观点或者是总结。首先需要认识重复代码是软件万恶之源,这些重复代码应该被抽出来放进同一个函数中。重复代码是系统中最糟糕的东西之一。正因为如此,我们才要重构才需要有设计

2016-01-31 17:38:34 997

转载 Android退出所有Activity最优雅的方式

关于退出所有Activity,目前网上比较流行的方式大概有以下几种:① 使用ActivityManager的方式;② 自定义一个Activity集合类的方式;③ 通过发送广播的方式;④ 通过杀死当前应用进程的方式;以上方式的具体实现大家可自行谷歌百度,此处不再赘述。但是这些方式要么不太靠谱,要么有限制,要么不够优雅。今天我们就来说一个简单有效,优雅大

2016-01-14 14:31:00 8985

原创 数据以文件形式缓存至本地

数据保存形式有多种: 1、数据库;2、sharedpreferences;3、文件的形式4、网络存储方式5、使用contentProvider这次聊聊文件的缓存方式。首先将数据以对象的方式序列化下:/** * Created by Administrator on 2015-12-25. * 基类 */public class Feed implements

2016-01-13 09:38:37 793

原创 Android使用bootstrap简单介绍

1、简介开源项目到处都有bootstrap的简介,但仅仅停留在提一提的程度。博主自己写了一个简单的demo,运行效果还不错。这里记录下开发步骤吧。按照惯例先介绍下bootstrap,bootstrap是Twitter推出的前端的一个快速开发漂亮网站的框架,网页的图标和样式都很好看,而这个Android-bootstrap项目就是网页的图标效果到android中来。该项目中自己封装了一些常用前端

2015-12-30 10:39:43 12729

原创 Android使用Font Awesome简单介绍

1、简介       font Awesome官网:http://fortawesome.github.io/Font-Awesome/       Font awesome是为Bootstrap设计的一个图标集合字体,我们可以通过向显示字体一样方便显示我们想要显示的图标文件,里面包含了300多个常用图标。对于Android来讲,可以使用字体来替代部分需要显示的小图片,并且在这些字体中的图

2015-12-25 17:07:31 3672

原创 Android一些总结

Android开发也有三年有余了,总想给自己一个总结,给以后的开发指明一个方向。以下是开发的总结,有些是参照大牛。最近一直在看重构方面的书,回头整理一份有用的笔记,我将继续重构自己正在开发的项目,使其能拥抱变化,成为绕指柔的代码。这篇文章会持续更新~

2015-12-23 14:18:23 459

转载 编程的智慧

编程是一件创造性的工作,是一门艺术。精通任何一门艺术,都需要很多的练习和领悟,所以这里提出的“智慧”,并不是号称三天瘦二十斤的减肥药,它并不能代替你自己的勤奋。然而我希望它能给迷惑中的人们指出一些正确的方向,让他们少走一些弯路,基本做到一分耕耘一分收获。反复推敲代码既然“天才是百分之一的灵感,百分之九十九的汗水”,那我先来谈谈这汗水的部分吧。有人问我,提高编程水平最有效的办法是什么

2015-11-24 13:50:10 677

转载 获取Android屏幕尺寸与密度

术语和概念屏幕尺寸屏幕的物理尺寸,以屏幕的对角线长度作为依据(比如2.8寸,3.5寸)。简而言之,Android把所有的屏幕尺寸简化为四类:超大、大、正常、小。 (small, normal, large, and extra large.)程序可以针对这四种尺寸的屏幕提供三种不同的布局方案,然后系统会负责把你的布局方案以合适的方式渲染到对应的屏幕上,这个过程是不需要程序员

2015-11-08 15:11:24 2862

原创 Android开发模板------常用工具类(方法)

Android常用工具类(方法)大全package com.example.thinkpad.recyclerviewdemo;import android.app.Activity;import android.content.Context;import android.content.Intent;import android.content.pm.PackageInf

2015-10-15 22:47:31 776

转载 Android开发模板------RecyclerView简介

官方介绍 RecyclerView 是 ListView 的升级版本,更加先进和灵活。那么有了ListView、GridView为什么还需要RecyclerView这样的控件呢?整体上看RecyclerView架构,提供了一种插拔式的体验,高度的解耦,异常的灵活,通过设置它提供的不同LayoutManager,ItemDecoration , ItemAnimator实现令人瞠目的效果。

2015-10-15 16:50:44 545

转载 Android开发模板------SlidingPaneLayout、Navigation Drawer的基本介绍

1、SlidingPanelLayout简介SlidingPaneLayout是系统支持的高级控件。它支持左右滑动菜单,和SlidingMenu相似。SlidingPaneLayout也是直接继承于ViewGroup,所以是当做容器类使用的,通常是和Fragment一起使用的。SlidingPaneLayout是一个水平的多层的布局控件,左侧或第一个视图是导航层,其他的为内容视图.Sl

2015-10-15 16:08:35 769

原创 仿微信控制输入法的显示和隐藏

最近有个需求,就是输入法底部添加一个菜单栏,比如有个Button,可以切换输入法面板和自定义表情面板。如下图:点击编辑框跳出该界面。点击表情,切换本地表情界面:具体实现如下:该界面的布局为:<com.hotpic.cn.widget.ResizeLayout xmlns:android="http://schemas.android.com/apk/res/andr

2015-09-17 15:39:31 1753

转载 android数据管理DataCleanManager

import java.io.File;import java.math.BigDecimal;import android.content.Context;import android.os.Environment;import android.text.TextUtils;public class DataCleanManager { /** * * 清除本应用内部

2015-08-10 09:41:36 1538

原创 启动自己浏览器app的方法

二维码扫描后有个返回的url,点击该url的时候会弹出一个其他应用打开的列表。如果想在该列表中添加自己的app,需要在manifest.xml中需要打开Activity的配置中添加: 这样就可以显示

2015-07-22 09:45:28 692

转载 java 堆和栈

Java的堆是一个运行时数据区,类的(对象从中分配空间。这些对象通过new、newarray、anewarray和multianewarray等 指令建立,它们不需要程序代码来显式的释放。堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,因为它是在运行时 动态分配内存的,Java的垃圾收集器会自动收走这些不再使用的数据。但缺点是,由于要在运行时动态分配内存,存取

2015-07-20 15:36:37 454

转载 SrollView中嵌套GridView冲突

Activity里放了好几个GridView,导致页面很高,所以需要用SrollView进行滑动,这个时候问题出来了。首先是编译器给出了警告:The vertically scrolling ScrollView should not contain another vertically scrolling widget (GridView),意思就是在ScrollView中不能嵌套具有滑动特性的

2015-07-20 14:09:13 655

原创 Android开发模板------ViewPager(二)FragmentPagerAdapter的简介

FragmentPagerAdapter是PagerAdapter中的其中一种实现。它将每一个页面表示为一个 Fragment,并且每一个Fragment都将会保存到fragment manager当中。而且,当用户没可能再次回到页面的时候,fragment manager才会将这个Fragment销毁。这种pager十分适用于有一些静态fragment,例如一组tabs,的时候使

2015-07-17 15:38:02 831

font awesome

Font Awesome gives you scalable vector icons that can instantly be customized — size, color, drop shadow, and anything that can be done with the power of CSS.

2015-12-28

图片处理Demo

android图片的各种处理:放大缩小,旋转,合成,置灰,倒影,圆角,涂鸦,剪切等

2015-08-27

android DownloadManager示例

DownloadManager是系统开放给第三方应用使用的类,包含两个静态内部类DownloadManager.Query和DownloadManager.Request。DownloadManager.Request用来请求一个下载,DownloadManager.Query用来查询下载信息,这两个类的具体功能会在后面穿插介绍。

2015-06-29

loader contentprovider优化Listview

使用Loader+contentProvider删除修改ListView 并替换notifyDataSetChanged 刷新 该资源代码是网上别人的代码 做了些简单的修改 这是网上大牛写的 做了微改并上传以便未来使用

2015-05-12

ListView左滑Item出现菜单

非常好用的东西,模仿QQ消息列表左滑出现两个菜单的Demo。可以直接拿来使用。

2015-05-11

按字母顺序选择城市

可以通过字母选择城市,比如获取天气数据的时候,需要选择对应的城市等等。程序是借鉴网络上修改而成的,可以直接运行。

2015-05-07

开源AndroidSideMenu

AndroidSideMenu能够让你轻而易举地创建侧滑菜单。需要注意的是,该项目自身并不提供任何创建菜单的工具,因此,开发者可以自由创建内部菜单。

2015-02-12

android网络通信框架Volley

Volley是Android平台上的网络通信库,能使网络通信更快,更简单,更健壮。 olley特别适合数据量不大但是通信频繁的场景

2015-02-02

技术交流PPT模板

技术交流PPT模板。网上收集而来的,留着以后使用。

2015-01-30

DragSortListView

Android 可拖拽排序列表的listview (DragSortListView)Android DragSortListView 支持 拖拽排序和左右滑动删除的listview 扩展. DragSortListView适用于带有任何优先级的列表:收藏夹、播放列表及清单等,算得上是目前Android开源实现拖动排序操作最完美的方案。 1、完美的拖拽支持; 2、在拖动时提供更平滑的滚动列表滚动; 3、支持每个ListItem高度的多样性 4、公开startDrag()和stopDrag()方法; 5、有公开的接口可以自定义拖动的View。

2015-01-06

Android利用广播BroadCast监听网络的变化

Android利用广播BroadCast监听网络的变化。该Demo是网络资源整理,可以正常运行。你可以看到内部接口的使用,广播机制的使用,网络连接状态的检查等。

2014-12-26

Android回调函数的例子

Java回调函数的理解。通过在Android小程序下运行一个Java回调程序。代码内部有简单讲解。

2014-12-26

2014阿里巴巴笔试题

2014阿里巴巴笔试题。答案在最后,个别不会,请见谅,有错请指正。

2014-07-24

上滑停靠顶端的悬浮框

向上滑动的时候,其中控件不会跟着向上移动,而会停留在顶部,成为悬浮框。类似美团和大众点评抢购控件一样会停止在顶端。

2014-07-11

嵌入式C语言设计

嵌入式系统技术丛书 机械工业出版社 艾克武等译

2013-04-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除