自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 资源 (3)
  • 收藏
  • 关注

原创 Android电量监控

2018-10-22 10:05:52 1008

原创 ASM插桩实现Android端无埋点性能监控

Android端无埋点实现页面性能监控背景当我们需要了解页面加载性能时,可以通过手动埋点的方式记录页面阶段耗时、网络耗时、数据库加载耗时以及其他耗时点,配合slardar平台,能直观地了解到页面的性能情况。但随着业务变动,手动埋点存在易写错,难维护的麻烦。业界广泛使用了插桩技术来实现无埋点监控,我们也结合现有监控库,实现了自己的无埋点监控方案。本文旨在介绍实现原理,方便大家对监控库的使...

2018-09-12 12:09:04 6221 3

原创 Egg 学习笔记-源码分析1

1. Egg在调用controller/service文件夹下的模块时,不需要require,如何实现的?在原生Node/Koa中,当我们需要调用其他模块时,需要require, 非常繁琐。(java体系都是auto import)但在Egg中,我们可以通过app.controller.文件名的形式直接调用。猜想,是不是在app文件夹下任意写一个文件夹xxx,再在xxx下写一个yyy.js, 就可以

2018-03-23 12:08:47 1345

原创 Android模拟器知识以及改造

1. 我们做了个什么东西?   提供了一个Android模拟器,运行流畅度可以类比真机,可以正常运行市面上的大部分应用,比如应用宝,手机管家等。在功能性测试的场景下,比真机节约成本,维护更方便。 2. 原生安卓模拟器的缺点?说Android模拟器慢其实是指早期Google提供的只能用于在Arm架构上运行的Android镜像在模拟器上运行慢。与此对照的是,iOS模拟器运行非常流畅。其实,iOS提供的...

2018-03-12 09:48:40 15674 7

原创 Android Camera使用和人脸检测

参考: 1. 最简单方式,参考官网或http://www.jianshu.com/p/7dd2191b4537 1. 文章使用两个SurfaceView 分别进行画面预览的显示和人脸位置的绘制 https://yuncnc.github.io/2017/03/04/Android/Android%E4%BA%BA%E8%84%B8%E6%A3%80%E6%B5%8B%E5%9F%BA%E6%9

2017-09-15 18:03:46 4909

原创 oppo手机上获取辅助功能失败

在辅助功能里把自己的应用加进去后,应用可以正常使用AccessbilityService. 但是,当使用oppo的最近任务里的清理按钮后,应用被杀,应用的辅助功能也被关闭了。http://123.157.214.131/thread-241930-1-1.html根据论坛里说法,貌似无解……

2017-09-13 11:07:20 2217

原创 [android]提取系统应用(odex合并到apk)

最近需要提取某ROM的系统应用,这里记录一下过程,主要参考了 http://www.tttabc.com/android/odextodex.htm, 但文章有一些过时系统root后,查看/system/app,找到需要的应用,发现apk里不含有dex文件,和apk平级的有一个oat文件夹,里面有一个odex文件。下面要做的事情就是odex->smali->dex, 然后把新得到的dex文件加到

2017-08-02 10:38:23 9506

原创 Android程序员学习iOS

开始学习iOS编程的知识,新手,对照Android开发学习 1. AS里引入第三方库利用IDE可以搜索和添加,也可以直接在build.gradle里添加,利用的是gradle对在maven, jcenter库里的library可以进行检索、分析依赖以及自动下载。 Xcode看来需要一个叫CocoaPods的工具 2. iOS里到处都是委托,委托基于协议。比如AppDelegate,看起来

2017-03-24 10:21:11 976

转载 测试、工具相关

Android性能专项测试之Allocation Tracker(Android Studio)http://blog.csdn.net/itfootball/article/details/48750849 Android安全专项-利用androguard分析微信http://blog.csdn.net/column/details/itfoo

2017-02-23 14:45:51 339

转载 Surface, SurfaceView, TextureView

http://www.cnblogs.com/Sharley/p/5600314.html

2017-02-22 17:36:27 401

转载 Xposed

http://blog.csdn.net/chenhao0428/article/details/51360554http://blog.csdn.net/bsmmaoshenbo/article/details/52701993https://cn2.chionlab.moe/2016/01/22/use-xposed-to-crawl-wechat-moments/

