自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

死磕到底

做有心人,干困难事,立大格局。

  • 博客(117)
  • 资源 (2)
  • 收藏
  • 关注

原创 Drozer自定义模块以及安装使用

一、Drozer源码编译与打包Drozer由agent.apk与server端组成,其中server端就是由python语言实现,里面包括了比如app等各module。要想理解各module的运行原理或者说各command,可以下载源码进行深入的学习。Drozer的github地址:https://github.com/FSecureLABS/drozer当源码clone到本地,执行setup.py安装各依赖时,注意,得使用python 2.7版本。如果用的是python 3.x,则在安装时会报其他语

2020-11-08 19:35:47 580

原创 你真的了解taskAffinity属性么?

在2019年,有安全研究员向Google官方提交了一个利用taskAffinity的漏洞,后面被命名为StandHogg。最近在2020年5月份又公布了StandHogg 2.0漏洞。StandHogg 2.0 隐藏的更深,一般很难发现,甚至都不用设置taskAffinity就可以实现。目前官方已经发布了Android 10.0系统补丁包,有条件的可以对系统进行升级。有兴趣的同学可以看下这篇文章:https://www.xda-developers.com/strandhogg-2-0-android-vu

2020-08-23 23:21:20 5375 5

原创 Flutter从ListView的左滑删除,简单理解Key、Widget与Element之间的关系

关于Flutter学习的相关Demo源码,已经上传至Github.有兴趣的同学,欢迎Star或Flow。我会不及时更新上传相关知识点源码https://github.com/SunnyLy/flutter_sunny_demo一、原由最近在学习Flutter中ListView组件的使用。一看到ListView很自然的就会想到以下操作点:下拉刷新;上拉加载更多;添加头部、底部等;Item滑动(左滑删除)在做的过程中,我就先仿微信,选择实现左滑删除。想实现的效果如下:ListVi.

2020-05-24 15:50:08 3306

原创 Android Annotation注解、RxJava、开源网络库

以下知识点Demo源码已经上传到github:https://github.com/SunnyLy/ActivityLifeDemo一、RxJava响应式编程,流式控制。观察者消费者模式。分析的好的博文:https://www.jianshu.com/p/ceb48ed8719d目前已经更新到RxJava3.0:RxJava2.0 VS RxJava1.0:主要是RxJava采用背压策略,解决了RxJava1.0中因为被观察者(Observable)发送事件速度 与观察者(Observer).

2020-05-23 14:18:03 282

原创 如何解决Flutter SDK升级后报错问题

有时在系统推送的Flutter SDK有新版本后,有强迫症的同学可能直接点击了升级。可是升级完后发现问题就来了,运行不了,报sdk找不到。可是我刚刚控制台日志打印显示最新sdk下载完成了呀?那这篇文章就带领大家来看下,如何解决这类问题。

2020-05-18 11:45:07 3799

原创 Flutter学习大纲

下面是我整理的一个大致的Flutter学习大纲。我会按照这个大纲来进行学习,并不定时的将自己的学习心得更新至CSDN。有兴趣的同学,欢迎持续关注。让我们一起学习交流Flutter吧~同时我的学习Demo也上传至github。我会持续更新。感兴趣的同学欢迎star与fork....

2020-05-18 10:21:42 319

原创 【最新Android高级面试知识点--事件分发、Binder机制】

【最新Android高级面试知识点干货分享(六)】转载请注明出处!九、Android事件分发机制事件分发机制是个必考点,网上也有很多很好的文章,在复习的过程中,建议按照源码自己动手动画画,下图就是我自己整理的,有不对或不完整的地方,欢迎留言,我将确认后更改更新。注意:Android事件从ACTION_DOWN开始往下传,依次ACTION_MOVE---->ACTION_UP,如...

2020-05-18 10:04:53 526

原创 【最新Android高级面试知识点--绘图机制】

【最新Android高级面试知识点干货分享(五)】转载请注明出处!六、Android自定义View更深入一点的,应该了解一下WMS,以及View与Window、Activity之间是怎么关联,怎么添加上去的。针对View,还得了解它的测量模式与测量规范。延伸:从源码角度分析View的绘制流程(onAttach–onMeasure—onLayout—onDraw)针对Android...

