自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 Volley源码阅读(0)

在RequestQueue类中1、首先看add方法 if (!request.shouldCache()) { mNetworkQueue.add(request); return request; }在他的add方法中会判断是否需要缓存.shouldCache(),需要则添加到mNetworkQueue网络处理队列,至此返回 否则进

2016-11-20 00:03:38 405

原创 TS测试字符串

用typescript写这样一个程序1、我会传入一个cmd,和一个action,他们都是字符2、一个cmd会对应一个字符串,类似这种字符串 "start,end,app(icon(xx1,xx2),info),otherinfo",字符串的格式是逗号分开,括号里的内容属于括号前面的字符串3、现在action会对应cmd字符串里的一个子集,例如,action 为 “action1”时,仅仅保留 start,end,app 和app里面的 icon 里的xx2,也就是结果是 "start,end,app

2023-06-11 19:39:00 224

原创 【无标题】

上面说的“仅仅保留 start,end,app 和app里面的 icon 里的xx2”这个条件是动态输入的,与action是关联的,也就是类似action == action1时,仅仅保留 start,end,app 和app里面的 icon 里的xx2,action == action2时,仅仅保留 start,end 和app里面的 icon 里的xx1,等等,请参考类似使用注解等方式,在编码时,就能确定action对应的字符串要保留哪些。最后,将过滤后的子项重新连接为字符串,并返回结果。

2023-06-11 19:37:35 59

原创 尝试实现一个图片加载框架PicLoad

尝试实现一个图片加载框架,并借此契机学习Google的Glide图片加载框架。基本思路: //TODO 现在只是一个小demo,等对glide有更多了解的时候再来填坑代码:https://github.com/RosesJack/PicLoad

2017-01-16 00:27:58 435

原创 Android远程服务AIDL的使用以及配合接口回调使用

远程服务的接口回调Android 开发中的一些场景需要用到进程间通信,一般使用AIDL(Android Interface Definition Language)。使用AIDL绑定一个远程服务,远程服务可以被其他应用绑定,绑定后可以使用定义在AIDL接口中的方法来进行一些操作,远程服务会另外开启一个进程。1、简单使用1.1 就像使用普通的服务一样,首先要创建一个服务类的子类,继承Service。

2017-01-09 01:02:15 8686 2

原创 Task&Activity&ActivityRecord...

1、Activity 2、Stack 3、Task :一个Task是一系列Activity的集合,这个集合是以堆栈的形式来组织的,遵循后进先出的原则。事实上,Task是一个非常复杂的概念,有兴趣的读者可以到官网http://developer.android.com/guide/topics/manifest/activity-element.html查看相关的资料。 4、Ac

2016-12-28 18:53:48 612

原创 Android 中查看logcat的另一种方式

另一种看Android中logcat的方式用adb 命令查看logcat用sublime查看生成的log文件 改变查看形式: http://www.tuicool.com/articles/fYf2au61、写一个dat批处理文件生成log文件@echo offecho. (y:生成到屏幕,n:生成log文件)set /p createType=set currentType=yIF

2016-12-20 20:19:17 1775

原创 了解RenderScript源码(0)

