自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ljp的博客

专注Android开发,关注最新的Android技术

原创 2018面试知识点整理

我的简书:https://www.jianshu.com/u/c91e642c4d90 我的CSDN:http://blog.csdn.net/wo_ha 我的GitHub:https://github.com/chuanqiLjp 我的个人博客:https://chuanqiljp.github.io/目录(手机浏览可以进行跳转,PC用户请使用CSDN自动生成的目录...

2018-03-03 21:30:08 4174

原创 面试中链表的常见5中操作

我的简书:https://www.jianshu.com/u/c91e642c4d90我的CSDN:http://blog.csdn.net/wo_ha我的GitHub:https://github.com/chuanqiLjp我的个人博客:https://chuanqiljp.github.io/版权声明:商业转载请联系我获得授权,非商业转载请在醒目位置注明出处。1. 单链表反转;...

2018-11-27 17:05:27 88

原创 Android中的shape使用笔记和阴影的编码

我的简书:https://www.jianshu.com/u/c91e642c4d90 我的CSDN:http://blog.csdn.net/wo_ha 我的GitHub:https://github.com/chuanqiLjp 我的个人博客:https://chuanqiljp.github.io/版权声明:商业转载请联系我获得授权,非商业转载请在醒目位置注...

2018-06-08 09:54:13 602

原创 Android面试一天一题

我的简书:https://www.jianshu.com/u/c91e642c4d90 我的CSDN:http://blog.csdn.net/wo_ha 我的GitHub:https://github.com/chuanqiLjp 我的个人博客:https://chuanqiljp.github.io/版权声明:商业转载请联系我获得授权,非商业转载请在醒目位置注...

2018-03-28 16:36:32 1899

原创 Android的性能优化

我的简书:https://www.jianshu.com/u/c91e642c4d90 我的CSDN:http://blog.csdn.net/wo_ha 我的GitHub:https://github.com/chuanqiLjp 我的个人博客:https://chuanqiljp.github.io/版权声明:商业转载请联系我获得授权,非商业转载请在醒目位置注...

2018-03-12 20:53:43 921

原创 Android高级工程师成长路线

我的简书:https://www.jianshu.com/u/c91e642c4d90 我的CSDN:http://blog.csdn.net/wo_ha 我的GitHub:https://github.com/chuanqiLjp 转载请注明出处:http://blog.csdn.net/wo_ha/article/details/79456684 版权声明:内容来...

2018-03-06 12:53:00 454

原创 JavaScript基础学习——入门篇

我的简书:https://www.jianshu.com/u/c91e642c4d90 我的CSDN:http://blog.csdn.net/wo_ha 我的GitHub:https://github.com/chuanqiLjp 版权声明:来源JavaScript入门篇,本文仅做整理,版权归原作者所有,如有侵权请联系我。 转载请注明出处:http://blog.c...

2018-02-27 10:50:08 224

原创 项目中的Html和JS使用的随便总结

我的简书:https://www.jianshu.com/u/c91e642c4d90 我的CSDN:http://blog.csdn.net/wo_ha 我的GitHub:https://github.com/chuanqiLjp 转载请注明出处:http://blog.csdn.net/wo_ha/article/details/79290964序言:由于这段...

2018-02-08 16:16:27 1219

原创 Android更换系统默认显示的字体使用自定义字体

我的简书:https://www.jianshu.com/u/c91e642c4d90 我的CSDN:http://blog.csdn.net/wo_ha 我的GitHub:https://github.com/chuanqiLjp 转载请注明出处:http://blog.csdn.net/wo_ha/article/details/79202632序言上一篇An...

2018-01-30 10:15:45 1985

原创 Android 自定义字体,更换系统默认显示的字体使用自定义字体

我的简书:https://www.jianshu.com/u/c91e642c4d90 我的CSDN:http://blog.csdn.net/wo_ha 我的GitHub:https://github.com/chuanqiLjp 转载请注明出处:http://blog.csdn.net/wo_ha/article/details/79193141序言:可以免费...

2018-01-29 11:17:33 1507

原创 POI读取Excel表格和导出Excel文件

我的简书:https://www.jianshu.com/u/c91e642c4d90 我的CSDN:http://blog.csdn.net/wo_ha 我的GitHub:https://github.com/chuanqiLjp 转载请注明出处:http://blog.csdn.net/wo_ha/article/details/79161616序言:这两天...

2018-01-25 14:36:53 1362 5

