自定义博客皮肤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)
  • 收藏
  • 关注

转载 mysql 总结笔记

                                                                       .

2021-07-27 10:33:30 172

原创 Android 平台下导入Netty

一个项目在Android端需要用到Netty,查看官网发现不是Maven仓库就是直接下载jar包,太不优雅。经过尝试终于用Gradle导入了仓库。在build.gradle中添加:allprojects { repositories { google() jcenter() maven { url "https://jitpack.io"...

2019-06-24 10:10:27 1283

原创 Rxjava 的一次普通订阅

RxJava一次普通的订阅会发生怎么样的故事Observable .create(new ObservableOnSubscribe<String>() { @Override public void subscribe(ObservableEmitter<String> emitter) throws Exception { ...

2019-06-20 13:25:30 238

原创 Retrofit源码解析

本文是基于Retrofit2.6.0源码的应用于分析。Retrofit的应用定义一个网络请求接口public interface GitHub { @GET("/repos/{owner}/{repo}/contributors") Call<List<Contributor>> contributors(@Path("owner") String o...

2019-06-18 09:26:07 106

原创 Handler、Looper、MessageQueue的关系

在日常开发中我们经常用到Handler,用来处理、传递消息而Handler中内部怎么实现,它与Looper、MessageQueue到底有什么关系确说不上来。先看下大体流程图:MessageQueue内部维护了一个Message的队列,我们通过Handler将消息Message发送到Looper中的MessageQueue,通过不断循环的Looper从MessageQueue中取出消息进...

2019-05-07 21:01:34 172

原创 pyenv python管理工具

安装pyenv后,可以管理所有python版本1.下载 curl https://pyenv.run | bash2.配置pyenv 环境变量export PATH="/Users/haosiyuan/.pyenv/bin:$PATH"eval "$(pyenv init -)"eval "$(pyenv virtualenv-init -)"3.pyenv update 版本更新4...

2019-04-28 13:41:31 116

原创 Android Paint 你完全都了解了吗(二)

承接上文Android Paint 你完全都了解了吗(一)2、效果Paint效果类Api2.1、setAntiAlias设置抗锯齿paint.setAntiAlias(boolean alias)设置抗锯齿,默认关闭;或在实例化时设置Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);2.2、setStyle 设置填充模式Paint.Style...

2019-04-16 16:53:11 210

原创 Android Paint 你完全都了解了吗(一)

1、颜色1.1、基本颜色像素的基本颜色根据绘制的内容不同而有不同的方式:Canvas的颜色填充方法canvas.drawColor/drawRGB/drawdrawARGB()颜色直接写入方法中进行设置背景;canvas.drawBitmap()的颜色直接由Bitmap对象提供;绘制图形与文字的颜色则需要设置Paint。进入正题Pain设置颜色的方法分为两种:1.1.1、直接设置颜色p...

2019-04-16 15:34:16 435

原创 Android 跳转系统设置页面(持续更新)

通常我们有些情况下会引导用户跳转到系统设置页面,但是发现不同系统中跳转设置的方法不一样,这里总结了部分机型跳转设置。通常情况下: Intent intent = new Intent(); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setAction(Settings.AC...

2019-03-29 16:20:03 939 1

原创 Android 手机制造商

通过 Build.MANUFACTURER 获取手机制造商,各大厂商具体如下private static final String MANUFACTURER_HUAWEI = "Huawei";//华为private static final String MANUFACTURER_MEIZU = "Meizu";//魅族private static final String MANUF...

2019-03-29 16:04:25 1088

原创 Android 需要申请的权限

记录下6.0以后需要手动申请的权限/** * 日历权限组 */ interface CalendarGroup { String READ_CALENDAR = Manifest.permission.READ_CALENDAR; String WRITE_CALENDAR = Manifest.permission.WRITE_C...

2019-03-29 15:10:48 503

原创 Android 常见问题汇总持续更新

#####3.291.今天在使用Aspectjx中遇到了 java.util.zip.ZipException: zip file is empty 这个异常通常遇到这个异常时应该是某个包为空为0kb。经排查这个0kb的包可能出现在插件生成的文件中,这个空包是很难定位的。这种问题基本上是用改插件的时候的代码错误或者插件的配置错误,这类bug很难定位到具体位置,只能逐类排查最后发现一个大小写错误导...

2019-03-29 14:52:31 116

原创 Android 应用程序的启动过程(一)

Zygote进程的介绍 基于8.0Zygote进程称之为孵化进程系统中所有的应用程序进程及系统SystemServer进程都是由Zygote进程通过Linux的fork()函数孵化出来的。Zygote进程的启动zygote进程对应的主入口文件为/frameworks/base/cmds/app_process/app_main.cpp的main()方法:int main(int argc...

2019-03-25 20:50:47 957

原创 Activity 的启动过程

Activity的启动流程图 记载 startActivity 到AMS 到Activity生命周期的OnCreate()

2019-03-18 21:21:10 90

原创 mac 选择文件时 显示隐藏文件夹

command + shift + .

2019-03-12 09:39:46 2361 1

原创 Android 下网络状态监听

最近在做网络监听的时候发现原来用的NetworkInfo 中好多方法已经过期,so 看了下SDK及文档现将最新方法记录下。//获取网络连接管理ConnectivityManager connectivityManager = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);...

2019-03-01 10:50:57 1606

原创 C++ Boost Iostreams

ostreams 库提供了一个从STL容器读取的简单方法:boost::iterator_range 实例可以直接附加到 filtering streams and stream buffers带过滤的流和流缓冲 上namespace io = boost::iostreams;int main(){ using namespace std; typedef my_so

2017-06-25 20:39:39 369

原创 CLion使用CMake 导入本地Boost库学习笔记

CLion使用CMake 导入本地Boost库学习笔记project(myboost)set(CMAKE_CXX_STANDARD 11)set(SOURCE_FILES main.cpp)#add_executable(myboost ${SOURCE_FILES})set(BOOST_ROOT "/Users/haosiyuan/Downloads/boost_1_64_0/boost")#

2017-06-23 11:25:48 2016

原创 android 6.0权限处理

6.0以前在清单中添加6.0之后就会遇到一些隐私权限不能光在清单中添加,还需要在前端申请权限ContextCompat.checkSelfPermission(this,Manifest.permission.CALL_PHONE)!= PackageManager.PERMISSION_GRANTED //检查是否有某个权限//申请打电话权限ActivityCompat.requ

2016-09-01 14:55:33 204

空空如也

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

TA关注的人

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