- 博客(45)
- 收藏
- 关注
转载 Android应用安全防护和逆向分析 ——apk混淆成其他语言代码
现在很多人对于app的安全是越来越重视了,尤其是金融相关的行业,对于app的防范可是下足了功夫。各种加固,各种加密算法,层出不穷。我个人觉得,在安全技术这块,没有绝对安全的。也许今天这个技术起到了防范作用,但是也许一段时间后,就有人把这个技术给破解了。所以说如果我们可以给对方破解我们的app增加难度,那也是起到了一个很大的防护功能了。我们每个app在上线的时候,都会进行代码混淆。将一...
2019-02-22 15:22:00
316
转载 Android应用安全防护和逆向分析 ——apk反编译
概述最近一直在学习Android应用安全相关和逆向分析的知识。现在移动app在安全方面是越来越重视了,特别是那些巨头企业涉及到钱的应用,那加密程度,简直是丧心病狂,密密麻麻。从这里可以看出,对于应用的安全,那些巨头企业是多么的看重了。我们有时候在某个app上见到某个功能,某个效果蛮不错的,我们想看看对方的思路怎么走的,这时候,我们就可以通过反编译来编译该apk,拿到代码,进行分析。...
2018-11-29 17:21:00
368
转载 网络编程——http协议
1、TCP/IP 基本知识一、概念TCP/IP协议是一个协议的集合,它是由众多的互联网相关联的协议集合的总称。如图二、TCP/IP分层管理TCP/IP模型分为5层:应用层,传输层,网络层,数据链路层,物理层。(注意:OSI分层是分为七层的)分层的最大好处,就是各层负责各层的任务,一旦某一块出现问题,则可以直接替换对应的层即可,无需全部更改。应用层:应用层是我们平...
2018-11-20 11:42:00
209
转载 Android安全防护防护———Android 端常见的安全问题
Android安全防护防护——加密算法:传送门https://www.cnblogs.com/huangjialin/p/9694488.html组件安全activity劫持简单来说就是正常的activity被攻击者替换上一个假冒的activity,但是用户并不知道这是一个假冒的activity,所以用户在输入相关信息后,就直接被攻击者获取到了。通常像登录页面,支付页面,或者...
2018-09-24 01:25:00
438
转载 Android安全防护防护———加密算法
摘要这篇文章本来早就应该写了,但是由于项目一直开发新的需求,就拖后了。现在有时间了,必须得写了。现在Android应用程序对安全防范这方面要求越来越高了。特别是金融行业,如果金融app没有没有做好相应安全处理,那些很容易被一些Hacker(黑客)所攻击。并不是说做了这些安全防范,这个应用就百分之百的安全的。只是说能够尽可能加大破解难度。也许有些开发者或者企业觉得。我们公司的app,数...
2018-09-24 01:10:00
183
转载 Retrofit源码解析(下)
接着上一章继续分析上一章主要简单说了一下基本使用和注解,这一章,我们主要看源码,废话不多说了,直接上。先上一张图 从网络上拿来的前面一章说了一下Retrofit的简单使用https://www.cnblogs.com/huangjialin/p/9492182.html 1 //创建retrofit 2 Retrofit retrofit = ne...
2018-08-17 11:11:00
81
转载 Retrofit源码解析(上)
简介Retrofit是Square公司开发的一款针对Android网络请求的框架,官网地址http://square.github.io/retrofit/ ,在官网上有这样的一句话介绍retrofit,A type-safe HTTP client for Android and Java。我们知道Retrofit底层是基于OKHttp实现的。对okhttp不了解的同学可以看看这一篇文...
2018-08-17 11:01:00
73
转载 OkHttp源码解析
本来这篇文章上个星期就写好了,但是当时准备上传的时候,公司停电了,而且没保存,所以,没办法,又得重新写了。说一下我个人的想法啊,很多人觉得看源码特别难,无从下手,很多源码看不懂。我觉得这是很正常的事,除非某个框架代码是你写的,不然,你很难把每一句代码都搞懂,就连框架的作者,时间一久,都没有办法保证说每一句代码都能够看得懂。我们花个三四天,一两个星期,都很难把我们自己公司新接手的项目熟悉完...
2018-08-13 16:59:00
141
转载 Volley源码解析
说点题外话,将近三个半月没有写博客了,年初换工作,在新的公司,上班第三天开始干活,花了二十来天弄了一个项目,上线后,接着又迭代了几个版本,不知不觉,试用期过完,才稍微有几天闲时。在年初的时候,就一直在想,将圈内的几个流行的网络框架的源码分析分析,但是又但是水平不够,有些分析的不好,那就尴尬了....所以花了点时间好好看了一下,走了一遍这些源码,决定试一试,相当于做个笔记吧。今天就从一个相...
2018-07-19 19:12:00
85
转载 2018年Android面试题含答案--适合中高级(下)
这里是我整理出来的面试题,答案我花了很久的时间。加上我自己的理解整理出来的,作者不易,请谅解。有答案的的:https://xiaozhuanlan.com/topic/61329408751、Activity生命周期?2、Service生命周期?3、Activity的启动过程(不要回答生命周期)4、Broadcast注册方式与区别...
2018-03-27 15:27:00
107
转载 2018年Android面试题含答案--适合中高级(上)
这些面试题是我在今年年初换工作的时候整理,没有重点。包括java基础,数据结构,网络,Android相关等等。适合中高级工程师。由于内容过多,将会分为上下两部分。下部分跳转链接:http://www.cnblogs.com/huangjialin/p/8657696.html这里是我整理出来的面试题,答案我花了很久的时间。加上我自己的理解整理出来的,作者不易,请谅解。有答案的:htt...
2018-03-27 15:10:00
246
转载 Android面试经历2018
本人14年7月份出来参加工作,至今工作将近4年的时间了,坐标是深圳。由于在目前的公司,感觉没什么成长,就想换一个公司。楼主已经在从实习到现在,已经换了三家公司了,所以这次出来的目标的100人以上,B轮以上或者是不需要融资的那些企业。我前前后后面试了将近7家公司,现在在这里和大家分享一下面试的经历,希望对一些人有帮助。今年,不知道是不是互联网的寒冬,反正我觉得是移动端的寒冬,岗位很少很...
2018-03-22 11:28:00
239
转载 AsyncTask的工作原理
AsyncTask是Android本身提供的一种轻量级的异步任务类。它可以在线程池中执行后台任务,然后把执行的进度和最终的结果传递给主线程更新UI。实际上,AsyncTask内部是封装了Thread和Handler。虽然AsyncTask很方便的执行后台任务,以及在主线程上更新UI,但是,AsyncTask并不合适进行特别耗时的后台操作,对于特别耗时的任务,个人还是建议使用线程池。好了,...
2018-03-12 00:33:00
116
转载 Android IPC机制—Binder的工作机制
进程和线程的关系IPC机制即为跨进程通信,是inter-Process Communication的缩写。是指两个进程之间进行通信。在说进程通信之前,我们的弄明白什么是线程,什么是进程。进程和线程是两个截然不同的概念。按照操作系统中的描述,线程是CPU调度的最小单位,同时线程也是一种有限的系统资源。而进程一般是指一个执行单元,在pc端或者移动端上是指一个程序或者一个应用。一个进程中可...
2018-03-11 22:48:00
132
转载 Android中线程和线程池
我们知道线程是CPU调度的最小单位。在Android中主线程是不能够做耗时操作的,子线程是不能够更新UI的。在Android中,除了Thread外,扮演线程的角色有很多,如AsyncTask,IntentService和HandlerThread等等。由于内容过多,所以将分为上下两部分,第一部分主要和大家谈谈Android中的线程,以及在Android中的常用的线程池。第二部分我们一起来...
2018-03-11 22:12:00
109
转载 Activity启动流程
Activity启动过程中做了哪些事情?下面的时序图展示里启动过程中函数的调用过程, 从图中可以知道大概流程。在介绍细节的时候是从上往下函数调用过程介绍的,如果不知道某个函数是在哪里被谁调用的,可以回过头来看下时序图。下面是对一些细节进行介绍。1.在Android中有两种操作会引发Activity的启动,一种用户点击Launcher的应用程序图标时,Launch...
2018-03-05 16:56:00
133
转载 观察者模式
概念观察者模式定义了对象间的一种一对多依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并被自动更新。在项目开发的时候,为了代码的耦合性降低,往往喜欢模块化,模块之间相互独立。那么相应的出现很多问题等待我们解决。比如,有个需求,我从网络下载数据,下载完毕后,有五个页面数据需要更新,当然随着项目的开发,可能会增加更多的页面,或者去掉一些不必要的页面。再或者说,我在ac...
2017-11-20 14:58:00
89
转载 Java 设计模式——单例模式
Java有很多的设计模式,但是让我们一个个分析出来,可能就一脸蒙逼了,今天就和大家一块来分析一下Java中的一些常用的设计模式。今天先分析单例模式单例模式的好处举个例子:有一个类,里面有若干个公共方法,现在我项目中有200个页面会调用到这个类中的方法,怎么办?我们正常的思路可能是获取该类的实例对象,A a = new A(); 然后通过对象a,拿到里面的方法,这种思路是没有...
2017-11-15 14:21:00
134
转载 RecyclerView的通用适配器
本来这一个主题应该早就写了,只是项目多,属于自己的时间不多,所以现在才开动!!前一段时间写了一篇文章,是关于ListView,GriView万能适配器,没有看过的同学,可以先看看那篇文章,然后在来学习RecyclerView的话,会容易很多。链接http://www.cnblogs.com/huangjialin/p/7661328.html当然,如果对RecyclerView基...
2017-11-09 11:39:00
124
转载 Service由浅到深——AIDL的使用方式
前言 最近有很多朋友问我这个AIDL怎么用,也许由于是工作性质的原因,很多人都没有使用过aidl,所以和他们讲解完以后,感觉对方也是半懂不懂的,所以今天我就从浅到深的分析一下这个aidl具体是怎么用的,希望对大家有帮助。 作为一名合格Android开发人员,如果没听过Service,那就有点说不过去了啊,Service是Android四大组件之一,它是不依赖于用户界面的,就是因为Serv...
2017-10-26 17:46:00
195
转载 Android热修复——Tinker的集成
前言做前端开发的都知道,当我们项目做完了以后,都会把应用上传到应用市场上供用户下载使用,比如上传到应用宝啊,应用汇啊,360啊,小米,华为,魅族啊,等等但是,有时候我们会经常遇到一些很扯淡的事情,刚刚熬夜加班将项目发到应用市场上,第二天,又发现一个严重bug,难道是开会研究看看是否能在下一版解决?还是将bug解决了,在给测试进行测试,然后再发版?如果从新发版,这个成本太高了,那怎么办...
2017-10-19 17:40:00
189
转载 ListView ,GridView 通用适配器
前言 接近半年的时间没有写博客了,今年公司的项目有点多,比较忙,没时间写,这是其一。其次是,这半年来,有时间的时候,我都会看看自己以前写的博客,也许是以前刚刚写博客,经验不足,感觉写出来的博客质量很不好,而最近,也经常在网上看别人的博客学到到了很多,趁最近项目都差不多收尾了,就写写今年下半年的第一篇博客... 从事Android开发工作有几年时间了,我发现做手机应用的话,基...
2017-10-13 15:13:00
132
转载 微信小程序之tabbar切卡
最近在研究小程序的时候,遇到了一个问题,就是tabbar切卡,在android上有fragment,在RN上也有提供一个第三方的组件来用,微信小程序,好像没有专门的一个组件来实现这个功能,度娘了大半天,虽然也有好多人实现过这样的功能,但是我发现要么是不符合我的需求,那么就是实现起来过于繁琐。于是我参考多个高手写的博客,实现出了一个符合自己需求的。先上代码。先看js文件: 1...
2017-01-19 15:31:00
155
转载 微信小程序底部导航Tabbar
底部导航栏这个功能是非常常见的一个功能,基本上一个完成的app,都会存在一个导航栏,那么微信小程序的导航栏该怎么实现呢?经过无数的踩坑,终于实现了,好了,先看看效果图。对于底部导航栏,小程序上给出的文档要求里面的item最少2个,最多五个。好了,先看看代码:在项目中找到这个文件 1 { 2 "pages":[ 3 "pages/ind...
2017-01-12 15:25:00
460
转载 微信小程序简介
什么是微信小程序? 今年下半年的时候,微信推出了微信小程序,当然刚刚推出来的时候还是处于内测阶段,但是这并不影响这家伙的热度,也许这是一个新的时代的开启。但是什么是微信小程序呢?微信应用号是一个app推广的平台,微信将它命名为“小程序”,用户只要关注了这个应用号,就可以相当于一个app一样,就可以免去用户进行下载和卸载软件的困扰,同时还可以免去软件占用手机的资源。微信小程序能做...
2017-01-05 16:51:00
73
转载 react native AsyncStorage的使用
如果现在有一个需求,是要把用户的账号密码保存到本地,大家会怎么做的呢?如果在android中,我相信一大部分人会想到SharedPreferences,这是一个以键值对的形式进行存储的。那如果在react native中呢,有没有一个像SharedPreferences一样的轻量存储器呢?答案是有的---AsyncStorage。 AsyncStorage是一个简单的、异步的、...
2017-01-03 15:39:00
123
转载 react native 键盘遮挡按钮点击事件
在做项目的时候,我遇到一个很奇怪的问题,我先描述一下问题,在InputText输入内完成以后,点击按钮进行下一步的操作的时候,第一次点击的时候,按钮没有响应,第二次点击的时候才会响应。这样对用户体验有点不好。所以测试的果断提了一个bug。刚刚拿到这个问题,我一时也找不到方法,因为我检查了很几遍代码,敢拿人头打包票代码写的没有问题,那到底是什么问题呢?在我测了好几遍以后,发现了一点问题,第...
2016-12-22 15:49:00
193
转载 react native RadioButton(单选按钮)
刚刚写完这个多选按钮,我觉得没有单选的话,总会觉得有一点点不爽,因为在项目中我也没有用到单选,所以我没有好好研究源码,所以我在Github上找了一下,发现有一个挺好的,简单,不花哨。在Github上搜索这个react-native-flexi-radio-button下载好以后,就可以直接用了。 1 import React, { Component } fr...
2016-12-14 17:31:00
572
转载 react native 多选按钮
在做项目的时候有一个需求,是可以选择多个条件的,特地在Github上找了一些案例,发现没有什么合适的,于是自己根据这些案例,改装一下,封装了一个合适自己的。先看我封装的代码。 1 import React, {Component} from 'react'; 2 import { 3 StyleSheet, 4 View, 5 I...
2016-12-14 15:14:00
301
转载 react native 刷新机制----通知
在项目中,不知道大家有没有遇到这样的一个问题,比如说有两个页面A,B。A页面中有某个按钮点击后可以跳转到B页面,现在有一个需求就是,我在B页面中做了某些操作,然后点击回退按钮,回到A页面,A页面中的数据也需要刷新过来。嗯,如果是做过android开发的朋友一定会知道,解决这样的需求的方法有很多,比如可以使用activity的生命周期,也可以使用广播等等,但是如果在react native...
2016-12-13 15:02:00
114
转载 react native 中webview内的点击事件传到外部原生调用
先说一下我使用webview的时候遇到的一个功能需求是这样的,上图中的这个页面是用h5做的,但是由于点击“我的优惠劵”是需要跳转到我原生的页面,也就是说我需要获得这个h5提供的点击事件,但是由于这个页面不是在我们本地弄的,而是在后台那边弄好,然后通过给一个h5链接,所以我们在本地是没有办法给它添加点击事件。嗯,是的,我们没有办法给它添加事件点击,但是我们没有拿到这个点击事件,我们...
2016-12-13 11:58:00
320
转载 android中接口和抽象类的区别
最近发现很多基础有点生疏了,特地写一点博客来巩固一下。今天主要来谈谈接口和抽象类的区别,我们在项目的很多地方都会用到接口或者抽象类,但是它们之间的一些区别和相同点不知道大家有没有注意到,还有就是,什么时候用抽象类,什么时候用接口比较好呢,今天,就好好的总结一下。抽象类:1:有abstract修饰的class,绝对就是抽象类。2:抽象类中可以有抽象方法,也可以没有抽象方法,但是...
2016-11-23 16:45:00
217
转载 从外部浏览开启app
先描述一下需求:从浏览器中点击某个按钮,如果手机上装有相应的app,则直接开启app,并且到相对的页面。如果没有装该app,则会到相应的下载app的界面。我这里主要用的是第三方的东西,就是魔窗中的mlink功能。想了解魔窗的朋友就到官网去看看吧。在这里我说一下我通过魔窗是怎么实现的。首先我们看一下浏览器上面的代码,这个就是我们从该页面上跳转打开app。 1 <htm...
2016-11-22 14:16:00
134
转载 对rxandroid的简单理解
最近发现这个rxandroid挺火的,我就研究了一下,还真的挺不错。首先在说之前可能很多人会和我刚刚学习的时候一样有很多疑问,如:1:rxandroid是什么东西?2:rxandroid能干嘛?3:rxandroid为什么有着么多人用?4:rxandroid怎样用?什么是rxandroid呢?也许很多人奇怪,android前面前面多了个rx?是个什么东西...
2016-11-16 14:02:00
97
转载 react native TextInput
今天我想说一下react native中的一个控件,TextInput 翻译过来就是文本输入,对应着android中的EditText。我们先看一下官方是怎样描述的。TextInput是一个允许用户在应用中通过键盘输入文本的基本组件。本组件的属性提供了多种特性的配置,譬如自动完成、自动大小写、占位文字,以及多种不同的键盘类型(如纯数字键盘)等等。具体的我也不多说了,大家可以到官网中看看:...
2016-11-08 10:28:00
76
转载 使用广播来进行刷新页面
这几天无所事事,就又来这写写,今天我想分享一下这个广播来刷新页面。首先我先说一下这个广播的机制:广播被分为两种不同的类型:“普通广播(Normal broadcasts)”和“有序广播(Ordered broadcasts)”。普通广播是完全异步的,可以在同一时刻(逻辑上)被所有接收者接收到,消息传递的效率比较高,但缺点是:接收者不能将处理结果传递给下一个接收者,并且无法终止广播In...
2016-11-07 14:02:00
177
转载 react native中对props和state的理解
最近使用react native这个新的技术做完一个项目,所以赶紧写个博客巩固一下。今天我想说的是props和state,当然这是我个人的理解,如果有什么不对的地方,望指正。首先我先说说props。先看看官网是怎么介绍的:大多数组件在创建时就可以使用各种参数来进行定制。用于定制的这些参数就称为props(属性)。比如说除了组件本身的一些属性外,今天我想说一下这个使用props来进...
2016-11-01 16:41:00
113
转载 android中四大组件之间相互通信
好久没有写有关android有关的博客了,今天主要来谈一谈android中四大组件。首先,接触android的人,都应该知道android中有四大组件,activity,service,broadcast receiver,content provider,简单的翻译就是页面,服务,广播,和内容提供者。activity:activity指的是app中的每一个页面,他是整个项目最基本的...
2016-11-01 15:57:00
162
转载 android tab选项卡的使用
项目做完了,写写博客,在项目中遇到的一些问题,或者是自己觉得很不错的东西。这一篇主要是想和大家分享一下我在项目中封装的一个东西,就是tab选项卡。先看看效果图:我在网上看了很多有关选项卡的demo,可是发现都不太符合我的需求,万恶的产品经理想做的效果是选项卡中的文字有多长,文字下方的线就显示多长,无奈之下,自己写了。由于项目中很多地方都有用这个东东,所以我就封装了这一个,先看看...
2016-10-28 11:57:00
335
转载 android控件 ToggleButton的应用
ToggleButton是android给我们提供的开关按钮,有两种状态:选中和未选择状态。以下是代码实例: main.xml[html]view plaincopy<?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.and...
2016-10-25 17:05:00
77
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人