原创 HTML标签学习记录

序言整理谷歌的小弟的笔记,版权归原作者所有,本文仅作整理,原文链接:http://blog.csdn.net/lfdfhl/article/list/2常用标签p标签p标签在HTML中常用于表示段落,它是英文单词paragraph的缩写。p标签的用法非常简单,只需要在标签中放置一段文本即可。<p>2017,顶着刘海的iPhoneX带着“史上升级变动最大”的iOS11,依然碎片化严重的Android带

2017-12-14 22:51:22 385

原创 Android 的进程间通信 Binder——AIDL的入门使用(三)

进程间通信系列AIDL的入门使用(一)AIDL的入门使用(二)AIDL的入门使用(三)Messenger的入门使用序言:1、AIDL的大致使用流程:首先是创建一个AIDL接口文件声明需要在客户端调用的接口,再创建一个Service,接着创建一个类继承自AIDL接口中的Stub类并实现Stub中的抽象方法,在Service 的onBind方法中返回这个类的...

2017-12-02 21:29:33 1133

原创 Android 的进程间通信 Binder——AIDL的入门使用(二)

进程间通信系列AIDL的入门使用(一)AIDL的入门使用(二)Messenger的入门使用序言:在Android 的进程间通信 Binder——AIDL的入门使用(一)中我们可以通过AIDL调用服务端的方法进行操作,那可不可以反过来呢,服务端调用客户端的方法,场景:图书馆有新书时自动通知所有订阅的读者;这里就可以使用观察者模式,客户端在服务端注册一个接口,当服务端有新书,自动调用客户端注册的接口。这

2017-12-01 11:15:16 449

原创 Android 的进程间通信 Binder——Messenger的入门使用

序言:Messenger是Google为我们封装好的简洁版的AIDL,当面对少量的并发进程间通信更适用。而且不用考虑线程同步问题。Messenger进程间通信服务端1、创建服务端Module “messenger_server”,并创建Service文件:右键单击包名——>New——>Service——>Service——>命名为MyServerService——>Finish;2、在服务端的Ser

2017-11-30 11:36:49 1011

原创 Android 的进程间通信 Binder——AIDL的入门使用(一)

序言什么概念都省了,直接看怎么使用,主要分两部分,一个是服务端,一个是客户端。AIDL通信的服务端1、创建AIDL 的服务端的Moudle ;2、在aidl包下创建需要传递的对象Book类,并实现Parcelable 接口(使用Android Studio 的Parcelable 接口生成插件)package com.ljp.aidl_server.aidl;import android.os.P

2017-11-28 15:47:59 992

原创 Android Studio配置CMake开发NDK

1.eclipse中的Jni开发流程(一)  2.eclipse中的Jni开发流程(二)1.在SDK Tools中勾选安装CMake、LLDB、NDK2.配置一些快捷方式参数讲解 javah 用于生成头文件 Program:$JDKPath$/bin/javah Parameters:-d ../jni -jni $FileClass$ Working direc

2017-09-29 10:44:55 2445 1

原创 Retrofit2.0 使用教程

版权声明,转载请著名出处:http://www.jianshu.com/p/73a803b0b026引言俗话说:代码是程序员的最好的教程,这篇文章记录的是我在学习使用Retrofit的代码笔记,其中里面的很多注解或原理我也没有弄明白,但是这不影响我的正常使用啊,当然这篇文章针对的是初学者,如果是老司机的话就请绕道了,如果大家有更好的看法或建议可以在文末进行评论,我会及时更新到文章中,近期我也会更新R

2017-09-06 14:59:04 349

原创 设计模式二:观察者模式(发布订阅模式)

版权声明,转载请著名出处:http://www.jianshu.com/p/f88dca81c56b定义观察者模式定义了一个一对多的依赖关系,能让一个或者多个观察者对象监督一个主题对象,这样一个主题对象在状态上的变化能够通知所有的依赖于此对象的那些观察者对象,使这些观察者对象能够自动更新,其本质是触发联动,别名:发布-订阅(Publish/Subscribe)模式、模型-视图(Model/View)

2017-08-30 16:13:45 541

原创 设计模式一:单列模式

