自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (14)
  • 收藏
  • 关注

原创 Android 基础知识面试相关总结

做了一年多的android应用开发,准备换个工作环境,结果在面试中却成了一个典型的面霸,两周的十个工作日里,笔试+面试了很多家公司,有得也有失。在这些面试中学到了不少东西!下面把我的android面试经历中被问到的一些常见的问题给大家分享一下,以后有些常见的问题会及时更新。有些不足和不称意的地方请大家多多指教。网上有的一般比较分散不是很全不容易记,看起来也比较浪费时间。这里简单整理一下和大家来分享...

2017-05-22 16:49:55 1162 2

原创 Android 重点难点知识点总结回顾

1. 必须掌握的最重要的技能-自定义控件     自定义view也有几种实现类型,分别为继承自View完全自定义、继承自自现有控件(如ImageView)实现特定效果、继承自ViewGroup实现布局类,在其中比较重要的知识点就是View的测量与布局、View的绘制、处理触摸事件、动画等;  对于继承自view的控件核心的步骤分别为尺寸测量与绘制,对应的函数是onMeasure、onDraw。因为...

2018-03-24 23:18:33 2397

原创 Android Studio如何获取SHA1或MD5(百度地图API开发中用到的SHA1)

打开项目, 将左侧项目目录结构排序方式选择为Android 如下图操作 在 Android Studio 2.2版本以后, 按经验教程步骤操作依然看不到的SHA1和MD5, 怎么办怎么办? 别担心, 这时候我们点击一下这个小按钮

2017-06-29 14:40:00 585

原创 React Native开发写的JS和React入门知识

