- 博客(32)
- 资源 (12)
- 收藏
- 关注
转载 PagerSlidingTabStrip介绍及使用,让ViewPager更绚丽
转载请注明出处http://blog.csdn.net/harryweasley/article/details/42290595,谢谢。以前一直想着,ViewPager中间的那个横线怎么跟着屏幕的滑动而滑动,如下图所示:我们可以看到中间的那个红线在跟着屏幕滑动而滑动现在github上已经有了这个开源项目,所以我们可以直接拿来用,很方便很实用。文章末尾我将放上资源,可以
2016-11-30 14:38:38 739
转载 一起学Netty(十四)之 Netty生产级的心跳和重连机制
转载的,现在不是很懂,后面慢慢研究哈sigh,写这篇博客的时候老脸还是红了一下,心里还是有些唏嘘的,应该算是剽窃吧,每个人的代码功力的确是有差距的,好在文章的标题是“一起学”,而不是开涛大神的“跟我学”系列的文章,我们还是多花点时间学习吧,感叹无用~最近工作比较忙,但闲暇之余还是看了阿里的冯家春(fengjiachun)的github上的开源代码Jupiter,写的RPC框
2016-11-28 14:32:30 1082
原创 关于build中$rootDir使用说明
maven { // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm url "$rootDir/../node_modules/react-native/android"}$rootDir指的是安卓工程文件所在的目录,实际也就是根build所在目录
2016-11-22 14:06:10 5965
原创 ReactNativeUI渲染分析
本文参考了http://www.cnblogs.com/zhang740/p/5978323.htmlReact的JSX语法http://www.css88.com/archives/tag/jsx%E8%AF%AD%E6%B3%95//使用JSXReact.render( div> div> div>contentdiv>
2016-11-22 10:34:31 654
原创 JAVA中对null进行强制类型转换
实验证明:对nul强制转换还是null,不会报错.搜索了下相关的问题,没有找到合理的解释说明。于是做了以下实验,证明了对null值进行强制转换后的返回值为nullJava代码 package test; class Test{ public String n = "111"; } public class T {
2016-11-21 15:51:00 1876
原创 React Native启动流程集合安卓源码分析
首先看JSBundleLoader, public static JSBundleLoader createFileLoader(final String fileName) { return new JSBundleLoader() { @Override public void loadScript(CatalystInstanceImpl inst
2016-11-21 11:36:26 1528
原创 菜鸟学习React Native for Android 之通讯原理分析(JS调用Native)
本文还是基于React Native通讯原理理解的一份个人笔记形式的博客1.先上通讯总体框架图2.再上Native调用JS的流程图下面结合上面的图再结合ReactNative源码加以理解分析思路分析:对于JS调用native来说,RN官方的思路是收集JAVA MODULE ,在JS端生成一个JS对象,这个JS对象和这个JAVA模块
2016-11-20 15:15:39 1548
转载 使用c通过jni调用java
理解:总的来说就是C结合JNI通过C里面的反射技术调用JAVA方法本文转载自:http://roysong.iteye.com/blog/1473051编译环境:fedora16gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2)java version "1.6.0_31"Java(TM) SE Runtime Envi
2016-11-20 11:26:01 546
原创 JIT是什么,我的简单理解
JIT,就是即时编译器,可以根据字节码的使用频率对常用的字节码生成本地机器指令(运行时),并且保存下来,以便于下次使用,感觉有点缓存的味道,目的是加快运行速度,减少JAVA不停的解释引起的速度慢问题
2016-11-19 19:15:01 2319
原创 React Native JavaScriptModuleRegistry是如何存放入JS接口原型的
mReactRootView = new ReactRootView(this);mReactInstanceManager = ReactInstanceManager.builder() .setApplication(getApplication()) .setBundleAssetName("index.android.bundle") .
2016-11-19 18:48:13 979
原创 菜鸟学习React Native for Android 之通讯原理分析(JAVA调用JS)
主要参考自:React Native通讯原理:http://www.jianshu.com/p/17d6f6c57a5c1.通讯框架图2.Native调用JSNative调用JS流程分析:MessageQueue把Native调用的方法放到JavaScriptCore中JS Module把可以调用的方法放到MessageQueue的一个对列中Native从JavaS
2016-11-19 18:14:41 1102
原创 JAVA动态代理机制说明
转载地址:http://paddy-w.iteye.com/blog/841798InvocationHandler持有了接口的实例,通过反射Method.invoke调用实例,而生成的动态代理类持有了这个InvocationHandler对象调用,通过这个调用到实例方法另外动态代理与动态生成字节码有着很大的关系,例如可以使用字节码框架ASM动态生成字节码根据目前了解的,所
2016-11-18 18:23:11 369
原创 2016Rest API的理解
由于缺乏实际的应用,目前对于这个感觉比较浅薄,简单记录下我此概念的理解这是一个软件架构设计的约束和原则,每个资源都有一个URI,基于HTTP就好像我之前项目中多个模块之间调用,每个模块对外提供REST API一样总的感觉是一种设计理念吧......................
2016-11-15 13:56:29 579
原创 菜鸟学学ReactNative笔记(二)
1.import React, { Component } from 'react';通过实际的代码分析认为,{Component}意思应该是导入React中的子模块Component,这样在代码中省的写React.Component,而直接写Component即可2.props和state的理解props可以指定组件的特征,state可以动态改变组件的一些特征,而状态的改变或许可以触
2016-11-14 11:53:05 828
原创 菜鸟学学ReactNative笔记(一)
一.学习前言ReactNative很早已经有所耳闻,也看过一些介绍,但是有些东西你不真正去使用起来,很难有笔记深刻的体会.所以下定决心学好这么技术,为自己的移动开发世界开拓另外一片天空。二.学习资料在写这篇笔记之时,其实我已经掌握了ReactNative的入门技术,成功运行了HelloWord程序,本篇帖子主要记录下学习时候参考的资料和遇到的问题罢了三。参考的资料1
2016-11-13 18:23:04 531
原创 Node.js学习笔记
Node.js学习地址是:http://www.runoob.com/nodejs/nodejs-npm.html1.通过镜像生成的模块在哪里$ npm install -g cnpm --registry=https://registry.npm.taobao.org这样就可以使用 cnpm 命令来安装模块了:$ cnpm install [name]可以通过cn
2016-11-11 15:10:14 392
原创 gradle插件开发如何读取安卓根目录的preperties
本来是想直接在build文件里配置变量如何直接apply插件的时候就能使用的,发现不行public class PluginImpl implements Plugin { void apply(Project project) { project.extensions.create('pluginExt', PluginExtension) pro
2016-11-10 15:51:09 2680
原创 安卓开发通过自定义Gradle插件实现自动化埋点
结合gradle开发的一款自动化埋点的插件,使用简单,零代码入侵,不需要开发配合,维护一份埋点文档即可
2016-11-09 14:17:39 5711 13
转载 groovy : poi 读取 Excel xlsx
转载自:http://blog.csdn.net/belldeep/article/details/39721345 从 http://poi.apache.org/download.html下载 poi-bin-3.10-FINAL-20140208.zip 解压后copy poi-3.10-FINAL-20140208.jarpoi-ooxml-3.10-FINAL-2
2016-11-07 17:19:38 1689
原创 关于使用Groovy插件化开发测试单个Groovy的文件
public class Test { def name Test(who) { name = who[0].toUpperCase() + who[1..-1] } def salute() { println "Hello !" } static void main(args) { new Test("aa")
2016-11-07 17:07:49 875
原创 Android studio生成的class文件在哪里查看
app\build\intermediates文件夹里是也intermediates:是一个中间人,调节人的意思,java源文件转为class文件后再转为dex文件,最后生成apk这里面class文件夹就被存放在intermediates文件夹里面
2016-11-07 14:53:08 24630 7
转载 Javassist简单应用小结
参考1:http://blog.csdn.net/mousebaby808/article/details/37696371 看点:修改类方法名@Testpublic void test() throws Exception { // 获取本地类加载器 ClassLoader classLoader = getLocaleClassLoader(); // 获
2016-11-04 18:03:39 687
转载 通过自定义Gradle插件修改编译后的class文件
总体思路:通过gradle的transform在class文件转DEX过程红,借助javassist技术修改class文件 我的简书同步发布:通过自定义Gradle插件修改编译后的class文件转载请注明出处:【huachao1001的专栏:http://blog.csdn.net/huachao1001】或许你会觉得没有必要这样做,可是有一种应用场景就是,为每个编译后的
2016-11-04 13:43:32 1541
原创 java.lang.NoClassDefFoundError: android/os/PersistableBundle和EventBus
java.lang.NoClassDefFoundError: android/os/PersistableBundle原因是我重写了EventBus 和下面的方法冲突了,解决办法就是干掉下面的方法/* @Override public void onCreate(Bundle savedInstanceState, PersistableBundle persistentS
2016-11-03 16:05:46 1845 2
转载 深入字节码 -- 使用 ASM 实现 AOP
AOP 的概念已经不是什么新鲜事物,所以我在这里就不在介绍 Aop 的概念。目前市面上要做到 Aop 是一件十分简单的事情。Spring、AspectJ、CGLib等等都可以帮助你达到目的,但是它们也只不过是一些泛生品。 上面提到了一些开源的 Aop 实现技术选型,但是我敢说无论你尝试使用上面哪种技术选型都没有我将要介绍的这种方式的运行效率最高。不过读者不要高兴的太早,读完本文想必你就知
2016-11-03 13:59:58 918
转载 菜鸟学习Spring——60s让你学会动态代理原理(动态代理是怎么生成的)
一、为什么要使用动态代理 当一个对象或多个对象实现了N中方法的时候,由于业务需求需要把这个对象和多个对象的N个方法加入一个共同的方法,比如把所有对象的所有方法加入事务这个时候有三种方法: 方法一:一个一个对象一个一个方法去加,很显然这个方法是一个比较笨的方法。 方法二:加一个静态代理对象将这个静态代理对象实现要加事务对象的接口。然后在静态代理对
2016-11-03 13:37:17 652
转载 javap(反汇编命令)详解
转载地址:http://blog.csdn.net/hudashi/article/details/7062668javap是JDK自带的反汇编器,可以查看java编译器为我们生成的字节码。通过它,我们可以对照源代码和字节码,从而了解很多编译器内部的工作。语法: javap [ 命令选项 ] class. . . javap 命令用于解析类文件。其输出取决于所用的选项。若没
2016-11-03 11:36:07 1846 2
原创 反汇编是什么
反汇编:把目标代码转为汇编代码的过程。通常,编写程序是利用高级语言如C,Pascal等高级语言进行编程的,然后再经过编译程序生成可以被计算机系统直接执行的文件。反汇编即是指将这些执行文件反编译还原成汇编语言或其他高级语言。但通常反编译出来的程序与原程序会存在许多不同,虽然执行效果相同,但程序代码 会发生很大的变化,非编程高手很难读懂。
2016-11-03 11:30:40 3431
转载 深入字节码 -- 计算方法执行时间(ONE APM基础原理窥探)
市面上有听云、oneapm等性能分析工具,通过对使用的APK反编译分析,他们提供的PLUGIN都做了很重要的一件事情,就是在class文件进行了代码打点,也就是在实际的代码上做了他们自己的一些代码以便于用于性能分析。详细的技术参考:http://www.tuicool.com/articles/7zYR3aU什么是字节码?java 程序通过 javac 编译之后
2016-11-03 11:08:57 1881
转载 如何使用Android Studio开发Gradle插件系列教程(一)
转载自:http://blog.csdn.net/sbsujjbcy/article/details/50782830缘由首先说明一下为什么会有这篇文章。前段时间,插件化以及热修复的技术很热,Nuwa热修复的工具NuwaGradle,携程动态加载技术DynamicAPK,还有希望做最轻巧的插件化框架的Small。这三个App有一个共同的地方就是大量的使用了Gradle这个强大的构建工具
2016-11-02 14:23:42 684 1
转载 自定义Gradle插件(一)
自定义Gradle插件(一)自定义Gradle插件(二)Google已经建议Android开发全部转向Android Studio开发,Android Studio 是使用gradle编译、打包的,那么问题来了,gradle可是有一堆东西...,为了测底了解gradle,今天就来学习下如何写自己的gradle插件(当然插件源码是使用groovy写的),先看如下代码目录:如上图所
2016-11-01 17:31:29 399
转载 安卓开发中,在低版本SDK使用高版本的API会报错。一般处理方法是换一种实现方法,或者在高版本SDK中使用高版本API,低版本SDK中使用效果可能会差点的折衷方案;后者可以用如下技巧来实现。
转载自:http://www.360doc.com/content/14/1113/09/11800748_424743381.shtml安卓开发中,在低版本SDK使用高版本的API会报错。一般处理方法是换一种实现方法,或者在高版本SDK中使用高版本API,低版本SDK中使用效果可能会差点的折衷方案;后者可以用如下技巧来实现。步骤Step 1在使用了高版本API的方法前面加一个
2016-11-01 10:23:49 1535
minicap.zip
2019-08-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人