2017-02-22 15:36:26 611

原创 前台Activity旋转,后台Activity被销毁

上周四要发版,结果非常之尴尬,因为我负责的部分,导致到晚上12点仍然无法通过测试验收。 非常非常尴尬…… 我负责爱奇艺头条的视频播放部分,一个场景是,首页Feed流A页面支持视频自动播放,点击正在播放的视频,跳转到B页面,B页面使用同一个视频播放器完成续播。问题复现:在B页面点击全屏按钮,偶现视频停止播放。追查:点击全屏,播放器内部要调整TextureView大小,这时发现player变成了nu

2017-01-03 17:47:31 1050 1

原创 Android Http缓存数据处理

来北京一个多月了~ 本周做组里技术分享时,被提问到一个问题: Retrofit里自带网络线程调度(okHttp),适配RxJava后,内部是同步还是异步的?异步的话,就多了一层线程的包装了? 听完问题后,我的第一反应是,Jake大神怎么能没处理好这个问题呢,内部肯定是选择同步了吧,使用RxJava的理念就是线程调度都交给Rx好了。 但我确实没有看过这部分源码……当时只对动态代理感兴趣了……配

2016-06-04 16:56:12 3031 1

原创 Dagger2 学习笔记

听说Dagger2和Retrolambda很久了,本来是拒绝的,觉得只是锦上填一点小花而已,但最近看来,Github上已经有很多开源项目采用,再不学就又落后面了……看完下面这三篇就差不多了,其他很多都是重复的,Dagger2是唯一的我感觉看完官方的讲解还无从下手http://blog.fidroid.com/post/android/dagger-on-android-dagger2xiang-j

2016-03-12 23:21:40 3623 1

原创 重启J2EE学习1:tomcat

1.后台进程启动tomcat 使用putty远程链接阿里云,用命令行 startup.sh启动tomcat, 关闭putty窗口,tomcat也被关闭。 可以用后台进程的方式启动tomcat cd /web/tomcat-6.0.14/bin nohup startup.sh &参考: http://blog.csdn.net/defonds/article/details/

2016-03-07 09:32:33 694

原创 给REST接口做鉴权认证:OAuth

现在做的App和网站共用REST接口,用的是基于Cookie的认证,按照一般约定采用了30分钟的超时设置,浏览器超时后自动跳转到CAS认证,这个对网页端来说应该说很正常,但是对于App, 并不是银行那样的安全性极高的App,30分钟过后再回来,发现又得重新登录一遍,太无法接受了……为了解决这个问题,App采用了一个不得已的做法,定时ping后台接口……如果定时任务被杀,访问后台接口提示超时的话,再用

2016-03-03 18:18:32 23703

原创 一个奇怪的子线程更新UI问题