版权声明,转载请著名出处:http://www.jianshu.com/p/fb3e4ea5be06一.单例模式的诞生背景在一个项目中我们需要控制类的实例只能有一个,而且客户端只能从一个全局访问点访问到它就可以使用单例模式,单例模式的本质就是控制实例的数目(在这里就是一个)。单例模式分为懒汉模式和饿汉模式。二.单例模式的使用场景1.要求生成唯一的序列号的环境 2.在整个项目中需要有访问一个共享访问

2017-08-25 10:52:22 277

原创 Android进阶——MVP从入门到进阶

1.定义MVP的全称为Model-View-Presenter,即模型-视图-协调器(主持者)Model:处理数据和业务逻辑等,如:数据库的操作,数据的请求,数据运算,JavaBean;View:显示界面,展示结果等,一切与界面相关的,如:XML文件,Activity,Fragment,Dialog;Presenter:协调Model和View模块工作,处理交互;2.使用下面通过一个列子做一个解

2017-03-01 15:10:35 3651 1

转载 Android开发模式之MVC,MVP和MVVM的简单介绍与区别

相信大家对MVC,MVP和MVVM都不陌生,作为三个最耳熟能详的Android框架,它们的应用可以是非常广泛的,但是对于一些新手来说,可能对于区分它们三个都有困难,更别说在实际的项目中应用了,有些时候想用MVP的,代码写着写着就变成了MVC,久而久之就对它们三个的选择产生了恐惧感,如果你也是这样的人群,那么这篇文章可能会对你有很大的帮助,希望大家看完都会有收获吧!文章重点:(1)了解并区分MVC,M

2017-02-17 18:37:28 644

原创 Android进阶——性能优化——内存泄漏检测——eclipse使用 leakcanary AS使用leakcanary

在eclipse中使用1.下载为eclipse优化的Leakcanary,下载链接 http://download.csdn.net/detail/wo_ha/9755042;2. 将项目导入eclipse中;3. 将Leakcanary作为自己项目的依赖库(右键单击自己的项目—–>Properties—–>Android—–>在Libary选择Add—–>选择导入的Leakcanary项目—–>A

2017-02-15 15:56:32 2780 1

转载 Eclipse中使用SVN教程

此文章对Myeclipse同样适用。一.在Eclipse里下载Subclipse插件方法一:从Eclipse Marketplace里面下载具体操作:打开Eclipse –> Help –> Eclipse Marketplace –> 在Find中输入subclipse搜索 –> 找到subclipse点击install方法二:从Install New Software里下载具体操作:打

2017-01-09 23:06:21 17443

原创 Android进阶——百分比布局及扩展

一、Android官方推出的百分比布局的使用1、导入依赖dependencies { compile 'com.android.support:percent:25.0.+'}2、提供了如下的属性支持的布局有:PercentRelativeLayout,PercentFrameLayout属性如下:heightPercentwidthPercentmarginBottomPerce

2017-01-06 15:23:28 2670

原创 Android入门——Android Studio中的build.gradle文件解析