2020-05-18 10:04:06 895

原创 【最新Android高级面试知识点--四大组件】

【最新Android高级面试知识点干货分享(四)】转载请注明出处!三、Service/IntentServiceService作为四大组件之一,也是面试官喜欢问的。一般包括:启动方式、生命周期、Binder机制、保活以及唤醒等。启动方式:startService/bindService生命周期: onCreate--onStartCommand--onDestroy ...

2020-05-18 10:03:18 223

原创 【最新Android高级面试知识点--Activity启动流程】

【最新Android高级面试知识点干货分享(三)】前面用了三篇来整理分享了我的java笔记。接下来从第四篇开始,我将正式开启我的Android面试笔记分享。《Android篇》一、Activity启动流程这是我自己绘制的时序图,从Launcher开始。可能会存在不准确或看不懂的地方;因此,也建议读者自己根据源码画一下图,加深理解记忆。二、Activity任务栈及启动模式...

2020-05-18 10:02:39 1063

原创 【最新Android高级面试知识点---JVM内存模型】

【最新Android高级面试知识点干货分享(二)】七、Java运行时数据区 与 JVM内存模型优秀博文推荐:https://www.cnblogs.com/czwbig/p/11127124.html$7.1、Java运行时数据区在JDK8以前,Java运行时数据区域具体分为以下五块:程序计数器(程序寄存器/PC寄存器Program Count Register):每个新开的线程都会有...

2020-05-18 10:01:27 803

原创 【最新Android高级面试之Java集合】

接上一篇四、Java集合(List、Set、Queue、Map)Java集合体系是一个树状,如果按照类似OSI网络模型来看的话,整个Java集合就是应用层,而底层的数组就是TCP/IP层。而它也是全网各面试题中出现概率最高的。对于集合,有几个核心知识点是需要了解的:底层数据结构、扩容机制、效率、线程案例等。整个Java集合大致分为两类:Collection接口与Map接口下图来源于...

2020-05-18 09:59:53 510

原创 【最新Android高级面试知识点--Java基础】

2020年开年不利,大家都过得不容易。我们大家都辛苦了!通过这次的疫情,使我更加直观也更进一步的理解了,何谓“命运共同体”。如果你现在有工作,那么恭喜你。你要做的就是少点抱怨,更加努力的工作,把工作做好,多存点钱。如果你正在找工作,那么我想说的是:不要急,选好自己心仪的行业,心仪的公司,好好准备面试,向它发起挑战。只要你真正努力了,真正问心无愧了,那么胜利终将属于你!!2020年And...

2020-05-18 09:58:52 258

原创 幸福 = 包容+理解+爱

一、 写在前面的话如果把人生比喻成一个大项目,则生活就像是敏捷开发。如果把项目的版本规则定为Vxx.yy的话,那岁数就是xx,这就好比项目的大版本(每个人都有自己的版本号Vxx,比如今年我就是V30.xx),每年的守岁就是我们大家集体发布大版本(这场景想像的倒还有点像《三体》里面集体脱水)。而当天在一年中所处第几天就是yy,它就好是我们自己的小版本。既然人生是项目,生活是开发,那么我们自己就是...

2018-12-31 16:16:25 428

原创 Python实现Android Apk 加固及多渠道打包

前言道高一尺,魔高一丈。现如今只做混淆的apk,在smali逆向中,可以说是裸奔。鉴于此,各大佬也都针对自己的应用进行了加固处理(加固原理自找度娘),与此同时,市面上各主流平台也都开源推出了自己的应用加固工具,比如360加固助手。 我们海豚睡眠就是采用360加固,然后再配合美团新一代打包神器walle,来打渠道包上线的。 基本流程就是:apk包 —-》 360加固 —–》多渠道打包—–》上线

2017-10-26 11:29:27 3827 1

