自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

手指乐

专注移动开发

  • 博客(183)
  • 资源 (2)
  • 论坛 (2)

原创 webview,js和android交互

webview介绍在Android手机中内置了一款高性能webkit内核浏览器,在SDK中封装为一个叫做WebView组件,用于浏览网页混合编程:安卓程序没法跨平台,web(H5)性能,体验各方面跟不上,一个app中对性能要求比较高的部分会用原生代码来写,某些对性能要求没那么高的部分用h5来写。webview的基本使用加载本地图片webView.loadUrl(“file:///sd...

2019-09-03 16:26:52 90

原创 使用isInEditMode解决可视化编辑器无法识别自定义控件的问题

1. isInEditMode的作用:Indicates whether this View is currently in edit mode. A View is usually in edit mode when displayed within a developer tool. For instance, if this View is being drawn by a visual...

2019-08-20 09:25:16 37832 4

原创 Fragment教程之Fragment回退栈

类似Android系统为Activity维护一个任务栈,我们也可以通过Activity维护一个回退栈来保存每次Fragment事务发生的变化。如果你将Fragment任务添加到回退栈,当用户点击后退按钮时,将看到上一次的保存的Fragment。一旦Fragment完全从后退栈中弹出,用户再次点击后退键,则退出当前Activity。先看一下这样一个效果图:要实现这样的效果,在加入f...

2015-12-11 17:26:56 10091 1

原创 GSON解析json数据

解析单个json对象: String json = {"a":"100","b":[{"b1":"b_value1","b2":"b_value2"},{"b1":"b_value1","b2":"b_value2"}],"c":{"c1":"c_value1","c2":"c_value2"}}首先我们需要定义一个序列化的Bean,这里采用内部类的形式,看起来会比较清晰一些: ...

2015-11-25 17:30:49 611

原创 java基础笔记1

1. 初始化执行顺序:A.首先查找main函数,main所在类及其父类从最顶层开始初始化静态变量(不同于c++,java的静态变量只在相应类装载时才初始化)B.从main开始执行代码,如果有new对象,则按父类->兄弟类(按声明顺序)->本类执行静态变量初始化、按父类->兄弟类(按声明顺序)->本类执行非静态变量初始化,按父类->兄弟类(按声明顺序)->本类执行构造函

2020-05-15 10:20:30 1029

原创 android基础笔记1

1.在模拟器中安装apk文件:G:\work\android-sdk-windows\platform-tools里有个adb.exe工具Adb install G:\work\Crack\xxx.apkadbinstall-r文件路径>:如果加-r参数会覆盖原来安装的软件并保留数据批量安装:for %%i in (*.apk) do adbins

2020-05-15 10:19:27 1368

原创 一行代码检测XP/调试/多开/模拟器/root的android库

github地址https://github.com/lamster2018/EasyProtector使用 public boolean isLimit(){ boolean bLimit = false; bLimit = bLimit || EasyProtectorLib.checkIsRoot() ...

2019-09-09 20:38:24 334

转载 mainefest中配置组件的android:process属性的作用

android:process可以针对一个组件(activity,service,broadcast等)。比如:android:name="com.pingan.jar.utils.log.LogRecordService" android:process=":znlog">1.当有一些耗费内存比较多的操作时,可以通过android:process指定

2017-03-17 14:25:11 619

转载 hotfix

tinker在加固包生成补丁时,生成的补丁太大,所有改用hotfix方案1.方案比较:平台阿里百川HotFixAndFixTinkerQzoneRobust即时生效yesyesnonoyes性能损耗较小较小较大较大

2017-03-13 09:49:10 463

转载 本地工程不要上传到svn(git)的文件和目录

Android Studio 中建议过滤的文件:- .idea 文件夹- .gradle 文件夹- 所有的 build 文件夹- local.properties 文件--iml文件

2016-12-27 14:48:10 840

转载 xxsource.jar,.jar,.aar,导入哪一个

xxsource.jar是源码,不能直接作为库导入,用于对.jar做源码关联(不关联,看到的源码是反编译出来的).jar和.aar可以作为库导入,.aar带资源

2016-12-08 17:28:22 471

转载 配置在线加载依赖库(dependences),gradle同步出现manifest合并失败:Manifest merger failed with multiple errors, see logs

这种错误是因为第三方库的manifest和本工程中manifest合并时出现冲突打开gradle console,会有详细错误原因,比如:/Users/zhouyi/work/zhiniao/20161201_V3.4.6/AndroidManifest.xml:110:9-36 Error:Attribute application@allowBackup value=(false)

2016-12-08 17:20:58 2307 1

转载 微信热补丁修复框架--tinker

1.资源:github地址:https://github.com/Tencent/tinkerwiki地址(使用文档):https://github.com/Tencent/tinker/wiki补丁管理平台tinkerpatch:            平台地址:http://tinkerpatch.com/                 github:https://

2016-12-08 09:00:46 1867

转载 mac常用shell命令

1.printenv:列出所有环境变量

2016-11-30 10:46:56 733

转载 深入gradle

1.gradle版本和gradle插件版本:as中已经安装的gradle在as安装目录下的contents/gradle中工程中gradle版本在工程的gradle/wrapper/gradle-wrapper.properties里配置distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-

2016-11-30 09:12:44 982 1

转载 Java关键字final、static使用总结

Java关键字final、static使用总结 一、final        根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类、非抽象类成员方法和变量。你可能出于两种理解而需要阻止改变:设计或效率。        final类不能被继承,没有子类,final类中的方法默认是final的。        final

2016-11-29 13:49:22 238

转载 as中建立和运行java程序

1.进入你的android工程,点击 File—>New—>Module—>Java Library,填好lib、Java name—>Finish,这时你就会看到你的工程目录下有了文件夹,如我的lib1文件:2.如图展开后,看在Java Class文件中写代码,这里写了最简单的输出 Hello Java:3.右击MyClass文件,选择 Run ‘MyClass.main()’:

2016-11-29 10:52:11 5310

转载 android内存泄漏分析

1.判断内存泄漏:第一种方法:as底下的标签里的android monitor(平时看log的地方)上面有个子标签monitors,切换到monitors,可以观察内存、cpu、网络等使用情况反复进行某项操作,gc后(上面有个垃圾车图标,点击一下),观察内存占用是否稳定,如果每次进行这个操作,内存都增长,并且gc后不释放说明这个操作存在内存泄漏第二种方法:打开ddms,在左

2016-11-19 17:14:12 490

转载 android性能分析之TraceView的使用

TraceView简介  TraceView是AndroidSDK里面自带的工具,用于对Android的应用程序以及Framework层的代码进行性能分析。      TraceView是图形化的工具,最终它会产生一个图表,用于对性能分析进行说明。      TraceView可以跟踪到具体的Method。TraceView界面现来看一下整个界面

2016-11-02 11:56:47 461

转载 Android官方数据绑定框架DataBinding

数据绑定框架给我们带来了更大的方便性,以前我们可能需要在Activity里写很多的findViewById,烦人的代码也增加了我们代码的耦合性,现在我们马上就可以抛弃那么多的findViewById。说到这里,有人可能会有个疑问:我使用一些注解框架也可以不用findViewById啊,是的,但是注解注定要拖慢我们代码的速度,Data Binding则不会,官网文档说还会提高解析XML的速度,最

2016-10-24 21:47:18 256

转载 蓝牙

添加权限:android:name="android.permission.BLUETOOTH_ADMIN"/>android:name="android.permission.BLUETOOTH"/>客户端开启蓝牙:/** * 打开蓝牙设备 */void openBT(){    mBluetoothAdapter = BluetoothAda

2016-10-23 10:08:22 251

转载 mvp模式、mvvm模式

MVC和MVP的区别2007年08月08日 星期三 上午 09:23MVC和MVP到底有什么区别呢?从这幅图可以看到,我们可以看到在MVC里,View是可以直接访问Model的!从而,View里会包含Model信息,不可避免的还要包括一些业务逻辑。在MVC模型里,更关注的Model的不变,而同时有多个对Model的不同显示,及View。所以,在MVC

2016-10-20 17:06:35 383

转载 依赖注入,ORM及相关框架

基本概念控制反转(Inversion of Control,英文缩写为 IoC):创建被调用者的工作不再由调用者来完成,因此称为控制反转。依赖注入(Dependency Injection,简称DI):控制反转的主要实现方式,可以通过反射方式实现(ViewUtils,反射注入),也可以非反射方式(Dagger2)ORM:即Object-Relational Mapping(对象关系映射

2016-10-18 14:37:03 678

转载 CardView、CoordinatorLayout

CardView:一、简介:Android5.0新增了一个全新的控件–CardView,从本质上看,可以将CardView看做是FrameLayout在自身之上添加了圆角和阴影效果。请注意:CardView被包装为一种布局,并且经常在ListView和RecyclerView的Item布局中,作为一种容器使用。CardView应该被使用在显示层次性的内容时;在显示列

2016-10-18 10:49:44 819

转载 XUtils之ViewUtils和DBUtils

xutils简介:xUtils 是一个工具类的集合体,其中包含许多实用的Android工具,主要包含四大模块: 1、 ViewUtils的模块 2、 DBUtils的模块 3、 HttpUtils的模块  4、 BitmapUtils的模块    xUitls最低兼容Android 2.2 (API 8)下载地址: https://g

2016-10-18 09:56:51 417

转载 多媒体播放

一、VideoView播放视频1.1 简介:VideoView,用于播放一段视频媒体,它继承了SurfaceView,位于"android.widget.VideoView",是一个视频控件。1.2 使用权限:android:name="android.permission.READ_EXTERNAL_STORAGE"/>布局:xml versi

2016-10-18 08:26:20 303

转载 消息推送、短信验证,第三方分享和登录,友盟统计

消息推送:SDK和demo下载地址:https://www.jiguang.cn/push文档:http://docs.jiguang.cn/guideline/android_guide/#sdk富媒体必须要有文字内容,否则后台提示发送成功,但是前台收到消息不会提示短信验证:默认验证页面(跳到android studio):ht

2016-10-18 08:21:38 2162

转载 TextInputLayout,Snackbar,FloatingActionButton, SwipeRefreshLayout

一、TextInputLayout简介:TextInputLayout功能非常简单,就是用于用户在EditText中输入时hint的提示和错误的提示。先来看看效果图吧:从上图很明显的看出:1、当EditText获得焦点时候,TextInputLayout会在左上角默认的生成一个Label用来显示EditText中hint的内容,所以当用户输入时候hint内容会浮动到左上角,

2016-10-17 15:04:13 354

转载 XUtils之BitmapUtils和HttpUtils

BitmapUtils能设置图片大小,避免oom(out of memory--内存溢出)基于lru(最近最少使用算法)的三级缓存(网络,内存,本地),访问速度较快避免图片错位(在listview或者recyclerview中使用)图片列表快速滑动时,可以取消加载滑出屏幕的图片1.需要添加权限:android:name="android.permission.INT

2016-10-14 20:03:46 474

转载 编码和加密算法的使用

MD5:不可逆,一般用于信息比对  MD5值长度固定为128bit容易计算抗修改性抗强碰撞,非常难伪造使用工具类获取字符串的md5值:String strMd5 = MD5.md5("hello,中国");       比较两个文件是否相等:String strFile1Md5 = MD5.getFileMD5(newFile("/sdcard/downlo

2016-10-11 09:16:48 388

转载 Volley的使用

一、Volley简介直接用HttpURLConnection和HttpClient进行网络请求比较复杂,不进行封装的话,会有很多重复代码2013年Google I/O大会上推出了一个新的网络通信框架——Volley,它的设计目标就是非常适合去进行数据量不大,但通信频繁的网络操作,而对于大数据量的网络操作,比如说下载文件等,Volley的表现就会非常糟糕二、Volley的

2016-09-08 13:19:20 258

转载 IntentService

IntentService是Service类的子类,用来处理异步请求。客户端可以通过startService(Intent)方法传递请求给IntentService。IntentService在onCreate()函数中通过HandlerThread单独开启一个线程来处理所有Intent请求对象(通过startService的方式发送过来的)所对应的任务,这样以免事务处理阻塞主线程。执行完所一个I

2016-09-08 13:07:09 266

转载 Ratingbar的使用

1.xml中使用ratingbar:<RatingBar android:id="@+id/rbscore" android:layout_width="wrap_content" android:layout_height="wrap_content" style="?android:attr/ratingBarStyleSmall" //使用小bar风格

2016-09-07 09:55:00 555

转载 fragment懒加载

举报  收藏我们在做应用开发的时候,一个Activity里面可能会以viewpager(或其他容器)与多个Fragment来组合使用,而如果每个fragment都需要去加载数据,或从本地加载,或从网络加载,那么在这个activity刚创建的时候就变成需要初始化大量资源。这样的结果,我们当然不会满意。那么,能不能做到当切换到这个fragment的时候,它才去初始化呢?答案就在

2016-09-06 10:13:09 375

转载 FragmentPagerAdapter与FragmentStatePagerAdapter的区别

默认情况下(setOffscreenPageLimit没有调用)FragmentPagerAdapter:保存所有加入的fragment,虽然步长超过1的页面会调用destroyItem,但是在fragment的声明周期里,只有onDestroyView调用了,没有调用onDestory,也没有调用onDetach,所以fragment只是把上面的view销毁了,fragment并没有销毁,下

2016-09-06 09:23:21 4935

转载 viewpager无限循环

比如显示5张图片,在头部加一张跟第5张相同的图片,在尾部加一张跟第一张相同的图片,这样第1张往右拉的过程中,左边逐渐出现加入在头部的图片(跟出现第5张效果一样)同理,第5张往左拉的时候,右边逐渐出现加入在尾部的图片(跟出现第一张效果一样)前面保证了在拉的过程中,头尾部的拉动效果,但是拉完后,要实现还可以循环拉,就需要在显示完附加在头部的图片后,人为设置当前页面为第五张图片,同理,显示完附加

2016-09-05 18:49:20 570

转载 圆角Imageview--RoundedImageView

github地址:https://github.com/vinc3m1/RoundedImageView<com.makeramen.roundedimageview.RoundedImageView android:layout_width="match_parent" android:layout_height="match_parent" android:la

2016-09-05 10:50:26 304

转载 GestureDetector中onFling()与onScroll()的区别

在手势检测中,onFling()与onScroll()有点类似,一个为“滑动”,一个为“拖动”。都是手指在屏幕(或某一组件)上移动一段距离后触发。     然而二者毕竟是有区别的:(下面结论是在我自己的demo中亲自操作得出的结果,有不对的请指出错误)一、在滑动距离上,二者没有(明显)区别:               在检测效果的操作中,滑动距离无论长短都会触

2016-08-31 18:39:02 4157

转载 ScrollTo,ScrollBy,offsetLeftAndRight,offsetTopAndBottom以及侧滑的简单实现

ScrollTo,ScrollBy一、滚动的是什么[java] view plain copyscrollgoback.setOnClickListener(new OnClickListener() {                    @Override      public void onClick

2016-08-31 15:18:48 922

转载 listview和recyclerview多布局

1.listview:class MyAdapter extends BaseAdapter{    Context mContext;    LinearLayout linearLayout = null;    LayoutInflater inflater;    TextView tex;    final int VIEW_TYPE = 3;    final in

2016-08-31 14:04:12 217

弹球游戏的cocos2d-x版源码

弹球游戏的cocos2d-x版源码,对应博文:http://blog.csdn.net/lamp_zy/article/details/8119618

2012-10-27

android侧滑demo

一个仿“遇见”的侧滑效果样例,样例详细解析见:http://blog.csdn.net/lamp_zy/article/details/7857655

2012-08-12

手指乐的留言板

发表于 2020-01-02 最后回复 2020-01-02

安卓广告平台赚钱的一些经验分享

发表于 2012-05-20 最后回复 2012-05-20

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