首先看工程中根路径下的build.gradle文件buildscript { repositories { jcenter() //指定代码的托管仓库为 jcenter } dependencies { //声明 gradle的构建版本, classpath 'com.android.tools.build:gradl...

2017-01-05 16:59:25 2463

转载 谈一谈今年的移动互联网寒冬

转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/52316072 本文同步发表于我的微信公众号,扫一扫文章底部的二维码或在微信搜索 郭霖 即可关注,每天都有文章更新。大家好,好像有段时间没写技术文章了。主要是最近《第二行代码》刚刚出版,一直都要忙碌于新书的各种事情,访谈、答疑、勘误处理等等,每天公众号的消息就有一大堆,也是让我目

2016-12-27 09:03:01 523

原创 eclipse中的Jni开发流程(二)——JNI简便的开发流程

上一篇我们讲了JNI在eclipse中的基本开发流程,觉得有点繁杂,且没有代码提示,我们这篇讲个简单的① 写java代码 使用native 声明本地方法② 添加本地支持右键单击项目->andorid tools->add native surport—>点击Finish(此时会自动生成jni文件夹且在文件夹下自动生成 .cpp和Android.mk文件)如果发现 finish不能点击需要给工作空间

2016-12-17 22:52:55 559

原创 eclipse中的Jni开发流程(一)——基本开发

1、声明java的本地方法,使用native关键字 本地方法不用去实现public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);

2016-12-16 08:30:09 945

原创 java字符串过滤回车和换行符

newString = myString.replaceAll("(\r\n|\r|\n|\n\r)", "<br>");

2016-12-14 11:32:28 9634

转载 Android开始启动白屏的原因分析及解决

原文链接:http://blog.csdn.net/sinyu890807/article/details/51019856写在前面记得在本月初,我发表了一篇文章叫《 Android Studio新功能解析,你真的了解Instant Run吗?》,里面详细讲解了Android Studio中新加入的Instant Run功能,使得我们开发的效率可以大大地提升。不过对于这个功能也有不少朋友提出了疑问

2016-12-08 10:14:14 4823

原创 让我们自己的Android程序可以自动后台升级的实现(需Root权限)

首先分析如何才能让我们的应用程序才能后台安装APK——获取Root权限使用命令安装,这个问题解决了只能说实现了一般,那么怎样才能实现自己安装自己,最开始的想法是在在下载升级程序包后自己调用命令安装,但是发现一整忙碌后,这种方式根本不行,原因也很简单,就是在执行安装命令到一半的时候自己的APK就已经退出了,那该怎么办呢? 观察发现别人的应用管理程序都是安装其他的应用包,受到这个启发,我就自己写一个简

2016-12-07 17:04:48 2028

转载 文字合成语音TextToSpeech语音解决中文不能用问题

原文地址:http://fklg.iteye.com/blog/1683982 Android 系统自带的TTS (Text To Speak)语音库目前只有English ,German , Italian ,French ,Spanish(英文,德语,意大利语,法语,西班牙语)五个音库.所以中文发音必须要借助其他的软件,或者引擎.近些天研究目前有三个方法可以实现: 1,一种是借助shoushu

2016-11-24 17:59:24 6297

转载 adb 命令模拟按键事件

例子://这条命令相当于按了设备的Backkey键 adb shell input keyevent 4 //可以解锁屏幕adb shell input keyevent 82 //在屏幕上做划屏操作,前四个数为坐标点,后面是滑动的时间(单位毫秒)adb shell input swipe 50 250 250 250 500 //在屏幕上点击坐标点x=50 y=250的位置。adb sh

2016-11-09 11:12:57 627

转载 安卓主流框架整理

网络请求框架: Retrofit或者Volley+OkHttp, (xutils,async-http建议废弃)(RoboSpice慎用)网络图片加载框架: fresco,glide, (imageloader,建议废弃)(Picasso慎用)动态加载图片框架: Glide数据库框架: OrmLite或者Realm,GreenDAO,LitePal, 要加密的话用SqlCipher查内

2016-11-07 15:48:12 273

转载 Android 2016新技术

2016你需要了解Android有以下新兴的技术与框架,有些也许还不成熟,但是你应该去了解下,也许就是未来的方向。Kotlin 作为 Android 领域的 Swift,绝对让你如沐新风。抛弃沉重的 Java 语法,Kotlin 融入了很多现代编程语言的思想,作为开发者,接受新的语言,了解新语言的发展趋势,更有利于开阔你的思路和加深对语言的理解。 http://t.cn/R2DK0SLReact

2016-11-07 15:15:41 244

原创 Android Studio使用Lombok消除冗长的 java代码

【1、】安装Lombok插件 File–>Settings–>Plugins–>Browse Repositories–>在搜索框中输入Lombok–>安装Lombok–>重启Android Studio 【2、】添加依赖,在mode的gradle中 compile 'javax.annotation:javax.annotation-api:1.2' compile 'org.p

2016-11-01 14:08:24 1703

原创 wireless进行Wifi下的远程Android adb调试

条件: 1、被调试的手机需要root; 2、被调试的手机需要与调试的pc端在同一个局域网中wireless的下载地址:http://sj.zol.com.cn/detail/41/40834.shtml下载安装后,进入该app,界面如下,点击中间那个很大的按钮,下方会出现连接信息:adb connect 192.168.10.xx,你需要确保adbWireless这个app获得了你手机

2016-10-21 09:11:14 355

原创 RxJava的简单使用入门

在gradle配置链接模式 /*在使用Android Studio 2.1时,想要使用lambda表达示的 * 第一步:*/ compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 }

2016-10-13 22:01:11 313

原创 Android数据库入门

数据库的创建1.写一个类继承SQLiteOpenHelper(构造,onCreate,onUpgrade)/** *数据库的帮助类 *要创建数据库操作的对象,必须借助帮助类对象 */public class MyHelper extends SQLiteOpenHelper { public MyHelper(Context context, String name, Curso

2016-07-29 08:29:11 415

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