1、RenderScript的创建create()方法最后都会调用这个方法 RenderScript.create(Context ctx, int sdkVersion, ContextType ct, int flags); flag:CREATE_FLAG_LOW_POWER>省电,CREATE_FLAG_LOW_LATENCY>高性能 ,`CREATE_FLAG_NONE:普通的,一般

2016-12-13 18:42:05 469

原创 Bitmap的常见问题

在Android中对图片操作一般都会用到Bitmap类,使用的时候出现的一些常见问题: 内存泄漏 或 OOM(主要问题) 图片格式设置问题:ALPHA_8、ARGB_4444、ARGB_8888、RGB_565 Bitmap的获取问题

2016-12-12 08:53:31 500

原创 Android M 运行时权限管理

Android M运行时权限管理

2016-12-08 14:36:19 416

原创 尝试Fragment与ViewPager结合的最佳实践

ViewPager与Fragment用到的比较多,为避免使用的时候遇到的一些常见问题,这里尝试实现一个比较方便通用的实践。

2016-12-03 01:31:21 558

原创 Dagger2的使用(3)

用Dagger2实现Application同生命周期的单例

2016-12-01 02:08:58 238

原创 1、Retrofit+Okhttp的基本使用

1、导入必要jar包 compile ‘com.squareup.retrofit2:retrofit:2.0.0-beta4’//Retrofit2所需要的包 compile ‘com.squareup.retrofit2:converter-gson:2.0.0-beta4’//ConverterFactory的Gson依赖包 compile ‘com.squareup.

2016-12-01 01:49:33 1311

原创 Dagger2的使用(2)

dependence 关键字的使用依赖注入父类引用指向子类对象

2016-11-30 01:56:26 233

原创 Dagger2的使用(1)

Dagger2 的其他使用场景应用于多中Provider父类引用指向子类对象依赖反转

2016-11-30 00:55:20 260

原创 Dagger2的使用(0):

Dagger2的最简单使用

2016-11-29 01:57:22 270

原创 Retrofit+okhttp基本使用

1、导入必要jar包 compile ‘com.squareup.retrofit2:retrofit:2.0.0-beta4’//Retrofit2所需要的包 compile ‘com.squareup.retrofit2:converter-gson:2.0.0-beta4’//ConverterFactory的Gson依赖包 compile ‘com.squareup.

2016-11-28 00:14:59 639

原创 Otto总线的基本使用

Otto,与EventBus的使用相似,能在线程间传递数据 一般可以用来代替handler进行数据的传递,可以进行一对多的数据发送,这可以满足有些应用场景。其中Bus对象可以定义为全局的。一般使用步骤1. 注册接受者,接受者一般可以在Activity或Fragment 接受者接受数据,用@Subscribe注解 注解下的方法接受的参数就是发布者发送的参数,参数类型要相同或是发布者的父类pu

2016-11-17 20:59:11 372

原创 EventBus的简单实用(使用多线程)

作用 代替Handler、接口函数,Broadcast、Intent进行数据传输。使用方法 github下载源码框架,进行接受者类里面需要添加的以下方法: MsgEvent2 类可以是继承于Object的类,用于存储需要传递的数据(事件2),区别不同时间用instanceof 来区别“onEvent(MsgEvent2 msg) //异步调用,与post线程不同,新开一个线程onEvent

2016-11-03 11:00:43 1407

原创 Java多线程同步简单了解

控制某个方法允许并发访问线程的个数:Semaphore semaphore = new Semaphore(5,true);//最多5个线程访问 写在被线程调用的方法中> semaphore.require()-->申请一个线程的请求>semaphore.release()-->释放一个线程的请求多个线程共享一个变量的值不发生冲突的实现:(利用Semaphore来请求是否允许执行通过阻塞线程实

2016-11-02 17:17:07 349

原创 Fresco图片加载框架的简单实用

简单实使用步骤:* 布局文件中创建SimpleDraweeView控件,即显示图片的控件* 代码中找到控件,在Application的oncreate方法中调用方法 Fresco.initialize(this);初始化或者在Activity的setContentView()前调用* 利用建造模式创建出 DraweeController 对象DraweeController controlle

2016-11-02 01:32:37 373

原创 内容提供者的基本使用

内容提供者ContentProvider的使用: 1、需要暴露数据的应用程序中要写一个类来继承ContentProvider类,重写里面的增删改查来调用应用程序里面的数据库。 2、这个类中需要来匹配访问本内容的程序传递过来的Uri来判断是否符合要求,利用new UriMatcher(设置如果没有匹配返回的默认值),对象调用add(authorities:清单文件中的主机名,口令,匹配成功后

2016-10-09 09:08:35 2034

原创 隐式意图与显式意图的基础

隐式意图: 1、 一般用于打开其他应用程序的activity,或自己的activity需要暴露给其他应用程序打开,打开者只需要在代码中配置action和category以及data就可以打开了 2、隐式意图的被打开者一般都需要在清单文件中activity节点中配置意图过滤器Intent的隐式调用: 1、另外自定义一个activity,在清单文件中定义该activity的时候在其子节点

2016-10-09 09:01:59 498

原创 XMPP的基本使用以及Android即时通讯的基本思路

-----开源框架XMPP的使用:1.创建连接通道conn = new XMPPConnection();2.conn.login(用户名,密码);  进行登录,抛出异常则登录失败,否则登录成功。3.conn.getRoster()得到Roster对象,该对象包含通讯消息的各种内容。  roster,getEntry(address);单个联系人信息 (address是Stri

2016-10-09 00:10:55 1013

转载 安卓开发遇到的问题1--2016.3.17

1、activity类应该与R类文件在同一个包下面,否则会出现R下面总是出现红色波浪2、activity如果放在是自己新建包的下面的话,那么在Mainfest中注册activity的时候不能这样写:android:name=".FirstActivity",而要写成:android:name=com.example.app2.FirstActivity;否则在运行的时候,logcat中会有错误

2016-03-17 21:24:15 250

转载 安卓开发初期遇到的错误以及解决办法1--2016.3.17

1、在写一个简单程序的时候,没有把activity放在与R文件同一个包下面,导致在activity中写R的时候总是出现错误(比如需要添加布局到activity中的时候,R的下面有红色波浪线)。2、用eclipse创建Android工程的时候没有勾选自动创建的activity,而自己新建包的时候,导致的1中的问题。另外,在这种方法下写下了基本的HelloWorld后再虚拟机中运行的时候,logc

2016-03-17 21:04:53 276

原创 欢迎使用CSDN-markdown编辑器

用于用户登录的后台/**直接用public Object 类名(参数,参数,。。。){//相当于一个方法,返回值类型是Object}selectedUser=loginUserService.selectByWxLoginId(User) //以用户微信帐号为搜索关键字,用selectedUser接收搜索结果if (log.isDebugEnabled()) { log.de

2015-12-04 11:33:02 197

空空如也

空空如也

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

TA关注的人

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