自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (2)
  • 问答 (1)
  • 收藏
  • 关注

原创 Android JNI 开发入门

前言本文主要介绍如何在Android Studio上进行Native开发和调试,通过本文希望读者可以了解到以下几个方面:搭建Native相关环境,主要包括NDK、CMake、LLDB 创建一个新的Native项目 CMake命令和脚本编写环境说明本文基于MAC系统和Android Studio 3.5,不同系统版本和AS版本可能不一样,具体参考官方文档。搭建Nat...

2020-02-01 16:29:21 1576

原创 Android消息机制

概述Android的消息机制主要是指Handler的运行机制以及其关联的MessageQueue和Looper的工作过程,要想弄清楚Android的消息机制,需要弄清楚几个重要类的工作原理:ThreadLocal MessageQueue Looper Handler本篇文章主要从对什么这几个类的分析入手来分析Android的消息机制,代码有点多,纯属个人的学习记录,有错误的地方欢...

2019-06-23 15:57:48 168

原创 Android Studio 删除自定义的javadoc tag

Preferences -> Editor -> Inspections -> Javadoc

2019-03-01 19:33:39 544

原创 Android Java和Kotlin互转

安装Kotlin插件 Android Studio选择Preference -> Plugins,搜索Kotlin,然后安装插件,安装成功后重启 Java 转Kotlin 选择要转的Java文件 右键或是选择顶部菜单栏的Code选项 在下拉菜单中再选择"Convert Java File To Kotlin" Kotlin转Java 运行工程生成buil...

2019-02-24 18:40:08 4013

原创 Charles抓包技巧

Mac上抓包时我们一般使用Charles,这里是一些使用技巧的记录:1. MapRemote选择某个地址,右键,看到MapRemote,点击后进入编辑,可以把某个具体的地址映射到另外的地址,例如我们正式服的地址是:xxx.xxxx.xxx,而测试服是一个ip:xx.xx.xx.xx,则可以把正上方的地址映射为测试服的地址2. Focus / Ignore在使用Charles时除...

2018-08-12 11:05:50 347

原创 Android性能优化总结

一.布局优化:优化思想就是尽量减少布局的层次,以达到减少绘制时的工作量优化方法:删除无用的控件和层次使用合适的ViewGroup,如RelativeLayout使用<include> <merge> <Viewstub>尽量使用CompoundDrawable:对于相邻的ImageView 和 TextView,可以通过CompoundDrawable合二为一&...

2018-05-15 17:04:18 152

原创 二叉树的遍历和构建

一.先上图,一个简单的二叉树如下:根据根节点的访问顺序,二叉树的遍历方式可分为三种:前序遍历:先访问根节点,再访问左子树,最后访问右子树中序遍历:先访问左子树,再访问根节点,最后访问右子树后序遍历:先访问左子树,再访问右子树,最后再访问根节点上面二叉树的三种遍历序列分别如下:前序遍历序列:1,2,4,5,3,6中序遍历序列:4,2,5,1,6,3后续遍历序列:4,5,2,6,3,1二.构建二叉树有...

2018-05-04 00:00:39 258

原创 Java的线程和创建方式

一.进程与线程1. 进程:操作系统中运行的基本单元2. 线程:在进程中独立运行的子任务,CPU以不确定的反射或者说是以随即的时间来调用线程中的run方法Thread其实也是实现了Runnable接口,因为Java是单继承的,所以使用继承Thread方式创建线程时,最大的局限就是不支持多继承,此时就可以使用实现Runnable方式。Thread.java中的start方法通知“线程规划器”此线程已经...

2018-04-30 17:53:49 134

原创 IntentService 分析

IntentService 是Android为我们提供的一个类,继承Service类,第一步,先来看看源码里面开头的注释:/*** IntentService is a base class for {@link Service}s that handle asynchronous* requests (expressed as {@link Intent}s) on demand. Clie...

2018-04-03 22:55:44 191

原创 HandlerThread 浅析

一. HandlerThread 源码分析HandlerThread  有三个成员变量:int mPriority; //线程的优先级,默认为:Process.THREAD_PRIORITY_DEFAULTint mTid = -1; //线程的标记Looper mLooper; //线程的LoopermLooper  在 run() 方法中调用 Loo...

2018-04-02 21:58:57 225

原创 Android消息机制之Handler

在Android的异步消息处理机制中,Handler发挥着重要的作用,本文从Handler源码的角度,对Handler的使用进行分析。首先来看看Handler的创建方式:1. 在主线程可以直接通过new创建2. 在子线程中需要先调用Looper.prepare(),再执行new操作,否则会崩溃提示:Can't create handler inside thread that has ...

2018-02-08 23:08:45 163

原创 SSLHandshakeException

javax.net.ssl.SSLHandshakeException:

2017-08-03 21:29:38 7052

原创 React Native Navigator

Navigator is deprecated and has been removed from this package. It can now be installed and imported from react-native-deprecated-custom-components自定义 Navigator configureScene

2017-07-15 10:44:09 271

原创 TypeError: expected dynamic type 'string', but had type 'object'

TypeError: expected dynamic type 'string', but had type 'object'

2017-07-15 10:28:03 2607

原创 单例模式浅析

定义: 确保某个类只有一个实例,并且自行实例化和向整个系统提供这个实例。使用场景: 避免产生多个对象消耗过多的资源,或者某种类型的对象有且只能有一个。 例如创建一个对象要消耗过多资源,如要访问IO和数据库等资源,此时就要考虑单例模式。

2017-04-29 16:25:06 418

原创 HttpUrlConnection访问重定向接口

java HttpURLConnection 获取重定向链接

2017-03-05 11:04:46 6250

原创 Android实现类似IOS右滑返回的效果

使用类库SwipeBackLayout https://github.com/Issacw0ng/SwipeBackLayout出现的问题: 1. 主Activity返回时黑屏或者返回只是看到桌面背景而没有看到上一个Activity界面原因: 使用滑动返回需要在Activity的额主题中声明android:windowIsTranslucent=true,而该属性是设置Activity为是否为

2017-03-05 10:50:00 1141

原创 PagerSlidingTabStrip使用遇到的问题一

PagerSlidingTabStrip是Github上的一个项目,地址为: https://github.com/astuetz/PagerSlidingTabStripPagerSlidingTabStrip + ViewPager组合,可以实现滑动切换时Tab的下划线跟着滑动的效果PagerSlidingTabStrip默认的Tab下划线宽度要比Tab的文字在两边长一些,由于项目需求中既有下

2016-06-23 22:44:14 2053

原创 Android apk签名整理

Android apk 签名分三步: 1.创建证书 2.执行签名 3.对齐优化

2016-03-20 16:16:30 703

SoundTouch_Android-lib

SoundTouch 中的 Android-lib源码 libs中包含编译后的so

2016-06-22

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

TA关注的人

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