原创 android中?attr/**与@drawable/**或@color/**等的区别及用法

前言今天在写一个Demo,研究主题的时候,遇到了【?attr/colorPrimary】这个用法,由于网上都是千篇一律的回答,所以我只能硬着头皮去看源码了,茶壶煮饺子,暂且记下来,作为备忘录吧。一、?attr/**这个Google把它叫做“预定义样式”,字面意思就是“预先定义好的样式”。也就是相当于给这个样式定义一个变量,随后是可以进行赋值的。用的最多的场景就是自定义控件了,比如我现在需要自定义一个

2017-09-11 20:38:14 2186

原创 Android 第三方打开App后现Launcher打开导致重启的问题

这暂且做一个备忘录第一次遇到这个问题,测试同学说: 每次第一次安装App后,打开至第二级界面,退至后台,然后再从Launcher界面点击Icon图标启动,会发现App会重新启动,跳至首页,而不是跳至上次打开的第二级界面。但是如果把进程kill掉后,再从Launcher界面启动,跳于二级界面—-》Home退至后台—-》Launcher界面重新启动,这样就没问题了。开始,我也很纳闷,看他操作也的确这样

2017-08-17 16:49:45 2921 1

原创 《摔跤吧,爸爸》观后感

这是一部由真实事件改编的印度电影,社会反响很大,其实他在中国市场已经上映有段时间了,到今天去看,它依旧是满座,足矣从侧面证明这部影片的质量及口碑都是上乘的。 实际的观影感受也证明了这一点。 整个影片几乎是一气呵成,没有任何的累赘,幽默与感动并存,全程都充满了正能量。 影片讲述的是一个来自印度小村庄的前国家队摔跤运动员马哈维亚·辛格·珀尕,一直梦想着能为国家争得一块

2017-05-29 18:29:21 1559 2

原创 Ubuntu14下repo的下载及Android源码下载

因为repo是google官方用python写的有关git命令的脚本, 因此第下载repo之前 首先安装git第一步:安装Git$sudo apt-get install git-core 第二步:安装curl因为要下载工具,android源码等,因此得安装一个下载工具,而Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传

2017-03-02 14:57:02 1759

转载 Git远程操作详解

本文转载至:http://www.ruanyifeng.com/blog/2014/06/git_remote.html概述Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能。 Git有很多优势,其中之一就是远程操作非常简便。本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌握Git远程操作。git clonegit remotegit fetch

2017-03-01 18:02:02 307

转载 OKHTTP之缓存配置详解

注意注意:转载一篇郭神的文章:http://chuansong.me/n/1185791251527前言在Android开发中我们经常要进行各种网络访问,比如查看各类新闻、查看各种图片。但有一种情形就是我们每次重复发送的网络请求其实返回的内容都是一样的。比如一个电影类APP,每一次向服务器申请某个电影的相关信息,如封面、简介、演员表等等,它们的信息都是一样的。显然,这样有点浪费资源,最主要的是这些重

2017-02-27 14:48:54 535

原创 Android7.0上拍照与选择照片Crash问题

在Android7.0系统上,Android 框架强制执行了 StrictMode API 政策禁止向你的应用外公开 file:// URI。 如果一项包含文件 file:// URI类型 的 Intent 离开你的应用,应用失败,并出现 FileUriExposedException 异常,如调用系统相机拍照,或裁切照片。应对策略:若要在应用间共享文件,可以发送 content:// URI类型的

2017-02-24 19:24:04 6012

原创 Android 常用的ADB 命令

1,查看某一路径的权限:adb shell ls -al /data 结果如图: 2,如果电脑通过 USB连接多台Android设备时,怎样通过命令操作指定的设备:adb devices 结果: 如果要针对上图的2IMFE1WG6N设备进行shell命令操作: adb -s 2IMFE1WG6N shell 【-s:为select的缩写,意为选择】3,用adb来对设备

2017-02-22 19:18:48 494

转载 Reflux原理与源码详解

深度好文,本文转载至:https://yq.aliyun.com/articles/61068一、看前必读Reflux是Flux模式的一种具体实现。本文从一开始就分别介绍了Flux模式和Reflux的设计原理。之后,又对源码进行深入剖析,将Reflux拆分成发布者和订阅者的公共方法、Action和Store的实现、发布者队列和View的设计等四个方面,并逐一解读。Flux模式介绍 Flux是Fac

2017-02-07 14:15:05 1689

原创 2017年的奋斗目标

本来元旦的时候想写,但那时看到满地飞的2017愿景之类的文章,使得自己瞬间没了想法。 然后,然后年都过了,今天趁加班来给它做个了结。 2016年的时候,我也写了个愿景,其中定义了三个目标,应该说除了第一个:工作与生活平衡未达到外,另外2个基本都实现了。现在看,实现的那2个其实都不算是目标,那么17年我要给自己定什么目标呢? 本想也给自己搞个短期目标,但用笔一划,除了钱还是钱,感觉太俗,别的又受

2017-02-06 20:44:38 912 3

原创 React学习札记

一、React是什么?React是一个由Facebook于2013年5月开源的库,采用MVC模式。而React它最初只是Facebook的一个内部项目使用的框架,由于它的设计思想独特,性能出众,代码逻辑简单,可以说优于市面上流行的基他JavaScript MVC框架,因此,越来越多的人开始关注并使用React,从而也使得React变成了时下最热门的前端框架。 由它衍生的React Nativ

2017-02-05 18:12:38 412 1

原创 Flex布局学习札记

一、概述随着移动互联网的发展,HTML5越发流行起来。现在越来越多的公司都开始了混合开发。前不久,微信刚刚开放的微信小程序,更加使得HTML5名声大噪起来。移动端不比PC端,它强调的是要流畅,用户体验要好,特别是现在的业务场景越来越复杂,使得页面的布局等也相应的复杂起来。在这种情况下,Flexible Box布局出现了,它使得布局变得简单起来,目前,它已经得到了所有浏览器的支持,这意味着,现在就能很

2017-02-04 15:26:43 312

原创 jQuery学习笔记(二)

重要学习札记jQuery结束动画stop()与stop(stopAll,goToEnd)方法;jQuery Chaining链操作;jQuery DOM/属性/CSS 操作;jQuery设置内容或属性的监听回调函数;jQuery 添加/删除元素;jQuery 中AJAX应用一、jQuery 结束动画结束动画的操作在很多业务场景都是很必需的,比如:当我点击一个Button的时候,某个块会

2017-01-19 19:51:38 384 1

原创 jQuery学习笔记(一)

jQuery 不是什么新的编程语言,只是一个封装了AJAX等的库,依赖它,我们可以更简单方便的实现JavaScript编程。jQuery简化了元素的查询方式以及事件处理方法。甚至有说法说jQuery是为事件处理特别设计的。一:jQuery库的依赖方式jQuery库有两种类型,一种是经过压缩的(Production version),看不到源码,一种是没有压缩的(Development versio

2017-01-18 20:05:35 458 1

原创 AJAX学习笔记

一、概述AJAX 是 Asynchronous JavaScript and XML的简称,翻译过来就是异步的JavaScript和XML。 因此,它不是一种什么新的编程语言,只是一种处理服务器数据与网页界面的技术框架,相当于Android中的网络请求框架。AJAX是在2005年的时候,因为Google的Google Suggest功能,它才流行起来的。二、XMLHttpRequest / Act

2017-01-17 19:36:48 348

原创 通信协议之:Http,Socket,UDP

最近在看《Java网络编程》,对于0基础的我来说,真是受益匪浅,从中学到了很多,使我对自己平时常用的网络操作等也有了进一步的了解。强烈建议同学们去看看这本书。一:Socket【基本用法】 都知道它被翻译为”套接字”,其使用方法如下:String host = "localhost";int port = 8080;try{Socket socket = new Socket(host,por

2016-12-28 19:56:55 647

原创 OpenGLES Android篇零基础系列(五):GLSL着色器语言

本文转载至:http://www.tuicool.com/articles/qMfAfy一.概述GLSL ES是在GLSL(OpenGL着色器语言)的基础上,删除和简化了一部分功能后形成的,目标平台是消费电子产品和嵌入式设备,比如智能手机、游戏主机等等,ES版本主要降低了硬件功耗,减少了性能开销。二.基本语法规则大小写敏感语句末尾 必须 要有分号从main函数开始执行函数声明中 不能省略返回

2016-12-22 15:49:20 2569

原创 Hexo+GitHub创建网站

由于时间关系,我暂且只是把一些注意事项记一下,当作备忘录。其他的网上有blog,我贴出链接,大家自个儿去看就是了。注意事项:一、本地Hexo+Node.js环境搭建;二、GitHub与本机IP关联,及创建仓库,仓库名格式为:UserName.github.io三、配置hexo全局命令: cnpm install -g hexo配置全局的deployer-git: cnpm in

2016-11-26 14:59:42 372

原创 漫说Android 中SurfaceView蕴含的美

相信大家对SurfaceView并不陌生,也相信大家一定有用它来做过视频播放等功能。但我今天要跟大伙分享的并不是如何利用SurfaceView来做视频播放,而是想与大伙一起来谈谈SurfaceView所蕴含的美,一种只有程序员才能读懂的美。SurfaceView作为View家族的一员,它的美是内在的,而这种内在的美又受View家族的熏陶。即继承了View的精神,但又与时俱进,不乏创新精神,标新立异,

2016-11-12 15:16:02 792 1

原创 Android控件之TextClock

前言以前写时间控件,都是自己用TextView,然后写个线程来获取当前时间,然后显示。 直到今天无意间看到ApiDemo里面的View,发现了TextClock,才知自己的无知。正文1、 TextClock简介关于时间的文本显示,Android提供了DigitalClock和TextClock。DigitalClock是Android第1版本发布,功能很简单,只显示时间;在Android4.2(对

2016-10-17 14:07:14 12234

原创 关于GLSurfaceView lockCanvas锁定画布的问题

注:由于最近一直在研究人脸识别,其中用到了GLSurfaceView,里面遇到了一个坑,一直没找到原因,现在终于找到了,权且做个备忘录。大家都应该知道,我们可以直接通过SurfaceView来锁定画布,在画布上面画自己想要的东西,完了,通过解锁画布,把内容渲染出来。可不知道为什么,在用GLSurfaceView是,调用lockCanvas()方法,死活不成功,报如下错误: 但是我如果自己写一个S

2016-10-17 10:26:02 3865 1

转载 Gradle Android客户端程序打包(基于gradle 2.10版本验证通过)

本文转载至:http://www.cnblogs.com/Freedoms/p/5171201.html一、前言  目前正在准备从eclipse开发环境向AndroidStudio迁移,提前过去探探路,不出所料,原来gradle脚本果然报错,无法运行,想想索性把本地的gradle一起升级到最新版本,毕竟1.22有点太古老了。   仍然不废话,先上干货。二、准备工作1、首先,如果使用eclipse作

2016-10-14 11:06:32 453

原创 OpenGLES Android篇零基础系列(四):透视投影(PerspectiveProjection)与正射投影(OrthographicProjection)

前言 OpenGLES Android篇零基础系统前面已经写了三篇了,因为OpenGL里面的水着实是深,所以里面好多的概念都没有去查资料,如果一碰到不会的就去查,就感觉没有连贯性。所以就只能是先一笔带过,然后再慢慢研究。正文前面我们已经了解到,OpenGL其实是把物体从世界坐标系通过各种复杂的转变,计算等变成屏幕坐标系,显示在视口中。即:把三维物体转变为二维图像。而转变的方式有透视、正射,首先我们

2016-07-27 16:16:34 11748 7

原创 Android关于Jenkins+Gradle自动化构建时Gradle版本冲突的问题

前言 Jenkins自动化构建工具已经出来好久了,它为我们省去了不少的重复性工作,例如:构建,打包等。但是对于初学者,刚开始的配置可能会有点麻烦。这里我就不再赘述了,不懂的童鞋请自行去找度娘。正文 今天在构建项目时,Jenkins构建失败,并报以下错误: 意思就是项目里面配置的Gradle为2.10,但当前jenkins所用的版本为2.4,这个时候怎么办呢?有两种方法:一、把Jenki

2016-07-20 19:49:59 3495

转载 Ubuntu12.04下Android4.0.4源码的下载及其编译过程

本文转载至:http://www.jizhuomi.com/android/environment/427.html 一、下载源码 1、下载工具repo:https://android.googlesource.com/tools/repo/ 在本地目录建个bin的文件夹,进入bin文件夹;通过git下载:Java代码 git clone https://android.google

2016-07-18 19:34:25 640

PackageTool

实现android快速安全的多渠道打包,30个渠道包,一分搞定加固及渠道打包。

2017-11-23

PythonPackageTool

这是一个python脚本实现的打包工具,可以先进行360加固,然后再进行友盟渠道打包。

2017-10-26

空空如也

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

TA关注的人

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