public class MainActivity extends AppCompatActivity {private static final String TAG = "MainActivity";@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceSta

2016-03-02 11:10:09 999

原创 RxJava里doOnNext的使用和线程处理

doOnNext的使用我对doOnNext的使用是存在疑惑的,按照官方文档 The doOnNext operator is much like doOnEach(Action1) except that the Action that you pass it as a parameter does not accept a Notification but instead simply acc

2016-03-01 15:08:33 28735 3

原创 Git命令

1,一个人全权管理的仓库,大量修改后想一次性提交 直接执行git push 会得到错误 git updates were rejected because a pushed branch tip is behind its remote… 使用: git push –force origin master:master 这表示: I’d like to basically clear

2016-02-19 11:25:57 517

原创 2016期许

新的一年做些什么呢 去年有很多的遗憾 1.希望有机会参与到一个有重大价值和前景的App开发,现在做出的3个App有价值,但用户量都不大。2.增加源码阅读,提高纵向的知识体系,横向方向暂定Python爬虫、数据挖掘知识3.工作近三年了,研究生学到的基本跟工作不再有缘了,三年是一个坎,最后半年,要让这三年有一个完整的历程。4.仍然在温饱线上,要找思路增加收入5.要坚持健身、把体重减下去

2016-02-14 08:28:16 812

原创 Angular的作用域Scope理解

要点之一: 父Scope里的基本类型的属性,子Scope依据原型链可以直接引用其值,但是这个属性值是复制过来的,在子Scope里改变属性值,不会影响父Scope里的属性值。解决办法: If you really want/need to use a primitive, there are two workarounds: 1. Use $parent.parentScopeP

2016-02-03 10:59:52 981

原创 Glide加载需要权限验证的图片Url

Glide默认加载的图片Url是可以公开访问的图片Url,我们的场景里访问图片Url需要带上Cookie信息,否则无法获取图片。解决办法是为图片请求加上头信息方法一是利用GlideModulepackage com.mypackage;public class MyGlideModule implements GlideModule { @Override public void apply

2016-01-16 12:44:29 9036 3

原创 RxJava:Schedulers选择 newThread vs io

http://stackoverflow.com/questions/31276164/rxjava-schedulers-use-cases一般的网络请求使用io,io使用了无限的线程池,newThread没有线程池维护immediate(): Creates and returns a Scheduler that executes work immediately on the current

2016-01-13 18:11:32 5779

原创 记一个用RxJava遇到的问题

问题的现象是Observer的onNext方法被调用后,它的onError方法也紧跟着被调用了……我的第一反应是RxJava的Bug?……当然不是的…… @Override public void onNext(T args) { try { if (!done) { actual.onNext(args);

2016-01-12 15:22:44 1074

原创 MDM设备管理编程中遇到的一些问题

也包含MAM编程中遇到的一些问题要想能够管理设备,应用必须保证不能被卸载,怎么做到? https://mp.weixin.qq.com/s?__biz=MzA3MDMyMjkzNg==&mid=211618188&idx=1&sn=4b08a3058b7d4861b5ade7024a02266e&scene=2&srcid=0915Dfg09vd应用还在,但如果用户把长链接服务停掉,就无法接收

2015-12-30 13:45:16 1357

翻译 使用响应式编程(RxJava)开发Android App

Android app development using the reactive programming paradigm (RxJava)原作者:Arif Nadeem如果你已经看过了RxJava或其他的ReactiveX库的点赞数,你一定会同意我的说法:响应式编程的学习曲线很陡峭,而之所以形成这种学习体验,则是因为没有好的学习向导和书籍。我探究了响应式编程(尤其是RxJava)背后的基本原理

2015-12-30 12:15:40 6607 1

原创 RxJava学习笔记2:基于RxJava+okHttp的Rest Cas登录实现

1.本来打算用已经对RxJava提供支持的Retrofit2实现,但Retrofit2的文档基本没有,没有找到可以获取Cookie、对status code处理的方法,所以还是用okHttp进行了实现 2.上周开始学习RxJava,是想解决多个网络请求嵌套访问的问题,CAS算是比较典型的多个同步请求后才能获取实际需要的内容 3.代码中用到了”如何用okHttp进行Cookie的自动管理”,App

2015-12-14 15:06:17 9203 3

原创 Volley请求Cookie超时/Token认证失效的处理

一般App端请求应该用Token做认证吧,并且Token时间设置较长时间。这样本地不存储用户信息,保证安全。 但是由于网页版已有代码限制,这里用了Cookie做认证,网页端设了30分钟超时,不可能在App上30分钟后让用户重新登录。没用Volley之前,是用自己封装的HttpURLConnection,当Cookie超时时,可以读到401的状态吗,然后用保存在本地的用户名和密码(本地加密处理过,但

2015-12-08 20:41:27 2346

原创 Webview里JS跳转到Activity页面

有两种方法. 第一种原理是通过webview提供的js和java沟通的接口进行public void addJavascriptInterface(Object object, String name) 然后,在javascript里可以通过name来引用到object对象里有@JavascriptInterface注解的方法Java代码 WebView wv; @Override

2015-12-04 18:58:34 22487 9

原创 在一个Activity里更新另一个Activity UI

我的使用场景是有一个列表,点击某项后,进入详情页。在详情页,对该项的数据可能会进行若干更改,回到原来的列表项,要求列表项的数据得到更新。想了如下几种可能的解决办法:如果数据能存储在本地数据库的话,那么可以先把数据封装到ContentProvider,然后列表页通过Loader方式加载数据,详情页用ContentObserver的方式的方式修改数据。简单的数据存储在SharedPreference的

2015-11-28 13:25:40 3126

原创 RecyclerView里notifyItemRemoved的坑

RecyclerView很多时候是展示静态的数据,并不会有删除的操作,讲到RecyclerView时,会提到它提供了一个很好的展现删除操作动画的函数,代码片段一般是这样的 @Override public void onBindViewHolder(final CommonViewHolder holder, final int position) {

2015-11-28 11:49:18 43484 26

转载 ListView 常有用设置

http://mypyg.iteye.com/blog/850624

2014-12-22 11:52:07 622

原创 网络访问流程

1. 服务器监听8080端口,作为一台主机,有IP

2014-08-11 21:39:00 1156

转载 DOM对象与jquery对象有什么不同

http://zhidao.baidu.com/question/192875376.htmljQuery对象和DOM对象使用说明,需要的朋友可以参考下。1.jQuery对象和DOM对象第一次学习jQuery,经常分辨不清哪些是jQuery对象,哪些是 DOM对象,因此需要重点了解jQuery对象和DOM对象以及它们之间的关系.DOM对象,即是我们用传统的方法(javascript

2013-01-22 18:42:36 512

转载 c++ 函数返回引用

一,c++函数的返回分为以下几种情况1)主函数main的返回值:这里提及一点,返回0表示程序运行成功。2)返回非引用类型:函数的返回值用于初始化在跳用函数出创建的临时对象。用函数返回值初始化临时对象与用实参初始化形参的方法是一样 的。如果返回类型不是引用,在调用函数的地方会将函数返回值复制给临时对象。且其返回值既可以是局部对象,也可以是求解表达式的结果。3)返回引用:当函数返回引用

2013-01-15 19:24:49 709

原创 jQuery中$是什么意思

像我这种没有经过系统学习的人总是有这样的问题:($就是jQuery的别称而jQuery就是jQuery库提供的一个函数.(好像也不仅仅只是函数, 因为还有 $.ajax(options) 这样的使用,等同 jQuery.ajax(options))这个函数的作用是根据 () 里的参数进行查找和选择html文档中的元素, 函数作用之一就是GetElementByID的代替,但()内不仅可

2013-01-14 11:08:03 41615 7

原创 为什么类的静态成员变量要在类外初始化

在C++中是这样的http://blog.csdn.net/shandianling/article/details/8136003在类定义中1. 在类中,只是声明了静态变量,并没有定义。// 普通变量也是声明,然后在实例化对象时定义2. 声明只是表明了变量的数据类型和属性,并不分配内存;定义则是需要分配内存的。注意:如果在类里面这么写int a; 那么是既声明了变量,也定义了

2013-01-11 13:20:02 4810 1

转载 C++ 虚函数实现机制

class A{public:virtual void f();virtual void g();private:int a};class B : public A{public:void g();private:int b;};//A,B的实现省略1、c++实现多态的方法其实很多人都知道,虚函数在c++中的实现机

2013-01-10 16:54:43 574

转载 Java命令参数大全

http://hi.baidu.com/anlylove/blog/item/b4a0cc1fa9779cffe0fe0bd3.htmlJava在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOME\bin\java –option 来启动,-option为虚拟机参数,JAVA_HOME为JDK安装路径,通过这些参数可对虚拟机的运行

2013-01-09 19:54:19 692

原创 annotation-config, annotation-driven, compont-scan 区别

综合网上答案ext:annotation-config/>隐式地向Spring容器中注册AutowiredAnnotationBeanPostProcessor、CommonAnnotationBeanPostProcessor、PersistenceAnnotationBeanPostProcessor 及 equiredAnnotationBeanPostProcessor 这

2012-12-28 15:53:21 10335 3

CC++中文参考(翻译自C++reference)

标准 C 库和C++ 标准模板库的讲解,包括CString,C++ Vectors等,中文讲解。从内容上看是翻译自C++referen 网站的英文。英文版的也有。最新的还是去看这个网站的内容吧,够详细了吧,欢迎下载。

2009-12-29

全中文MFC类库详解

MFC类库详解,中文版,适合新手吧,英文确实还是得好好学,我也在学习中。里面讲的挺详细

2009-12-29

空空如也

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

TA关注的人

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