自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zcmain的专栏

要么看书 要么旅行 身体或心灵总要有一样在路上。

  • 博客(189)
  • 资源 (6)
  • 收藏
  • 关注

原创 git常用命令

git常用命令文章目录git常用命令账号配置git 文件管理分支管理命令行指引Git 全局设置git clonegit remote远程创建一个新仓库,克隆到本地将本地现存项目推送到到远程仓库将本地已有的Git仓库项目推送到一个新的地址(或者说更改现有的git仓库远程地址)git地址迁移一台主机配置可访问多个github仓库地址账号配置MAC配置全局的git账户查看所有账户信息git config --list查看当前全局的git账户信息git config user.na...

2021-09-17 12:53:26 367

原创 国密算法—SM2介绍及基于BC的实现

国密算法—SM2介绍及基于BC的实现文章目录国密算法—SM2介绍及基于BC的实现简介私钥公钥数据格式密钥数据格式私钥数据格式公钥数据格式加密数据格式签名数据格式计算过程生成密钥加密解密预处理预处理1预处理2数字签名签名验证Java基于BC实现SM2加解密简介SM2密码算法是一种椭圆(非对称)密码算法加密强度:256位(私钥长度);公私钥长度:公钥长度为64字节(512位),私钥32字节(256位);支持签名最大数据量及签名结果长度:最大签名数据量长度无限制;签名结果为64字节(但由于签名后会做

2021-02-25 19:03:48 12739

原创 https免费证书申请及部署流程

文章目录申请地址申请流程linux tomcat部署https证书扩展申请证书-域名验证配置指南申请地址FreeSSL.cn申请流程填写域名及选择品牌输入邮箱并选择生成方式(我这里选择离线生成)安装KeyManager重新尝试keymanager生成CSR文件成功,返回网页继续进入域名购买商平台(我这里是阿里云平台),验证DNS具体配置指南参考扩展(注意先点一下右下角检测,没问题再点验证按钮)配置好之后点击验证,验证成功,即成功生成证书信息其中私钥存储在k

2020-10-14 14:00:28 1550 2

原创 创建基于Springboot的RESTFUl服务并打包发布

文章目录创建项目编写代码打包发布打包jar打包war扩展Maven引入本地Jar包并打包进War包中创建项目IntelliJ IDE选择New—>Project—>Spring Initializr 设置项目group、Artifact、type、Language、Packaging、Java Version下一步选择Web—>Spring Web下一步填写项目名称及存储路径下一步点击完成,开始初始化项目下载maven依赖的包PS:初次创建项目,下载依赖包会耗时很久,

2020-09-02 18:04:05 711

原创 微信支付(商户平台)卡券开发文档

文章目录简介代金券代金券分类预充值代金券免充值代金券发券渠道二维码发券营销活动发券高级API接口发券核销方式支付中自动核销券操作指引开发前准备开通代金券权限下载API证书商户平台操作创建代金券激活代金券发放代金券管理代金券API接口操作创建代金券激活代金券发放代金券管理代金券商家券商家券分类满减券折扣券换购券发券渠道商家自有流量场景微信支付平台流量场景核销方式线上小程序核销(MINI_PROGRAMS)线下滴码核销(OFF_LINE)微信支付付款码核销(PAYMENT_CODE)用户自助核销(SELF_CO

2020-08-24 13:36:40 5068

原创 微信公众平台卡券API接口开发指南

文章目录说明卡券术语介绍卡券生命周期流程图准备申请开发账号公众平台开发配置公众号开发信息配置填写服务器配置并验证有效性申请微信认证及开通微信卡券功能卡券分类普通卡券会员卡券朋友的券特殊票券接口开发创建卡券1. 获取access_token接口2. 上传卡券Logo3. ~~设置卡券适用门店~~(可选)4. 选取卡券背景颜色5. 创建卡券(这里以团购券为例)注意事项跳转外链带参数说明投放卡券二维码投放JS-SDK投放微信卡券货架投放公众号下发消息投放添加测试白名单账号核销卡券线下核销线上核销管理卡券查询Cod

2020-08-24 11:47:11 10021

原创 微信公众平台卡劵功能接入指南

文章目录1. 微信卡券功能介绍2. 申请方式2.1 公众平台申请2.2 开放平台申请3. 申请条件3.1 公众平台条件3.2 开放平台条件4. 申请种类、类目、商户类型4.1 开放种类4.2 开放类目4.3 开放商户类型5. 申请流程及步骤5.1 申请流程5.2 申请步骤5.2.1 公众平台申请步骤5.2.2 开放平台申请步骤6. 开发流程6.1 制作普通卡券通过微信公众平台制作(免开发)6.2 卡券投放6.3 卡券核销扩展微信《卡券功能申请类目与资质审核要求》微信《卡券违规处罚及清退规则》1. 微信卡券

2020-08-24 11:18:23 5847

原创 RN图表组件react-native-charts-wrapper

文章目录组件安装组件使用组件属性一. 散点图组件(ScatterChart)二. 饼图组件(PieChart)三. 折线图组件(LineChart)五. 柱状图(BarChart)效果图组件安装//安装yarn add react-native-charts-wrapper组件使用//引入组件import { LineChart, ScatterChart, ...} from 'react-native-charts-wrapper';//使用<Sc

2020-08-10 12:09:38 3830 2

原创 微信支付模式介绍

文章目录支付模式介绍普通商户版说明账号申请指引(以下以小程序为例)开发指引服务商版说明账号申请指引开发指引特约商户进件银行服务商版扩展微信开放平台微信公众平台微信商户平台微信服务商平台APP拉起微信小程序支付模式介绍普通商户版说明普通商户版是最常规的普通支付模式,可以进行交易直连商户收款,但是不能拓展子商户。开发者需要申请自己的appId和mach_id,同时两者需具备绑定关系,以此具备微信支付能力。账号申请指引(以下以小程序为例)登录微信公众平台,注册一个小程序的开发者账号。申请指引

2020-07-17 17:56:30 3132

原创 Artifactory-oos搭建私有Maven仓库

Artifactory搭建私有Maven仓库及使用文章目录Artifactory搭建私有Maven仓库及使用1.下载并解压 Artifactory2. 启动Artifactory配置3. 创建私有仓库3.1 New Local Repository(新建本地仓库)手动部署包动态部署包3.2 New Remote Repository(新建远程仓库)3.3 New Virtual Repository(新建虚拟仓库)扩展阿里云代理公共仓库列表内网用户访问私有Maven上资源出现401在涉及到模块化开发过程

2020-07-08 17:08:19 1337

原创 Android NDK—CMake配置及使用

文章目录安装NDK和CMake新建NDK项目代码实现编译构建如何使用自身项目使用其他项目使用安装NDK和CMake打开AS的Prefrences—>Android SDK—>SDK Tools选中 NDK (Side by side) 和 CMake 复选框。我这里之前在nkd-bundle中已经安装NDK就没有卸载了注意:如果您在 ndk-bundle 文件夹中安装了 NDK,它会显示在标签为 NDK 的列表中。如果您使用的是 Android Gradle 插件 3.5.0

2020-06-28 19:03:58 2409

原创 Kotlin高阶函数及Lambda表达式实现接口回调

文章目录什么是高阶函数?Lambda 表达式使用Kotlin高阶函数实现接口回调Java中接口使用Kotlin中接口使用什么是高阶函数?高阶函数是将函数作为参数或者返回值的函数。特点参数可以是函数返回值可以是函数所有函数类型都有一个圆括号括起来的参数类型列表及一个返回类型举个????var onClick:()->Util //onClick变量类型为:无参且无返回类型的函数var onClick:(A,B)->C //onCick变量类型为:参

2020-06-23 18:19:34 4294 2

转载 Kotlin协程

文章目录协程是什么?如何使用?结构化并发(`runBlocking`)作用域构建器(`CoroutineScope`)提取函数重构(`suspend`)取消与超时(`cancelAndJoin`&`withTimeOut`)组合挂起函数使用async实现异步并发协程调度器与线程协程调度器在不同的线程间切换(withContext)协程异步流(Flow)扩展[可在全局创建的协程: lauch 与 runBlocking](https://blog.csdn.net/zhong_zihao/articl

2020-06-23 18:17:58 527

转载 Kotlin基础

文章目录Kotlin简介类类的声明(`class`|`object`)类的修饰符(`classModifier`|`accessModifier`)静态内部类(`class` )非静态内部类(`inner`)抽象类(`abstract`)匿名内部类类继承(`:xx()`)接口(`:xx`)单例类(`object`)委托/代理类(`by`)类委托属性委托函数(`fun`)构造函数主构造函数次构造函数普通函数可变长参数的函数(`vararg`)成员变量变量修饰符(`Var`)可变变量(`Val`)不可变变量变量

2020-06-23 18:15:35 500

原创 JDK(Android)—IO字节流与字符流

文章目录Java IO流Java IO的用途和特征Java IO类概述表字节流简介基类字节流InPutStreamOutputStream文件字节流FileInputStreamFileOutputStream缓冲字节流BufferedInputStreamBufferedOutputStream字符流简介基类字符流ReaderWriter文件字符流FileReaderFileWriter缓冲字符流BufferedReaderBufferedWriter转换流InputStreamReaderOutputS

2020-06-11 18:15:08 400

原创 Android设备存储那些事

文章目录内部存储存储结构访问方式存储特点外部存储私有目录存储结构访问方式存储特点公共(共享)目录存储结构访问方式存储特点在之前的开发过程中,对于应用存储目录存在一些模糊的观念,在AndroidQ版本中,Google对应用存储空间又做了调整,借此机会梳理一下。移动设备存储空间大致可划分为内部存储 与 外部存储,而外部存储又可细分为外部私有存储与外部共享存储,具体区别如下内部存储存储结构访问方式/** *获取应用内部存储的files路径 */String filesPath = contex

2020-06-04 19:05:02 306

原创 Android Bluetooth API及连接方式介绍

文章目录APIBluetoothDeviceBluetoothClass连接建立方式安全连接不安全连接使用注意APIBluetoothDevicejava.lang.Object↳android.bluetooth.BluetoothDevice代表**远程蓝牙设备**。通过BluetoothDevice,您可以与各自的设备建立连接或查询有关该设备的信息,例如名称,地址,类和绑定状态。//硬件地址形如: "00:11:22:AA:BB:CC"String address = Bluetooth

2020-05-29 19:20:39 1277 1

转载 Https协议通信过程以及在Android平台使用

Https协议通信过程以及在Android平台使用文章目录Https协议通信过程以及在Android平台使用Https协议通信过程TCP三次握手(建立可靠通信连接)通信协议协商(确认通信双方加密算法)证书验证传递会话密钥加密通信Https证书认证在Android中应用HTTPS示例验证服务器证书常见问题未知CA颁发服务器证书如何验签?自签名服务器证书如何验签?主机名验证常见问题扩展根证书、CA解释以及数字证书办法过程根证书与中级(中间根)证书知名CA机构TCP为什么要进行三次握手,一次或者两次不行吗?TC

2020-05-28 19:16:03 1213

原创 IOS开发者证书申请及打包步骤

文章目录1 创建苹果开发者账号2 创建`Certificates`、`APP IDs`、`Provisioning Profile`自动创建手动创建创建`Certificates`证书创建`App IDs`应用标识添加`Devices`测试设备创建`Provisioning Profiles`配置文件3 APP打包扩展如何将开发者证书导出给其他人员使用(`Profile` + `p12`)如何从本地导出包含公私钥的P12证书?证书文件`Development`、`Ad Hoc`、`Distribution`

2020-05-14 12:28:22 8835

原创 在RN中引入对TypeScript语言的支持

文章目录为什么要使用TypeScript初始化一个RN项目安装TypeScript相关插件创建TypeScript配置文件`tsconfig.json`配置`tsconfig.json`创建.ts/.tsx文件编译并运行扩展RN测试工具Jestreact-test-renderer为什么要使用TypeScriptTypeScript是JavaScript的超集,扩展了JavaScript语法,...

2020-04-28 18:41:30 1371

原创 TypeScript语法入门

文章目录简介TS特性TS与JS区别TypeScript安装开发工具基础语法第一个typeScript程序TypeScript 关键字TypeScript 注释TypeScript与面向对象TypeScript变量声明TypeScript变量作用域TypeScript基础类型anynumberNumberstringboolean数组类型元组枚举voidTypeScript联合类型语法格式数组联合类...

2020-04-27 18:55:08 1088 1

原创 ES6 语法

ES6 语法文章目录ES6 语法1. let 与 const2. 解构赋值3. ES6字符串4. 数值5. 对象6. 数组与集合数组(Array)集合(Map & Set)7. 函数(箭头函数)8. 迭代器(Iterator)9. ES6 Class类10. ES6 模块11. ES6 Promise对象12. ES6 async函数===========================...

2020-04-23 18:08:07 234 1

原创 NW.js开发环境搭建

NW.js开发环境搭建文章目录NW.js开发环境搭建简介:NW.js是什么?1. 选择Build Flavors SDK2. 下载安装NWJS3. 创建第一个应用4. 运行应用5. 打包应用6. APIs扩展1. 配置文件(package.json)2. 使用NW.js APIs3. 使用Node.js API(`require`)4. 开发工具与调试5. NW.js中独立环境和混合环境模式5....

2020-04-15 15:35:03 2560 1

原创 JS状态容器—Redux与React-Redux及中间件使用

文章目录基础什么是Redux?安装Redux核心思想三大原则单一数据源State只读使用纯函数来执行修改ActionReducerStoreState的基本结构`React-Redux` 使用安装React Redux核心API讲解1. Provider2. connect完整示例代码扩展:1. 嵌套组件中访问Redux Store State2. 使用`combineReducers`合并多个零...

2020-01-17 15:25:28 684

原创 RN 入门(二)—基础知识

文章目录生命周期Mounting-装载1.1 constructor1.2 `UNSAFE_componentWillMount`1.3 render1.4 componentDidMountUpdating-更新2.1 `UNSAFE_componentWillReceiveProps`2.2 `UNSAFE_componentWillUpdate`2.3 componentWillUpdate...

2019-12-19 19:47:45 3096

原创 RN Fetch使用及简单封装

文章目录什么是FetchFetch使用Fetch封装扩展1. ES6 Promise介绍2. 理解ES7 async/awiat什么是FetchFetch API提供了一个用于获取资源(包括通过网络)的接口。对于任何使用过XMLHttpRequest的人来说,这看起来都很熟悉,但是新的API提供了更强大、更灵活的特性集。—来自《Fetch API》Fetch 方法会返回一个Promise,这...

2019-12-13 17:32:48 1108

原创 RN入门-01-环境搭建

目录工具安装1. Watchman2. Node3. Yarn、React Native创建首个RN项目(Android)扩展1.React-Native iOS 真机测试详细流程2.解决XCode配置完appid后依然提示如下问题 3.解决安装cocoapods卡住问题工具安装1. WatchmanWatchman由 Facebook...

2019-12-12 18:13:37 2885

原创 设计模式(五)~行为模式(1)

文章目录行为模式简介模版方法模式(`定义算法骨架和流程,子类实现可变部分`)定义特点结构实现应用场景扩展策略模式(`定义一系列算法族,每个封装起来,使其可以相互替换`)定义特点结构实现应用场景扩展1. 策略工厂模式(策略模式+简单工厂模式)命令模式(`将系统中的相关操作抽象成命令,使调用者与实现者相关分离`)定义特点结构实现使用场景扩展1. 宏命令模式行为模式简介行为模式用于描述程序在运行时...

2019-12-10 09:52:42 165

原创 设计模式(四)~结构型模式(2)

文章目录装饰模式(`不改变类结构情况下对类功能扩展`)定义特点结构实现应用场景扩展1. 省略抽象构建者(仅有一个具体构建者时候)2. 省略抽象装饰者(仅有一个具体装饰者时候)3. 如果存在多个具体装饰者,是否可以省略抽象装饰者呢?外观模式(`多个子系统对外提供统一接口`)定义特点结构实现应用场景扩展1. 增加抽象外观者角色享元模式(`大量细粒度对象复用`)定义特点状态结构实现应用场景扩展1. 单纯...

2019-12-06 11:52:53 122

原创 设计模式(三)~结构型模式(1)

文章目录设计模式-结构型模式(一)代理模式定义分类特点结构实现应用场景扩展(动态代理)总结适配器模式定义分类特点结构实现应用场景扩展桥接模式定义特点结构实现应用场景扩展设计模式-结构型模式(一)代理模式定义代理模式:由于某些原因访问对象不适合或者不能直接引用目标对象,这时候需要给目标对象提供一个代理对象以控制对该对象的访问,代理对象作为访问对象和目标对象之间的中介。分类静态代理...

2019-12-05 11:14:13 99

原创 linux常用命令

Linux常用命令文章目录Linux常用命令查看Linux操作系统版本查看磁盘剩余空间(`df -h`)查看指定目录文件夹大小(`du -sh [目录名]`)查看指定文件夹下所有子文件大小(`du -h [目录名]`)查看当前内存使用情况(`free`)Linux释放内存(`echo 3 > /proc/sys/vm/drop_caches`)退出Linux编辑命令(`ctrl+c`)重启...

2019-12-02 19:02:04 197

转载 利用win10自带的Hyper-V虚拟机安装Centos7

文章目录开启Hyper-V程序创建虚拟机安装Centos7扩展新建虚拟网络交换机开启Hyper-V程序在搜索功能里面输入 Hyper-V 然后点击选中的部分全部选中框中的部分,然后重新启动电脑在搜索功能里输入Hyper-V 打开创建虚拟机点击新建–> 下一步–>向导指定名称和位置指定代数(这里一定要选择第一代,不然无法正常启动到安装界面)分配内存...

2019-12-02 18:30:23 452

原创 IDEA创建JavaWeb项目及打包发布到远程服务器

文章目录一 创建JavaWeb项目二 配置项目三 配置Tomcat四 部署到远程服务器环境搭建略一 创建JavaWeb项目创建项目new project—>java Enterprise—>Web Application填写项目名称和路径二 配置项目创建编译目录以及依赖库目录在WEB-INF目录下创建classes编译目录以及lib依赖库目...

2019-12-02 11:42:12 1427

原创 Shell脚本语言学习

文章目录Shell脚本语言学习Shell 约定标记(`#!`)Shell 读取输入(`read 变量名`)Shell 输出(`echo`)Shell `test`命令Shell 流程控制(`if else`)Shell 循环for循环while循环case 语句break跳出循环continueShell变量定义变量(`变量名=变量值`)使用变量(`${变量名}`)只读变量(`readonly`)...

2019-12-02 11:09:32 516

原创 阿里云服务配置SSH密钥对登陆

文章目录阿里云服务配置SSH密钥对登陆前言SSH密钥对概述SSH密钥对介绍功能优势使用限制1 登陆云服务控制台2 创建密钥对下载私钥3 绑定ECS实例4 修改私钥文件属性5 运行命令连接实例6 简化连接命令7 简化后命令的登陆阿里云服务配置SSH密钥对登陆前言最近发现自己的ECS服务实例存在不少SSH攻击事件,所幸自己的密码足够健壮避免了被暴力破解。对于弱口令而言暴力破解轻而易举,因此研究...

2019-12-02 11:08:15 4967

原创 Linux环境基于Jenkins搭建Android自动化构建平台(二)

文章目录Linux环境基于Jenkins搭建Android自动化构建平台(二)前言配置Jenkins构建参数编写shell脚本编写初始化脚本编写执行脚本构建扩展[JSP实现遍历指定路径下文件](https://download.csdn.net/download/zcmain/12009662)Linux环境基于Jenkins搭建Android自动化构建平台(二)上篇主要介绍Jenkins搭建...

2019-12-02 10:55:58 548

原创 Linux环境基于Jenkins搭建Android自动化构建平台(一)

文章目录Linux环境基于Jenkins搭建Android自动化构建平台前言一. 配置JDK二. 配置GIT2.1 下载Git上传至服务器2.2 解压Git2.3 编译安装Git2.4 配置Git环境变量2.5 配置Git全局信息以及创建公私钥a. 查看当前git全局配置信息b. 添加/覆盖Git全局用户名和邮箱c. 创建Git公私钥2.6 Jenkins平台配置Git环境三. 配置Gradle四...

2019-11-12 12:21:00 2089

转载 阿里云服务器搭建(三)~安装Jenkins

文章目录阿里云服务器搭建(三) ~ 安装Jenkins1. 下载war包2. 上传war包到服务器3. 启动jenkins4. 解锁Jenkins5. 安装插件6. 创建第一个用户(管理员)7. 登陆Jenkins阿里云服务器搭建(三) ~ 安装Jenkins1. 下载war包进入jenkins官网下载对应的war包,这里下载的是2.202通用的java war包2. 上传war包到服务...

2019-10-29 09:31:23 1581

转载 阿里云服务器搭建(二) ~ 安装Tomcat

文章目录阿里云服务器搭建(二) ~ 安装Tomcat1. 下载tomcat2. 上传服务器3. 解压tomcat压缩包4. 修改tomcat默认端口5. 配置安全组什么是安全组购买时默认安全组自定义配置安全组6. 启动tomcat服务阿里云服务器搭建(二) ~ 安装Tomcat1. 下载tomcat进入Apache Tomcat官网,下载系统所需的对应版本,这里下载的是9.0.27,将tar...

2019-10-28 15:26:00 506

转载 阿里云服务搭建(一) ~ 安装JDK

阿里云服务搭建(一)—JDK文章目录阿里云服务搭建(一)—JDK1. 登陆服务器查看操作系统版本2. 登陆Oracle下载对应的JDK3. 将下载的jdk压缩文件上传到服务器指定目录下4. 解压jdk压缩文件5. 配置JDK环境变量6. 应用环境变量7. 查看是否配置成功基于Linux操作系统1. 登陆服务器查看操作系统版本#执行命令,查看操作系统版本cat /proc/version...

2019-10-25 17:56:57 372

react-native-charts-wrapper图表库页面布局使用案例

react-native-charts-wrapper图表库页面布局使用案例,资源仅包含页面布局样式展示,可结合博客https://blog.csdn.net/zcmain/article/details/107909374观看

2020-08-10

AppBuild.zip

jsp实现对工作目录下文件夹进行遍历并展示文件名称、最后修改时间、文件大小信息,类似于web文件浏览器

2019-12-02

android native与html中js交互

android中通过java层与html中js实现互相调用数据传递 参考:http://blog.csdn.net/zcmain/article/details/51736110

2016-06-24

MVP+Retrofit+RxAndroid使用

MVP+Retrofit+RxAndroid使用demo

2016-05-16

反编译APK工具集

反编译APK工具集

2013-04-18

android开发中静默安装

实现android静默安装指定的apk希望对大家有用,内含代码和文档说明以及签名apk工具。

2013-03-26

空空如也

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

TA关注的人

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