JS中是会识别为false的值:undefined null 0 NaN 空字符串 (“”)这样的方法是定义在全局的,当在类中定义的时候,不需要funciton关键字 通过this.functionName来访问 class JSReactBasics extends Component { render() { return ( this.backgorundClicke

2017-05-18 18:05:11 671

原创 js正则表达式匹配小数点后两位

function isDouble(value) { return /^(([1-9][0-9])|(([0].\d{0,2}|[1-9][0-9].\d{0,2})))$/.test(value) } 数字校验(项目中用于校验金额的): 任意正整数,正小数(小数位不超过2位) 注意!! 其中d{0,2}是关键,表示小数点后可以输入1位也可以输入2位, 搜的大部分网上都写的{1

2017-05-04 21:02:53 11025 2

原创 华为nexus 6p,联想900等 android手机加载webview 显示空白解决方案

Android]用WebView访问证书有问题的SSL网页android #webviewAug 29, 2013在WebView里加载SSL网页很正常,也没什么难度。但如果要加载的SSL页面的证书有问题,比如过期、信息不正确、发行机关不被信任等,WebView就会拒绝加载该网页。PC上的浏览器会弹出证书错误的对话框,提示你是否要无视错误继续浏览。实际上在WebView里也可以这样做,以实现加载证书

2017-04-18 20:39:10 2558

原创 文件上传 导入所需的jar包启动服务后依然报错找不到jar包里的类 ClassNotFoundException

问题报错:报java.lang.ClassNotFoundException: org.apache.commons.fileupload.FileItemFactory 浏览器上报错404路径找不到,这里报404是因为所引的jar包没有找到 解决了很长时间,纠结的淡疼,刚开始自学,初学者勿喷,哈哈。还是没有经验解决办法 1. 首先确认下那个jar里有FileItemFactory这个类不

2017-03-29 16:21:02 5424 1

原创 Mac下Intellij IDea15 破解方法及配置Tomcat发布Java Web项目

(一)首先下载Mac下Intellij IDea15的安装包破解方法如下: 1下载解压 JetbrainsCrack.jar。 2到Application 中,找到IntelliJ IDEA ,右键显示包内容,将上面解压后的.jar文件复制 到 /Applications/IntelliJ IDEA 15.app/Contents/bin/ 目录下; 3右键显示包内容,编辑 /Applicat

2017-03-23 12:18:07 1046

原创 Android studio gradle方式批量快速打包整理

利用gradle 上线打包方式总结:1 as打包 主界面右边Gradle–>项目目录–>build–>双击assembleRelease查看日志是否打包成功。 直接上图:看日志是否打包成功,如果打包失败可以尝试使用命令行打包。之前打包的react native的项目,使用as打包失败,原因:as里面好像找不到node环境,所以还是到命令行执行打包。2 命令行打包 需要到项目的所在目录rea

2017-02-07 11:09:23 4288 1

原创 自定义dialog宽度全屏

AlertDialog.Builder dialog = new AlertDialog.Builder(UnbindBankCardActivity.this, R.style.Dialog_FS);View view = View.inflate(UnbindBankCardActivity.this, R.layout.view_chakanshilitupian_alertdialog,

2016-08-29 15:55:13 4180

翻译 开启多线程退出后终止异步任务

AsyncTask.cancel()的结束问题实际项目中有这么一个问题,用户进入详情界面,那么我们就要网络加载数据并展现在UI上,这个加载用线程或者异步。这里就拿项目中统一用异步任务来获取网络数据把。用户可能会有这么一个操作,它在一个商品(说说等)列表中,点击一个列表项,进入到相应的详情界面,这时候,我们会开启一个异步任务来获取网络数据,但是网络差的情况下, 用户可能就不愿意等了,立马

2016-08-22 09:57:42 2157

原创 Android 测试用例的使用

测试是软件工程中一个非常重要的环节,而测试用例又可以显著地提高测试的效率和准确性。测试用例其实就是一段普通的程序代码,通常是带有期望的运行结果的,测试者可以根据最终的运行结果来判断程序是否能正常工作。  我相信大多数的程序员都是不喜欢编写测试用例的,因为这是一件很繁琐的事情。明明运行一下程序,观察运行结果就能知道对与错了,为什么还要通过代码来进行判断呢?确实,如果只是普通的一个小程序,编写

2016-06-20 16:16:16 1491 1

原创 多线程并发操作数据库以及数据库升级

1 多线程并发操作数据库会导致数据库异常:         例1:cursor会为空的情况,打印cursor的时候不为空,使用的时候就为空了,原因考虑是,多线程操作数据库导致数据库异常         例2:提示正在尝试打开一个已经被关闭的数据库:在多线程访问数据库的时候会出现这样的异常: java.lang.IllegalStateException: Cannot perform th

2016-06-20 09:29:02 5572

转载 图片缓存之内存缓存技术LruCache,软引用(A)

每当碰到一些大图片的时候,我们如果不对图片进行处理就会报OOM异常,这个问题曾经让我觉得很烦恼,后来终于得到了解决,那么现在就让我和大家一起分享一下吧。这篇博文要讲的图片缓存机制,我接触到的有两钟,一种是软引用,另一种是内存缓存技术。先来看下两者的使用方式,再来作比较。除了加载图片时要用到缓存处理,还有一个比较重要的步骤要做,就是要先压缩图片。1、压缩图片至

2016-06-14 09:49:44 381

原创 AIDL实现跨进程通信

AIDL的全称是什么?如何工作?能处理哪些类型的数据?AIDL的英文全称是Android Interface Define Language当A进程要去调用B进程中的service时,并实现通信,我们通常都是通过AIDL来操作的A工程: 首先我们在项目所在的目录下建一个包 (包名自己指定),在包中创建一个IServer.aidl文件 如下图中标注1所示 ADT插件会在gen目录下自动生成一个IS

2016-06-02 17:27:47 455 2

原创 Android 观察者模式

观察者模式:观察者和被观察者1.观察者接收到消息后,即进行update更新操作,对接收到的信息进行处理。   一个类如果实现观察者的接口,则只需要实现一个update()方法,注意还需要在此类中添加一个被观察者(.addObserver(this);)this指实现了观察者接口的对象观察者模式有什么优点呢: 观察者和被观察者之间是抽象耦合的,不管是增加观察者还是被观察者都非

2016-05-31 23:26:05 723 1

转载 App退出后,退出所有的Activity

在Android中,如果想退出Android程序,一般都是调用finish()、System.exit(0)、android.os.Process.killProcess(android.os.Process.myPid())等方法来实现退出程序功能,可是在实际开发中,并不能达到完全退出应用程序的效果,这是因为调用finish()、System.exit(0)、android.os.Process

2016-05-31 20:50:52 458 2

原创 混淆apk:Android中使用eclipse混淆apk和studio混淆app的不同

使用studio混淆apk的步骤:在配置文件proguard-project.txt中写好混淆规则,不同的SDK有不同的混淆规则,按照正常打包的流程直接最后选中这个配置文件就可以混淆了。如下图: 使用eclipse混淆apk步骤:在配置文件proguard-project.txt中写好混淆规则,然后在project.properties文件中把混淆的配置文件proguard-project.txt引

2016-05-11 15:20:40 1323 1

原创 Android中自定义ProgressDialog显示位置

1、一般情况下,系统默认的Dialog显示位置为屏幕居中: pbDialog = new ProgressDialog(MainActivity.this); pbDialog.setMessage("请稍等,加载中"); pbDialog.show();2、设置Dialog显示位置在屏幕底部: pbDialog = new ProgressDialog

2016-05-10 18:28:33 2307 2

原创 Android 开发环境jdk配置 执行javac提示不是内部或外部命令解决方法

'JAVAC' 不是内部或外部命令,也不是可运行的程序 或批处理文件。问题解决方法分享!'JAVA' 不是内部或外部命令,也不是可运行的程序 或批处理文件解决办法相似。原因一:没有安装jdk,只安装了jre1jdk1.7.0_60+jre才是完整的,如果没有安装jdk的话,在cmd里边输入javac就会提示”'JAVAC' 不是内

2016-05-09 11:20:46 4263 2

原创 使用Android Studio打开eclipse项目以及打开网上下载的studio项目报错解决办法

第一次使用markdown来写博客,不熟悉使用markdown用法的可以参考视频教程(http://edu.csdn.net/course/detail/508/)下面来介绍一下标题的题目,之前刚接触Android Studio也是一头雾水,在此写下来和大家分享:】(一) . Andriod Studio下载网址:http://www.androiddevtools.cn/(好多最新开发工具)可以找

2016-05-09 01:31:00 1769 1

翻译 Android高效加载大图、多图解决方案,有效避免程序OOM

原文出自:http://blog.csdn.net/guolin_blog/article/details/9316683修改:文章最后添加异步任务中添加获取非常简单地将任意一张图片压缩成100*100的缩略图的方法高效加载大图片我们在编写Android程序的时候经常要用到许多图片,不同图片总是会有不同的形状、不同的大小,但在大多数情况下,这些图片都会大于我们程序所需要

2016-05-07 17:59:28 377 1

转载 Android开发:app工程集成银联支付功能(服务器端)

因为是自己开发了一个app应用,没资格去申请微信支付和支付宝支付,于是就采用了银联支付功能,银联支付分为了两种环境:测试环境和生产环境,一般前期开发的时候都是使用测试环境,数据都是测试数据,不会发生真实交易。第一次做Android项目+IDE为Android Studio+第一次集成支付功能,所以个人觉得整个集成过程可能有点复杂,而且银联支付产品众多:网关支付产品、手机控件支付、手机网页支付等等,

2016-05-07 13:30:32 1902 1

转载 带你实现开发者头条APP(五)--RecyclerView下拉刷新上拉加载

转载请注明出处:http://blog.csdn.net/lowprofile_coding/article/details/51321896一 、前言最近实在太忙,一个多礼拜没有更新文章了,于是今晚加班加点把demo写出来,现在都12点了才开始写文章。1.我们的目标把RecyclerView下拉刷新上拉加载更多加入到我们的开发者头条APP中。2.效果图3.实现步骤

2016-05-07 13:27:28 453 1

转载 android图片轮播效果,RollViewPager的简单使用

图片轮播算是我们用的比较多的一个功能,我之前也写过类似的文章(http://blog.csdn.net/double2hao/article/details/48896297),但是说实话自己写并不是特别方便,而且往往bug会比较多。而在github上有一些大神专门写了viewpager的轮播框架并且开源,供大家学习参考,这篇博客就教大家如何简单地使用开源框架RollViewPager。

2016-05-07 12:39:58 639 1

原创 图像获取(根据路径或从相册获取后从uri获取路径)、压缩(参数路径或Bitmap)、旋转角度、图像保存

之前做过很多图像处理的项目、涉及到图像处理包括图像获取(根据路径或从相册获取后从uri获取路径)、压缩(参数路径或Bitmap)、旋转角度、图像保存等等。。。整理一下,方便以后拿过来就用图像的压缩,比如身份证图像指定压缩到100KB以内,为了精确则采用直接循环判断压缩字节数组。全部方法代码如下:import android.content.ContentResolver;im

2016-05-06 22:02:40 2050 2

转载 网络爬虫

★网络爬虫是什么网络爬虫又名网络蜘蛛,蚂蚁(随你叫咯)。其实就是一种自动浏览网页并采集你所需要的信息的程序。既然叫爬虫,那我就把他当虫子看。(没有为什么!)★为什么需要爬虫问我为什么?其实我好想说哪有那么多为什么!!! 试想一下:现在你正在做数据统计,你可以去百度谷歌出好多数据,然后把这些数据存到excel中去分析。老板说只要三条数据。切、嗖 easy。

2016-05-06 21:32:57 505 1

转载 android中图片的三级cache策略(内存、文件、网络)

1. 简介现在android应用中不可避免的要使用图片,有些图片是可以变化的,需要每次启动时从网络拉取,这种场景在有广告位的应用以及纯图片应用(比如百度美拍)中比较多。现在有一个问题:假如每次启动的时候都从网络拉取图片的话,势必会消耗很多流量。在当前的状况下,对于非wifi用户来说,流量还是很贵的,一个很耗流量的应用,其用户数量级肯定要受到影响。当然,我想,向百度美拍这样的应用,必

2016-05-06 15:56:29 344 1

原创 网络请求 多次请求

发送网络请求,一次请求不到数据执行多次请求时,之前用过Timer和TimerTask,感觉有点麻烦,后来发现使用代码块更加方便高效。比如请求第一次请求没有成功再次请求比如最多执行8次,可以使用代码块来操作。直接上代码,代码如下: int index = 0; w: while (true) {

2016-05-06 15:05:40 962 1

原创 sublime text2安装及插件(window+Mac)使用方法

1.1下载Sublime Text2版本的开发工具(可以下载中文版)(下载时注意自己电脑是64位系统还是32位的各自对应)1.2、Ctrl+如图所示的符号会弹出一个控制台,在界面底部会显示出命令行1.3、将以下代码粘贴到底部命令行并回车:import urllib2,os;pf='Package Control.sublime-package';ipp=sublime.inst

2016-05-06 14:37:52 1382 1

原创 Android客户端与java服务端AES加解密

AES加密分两大块来说吧(仅在客户端加解密和客户端加密服务端解密),(一)针对于android客户端加解密来说,比如登陆时候将用户名和密码存储到sharedpreferences 中对于解密位数没有要求,8位、16位、32位都可以成功加解密代码如下(可以直接作为一个utils封装成一个jar来调用):(二)public class AESUtil {   public static S

2016-05-04 10:24:30 1545 1

原创 Android子线程中处理吐司的情况

子线程中处理一些网络请求或吐司等操作

2015-09-23 17:38:10 3187 1

Android DrawerLayout 侧滑抽屉全屏显示、点击长按界面弹出抽屉的bug源码修改

DrawerLayout全屏手动侧滑(不仅仅局限于点击按钮弹出抽屉)、抽屉全屏显示、点击长按界面弹出抽屉的bug源码修改,侧滑内容为fragment可以外部设置加载数据。

2022-05-19

videoUp.zip

Android开发 视频压缩 上传

2021-10-11

前端H5获取Android原生相册文件和拍照功能直接重新WebView的方法即可

前端H5获取Android原生相册文件和拍照功能,比如H5的<input type>类型,ios不用做任何处理,而Android需要对webview重新

2019-03-06

仿照淘宝京东侧滑单选多选菜单

类似于购买商品弹窗选择商品类型颜色、大小、规格等等,使用popwindow仿照淘宝京东的侧滑单选多选效果

2019-03-06

命令行工具在VasDolly.jar文件夹下获取添加渠道信息

命令行工具即:jar文件下`VasDolly.jar`,可以通过help查看具体命令

2018-11-27

mac环境混淆apk、dex2jar、jd-dui下载和使用

使用步骤 1、将下载的dex2jar进行解压缩 2、这里提供很多功能,Windows系统调用bat文件,而MAC系统中则调用sh脚本即可。 2.1将apk文件后缀名直接改为.zip,并解压。得到其中的classes.dex文件 ,它就是java源代码经过编译再通过dx工具打包而成的。 2.2将classes.dex文件复制到步骤一解压的dex2jar的目录中。 2.3命令行下定位到dex2jar目录,运行 sudo sh d2j-dex2jar.sh classes.dex 运行命令如果报错d2j-dex2jar.sh: line 36: ./d2j_invoke.sh: Permission denied 则执行sudo chmod +x d2j_invoke.sh 之后再执行sudo sh d2j-dex2jar.sh classes.dex 3. 执行完步骤2后 会在目录下生成classes-dex2jar.jar文件 4.使用jd-gui查看生成的jar包,打开下载下来的jd-gui点击屏幕左上角File-->Open打开步骤3的 文件 亲测查看类和方法都被混淆成功

2018-09-10

强大的RecyclerAdapter框架

强大的RecyclerAdapter框架(什么是RecyclerView?),它能节约开发者大量的开发时间,集成了大部分列表常用需求解决方案。为什么会有它?该框架于2016年4月10号发布的第1个版本到现在已经一年多了,经历了800多次代码提交,140多次版本打包,修复了1000多个问题,获得了9000多star,非常感谢大家的使用以及反馈 优化Adapter代码 和原始的adapter相对,减少70%的代码量。 框架引入 优化Adapter代码 和原始的adapter相对,减少70%的代码量。 添加Item事件 Item的点击事件 Item的长按事件 Item子控件的点击事件 Item子控件的长按事件 添加列表加载动画 一行代码轻松切换5种默认动画。 添加头部、尾部 一行代码搞定,感觉又回到ListView时代。 自动加载 上拉加载无需监听滑动事件,可自定义加载布局,显示异常提示,自定义异常提示。同时支持下拉加载。 分组布局 随心定义分组头部。 多布局 简单配置、无需重写额外方法。 设置空布局 比Listview的setEmptyView还要好用。 添加拖拽、滑动删除 开启,监听即可,就是这么简单。 树形列表 比ExpandableListView还要强大,支持多级。 自定义ViewHolder 支持自定义ViewHolder,让开发者随心所欲。 扩展框架 组合第三方框架,轻松实现更多需求定制。

2017-12-08

Material Design + MVP + RxJava2 + Retrofit + Dagger2 + Realm + Glide + Kotlin

初始化的简单的app架构,基于Kotlin+ Material Design + MVP + RxJava2 + Retrofit + Dagger2 + Realm + Glide 使用RxJava配合Retrofit2做网络请求 使用RxUtil对线程操作和网络请求结果处理做了封装 使用RxPresenter对订阅的生命周期做管理 使用RxBus来方便组件间的通信 使用RxJava其他操作符来做延时、轮询、转化、筛选等操作 使用okhttp3对网络返回内容做缓存,还有日志、超时重连、头部消息的配置 使用Material Design控件和动画 使用MVP架构整个项目,对应于model、ui、presenter三个包 使用Dagger2将M层注入P层,将P层注入V层,无需new,直接调用对象 使用Realm做阅读记录和收藏记录的增、删、查、改 使用Glide做图片的处理和加载 使用Fragmentation简化Fragment的操作和懒加载 使用RecyclerView实现下拉刷新、上拉加载、侧滑删除、长按拖曳 使用x5WebView做阅览页,比原生WebView体验更佳 使用SVG及其动画实现progressbar的效果 使用RxPermissions做6.0+动态权限适配

2017-11-08

Android对话框库(PopupWindow Dialog等)

一个强大的Android对话框库,简化自定义对话框.支持2.2+. 内置Dialog,方便直接使用 丰富的内置动画库,方便直接使用 支持快速自定义Dialog 支持快速自定义Popup 支持自定义Dialog动画 git 相关链接 https://github.com/H07000223/FlycoDialog_Master/blob/master/README_CN.md apk 地址 https://fir.im/mj9p

2017-08-25

Myeclipse下搭建SSM框架简单整合例子

MyEclipse Spring+SpringMVC+MyBatis框架整合 详细文档请参考http://blog.csdn.net/zhshulin/article/details/37956105/

2017-04-11

PulltoRefreshListview

开源插件 实现向上刷新 向下加载 pulltorefreshlistview

2016-08-03

ViewHolder和Adapter打造万能适配器(优化)

针对项目中涉及到多个ListView,GradView需要声明多个Adapter的情况,此工具类对其进行的封装抽象,Adapter代码中一行代码即可实现item的控件获取以及数据的设置,极大地提高了开发人员的工作效率。 思路共用部分进行封装,抽象到父类,在父类中进行获取处理,并提供给子类方法,子类通过方法的参数获取到父类中处理后的对象,子类中拿过来后直接使用.

2016-06-24

ViewHolder Adapter打造万能适配器

针对项目中涉及到多个ListView,GradView需要声明多个Adapter的情况,此工具类对其进行的封装抽象,Adapter代码中一行代码即可实现item的控件获取以及数据的设置,极大地提高了开发人员的工作效率。 思路共用部分进行封装,抽象到父类,在父类中进行获取处理,并提供给子类方法,子类通过方法的参数获取到父类中处理后的对象,子类中拿过来后直接使用.

2016-06-24

httpclient-4.3.5.jar

httpclient-4.3.5.jar

2016-05-18

空空如也

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

TA关注的人

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