自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (156)
  • 收藏
  • 关注

原创 Google protocol buffer简介

Google Protocol BufferGoogle Protocol Buffer又简称Protobuf,它是一种很高效的结构化数据存储格式,一般用于结构化数据的串行化,即我们常说的数据序列化。这种序列化的协议非常轻便高效,而且是跨平台的,目前已支持多种主流语言。通过这种方式序列化得到的二进制流数据比传统的XML, JSON等方式的结果都占用更小的空间,并且其解析效率也更高,非常适合用于通讯协

2017-04-29 10:09:53 3394

原创 android断点下载

断点下载往往用在大文件的下载过程中,如传统的迅雷下载用的就是断点下载技术,说起来原理比较简单:对文件进行分片,并对分片的文件进行标记,然后分片下载,下载完成后对数据流进行重组,写到本地文件。如果涉及到多线程问题,还会涉及到数据的存取操作。为了更加方便的讲解断点下载的原理,我们这里暂时不考虑断点续传问题,及数据库问题。首先来看一一个多线程下载的例子。多线程下载我们先看一下单个线程的下载逻辑: Sm

2017-04-25 17:33:50 2854

原创 React Native开发之调试

在做React Native开发时,少不了的需要对React Native程序进行调试。调试程序是每一位开发者的基本功,高效的调试不仅能提高开发效率,也能降低Bug率。Developer MenuAndroid模拟器:可以通过Command⌘ + M 快捷键来快速打开Developer Menu。也可以通过模拟器上的菜单键来打开。iOS模拟器:可以通过Command⌘ + D快捷键来快速打开Deve

2017-04-22 23:15:07 7025

原创 Android App瘦身实战

随着业务的快速迭代增长,不断引入新的业务逻辑代码、图片资源和第三方SDK等,很多app都面临一个一个结果,app越来越大,甚至很多无用的代码,包体积的增大带来了很多问题,诸如app启动更慢,代码维护越来越困难。公司业务发展到一定程度之后,重构,代码优化,app瘦身成为不得不做的一个任务。这里以xx外卖app为例给大家讲讲app瘦身过程中常用的几种方法(也都是网上老生常谈的)。apk文件构成我们可以用

2017-04-21 20:43:20 4498 9

原创 深入理解Java之JVM堆内存分配

Java堆是被所有线程共享的一块内存区域,所有对象和数组都在堆上进行内存分配。为了进行高效的垃圾回收,虚拟机把堆内存划分成新生代、老年代和永久代(1.8中无永久代,使用metaspace实现)三块区域。 Java把内存分成两种:栈内存和堆内存。关于堆内存和栈内存的区别与联系。简单的来讲,堆内存用于存放由new创建的对象和数组,在堆中分配的内存,由java虚拟机自动垃圾回收器来管理。而栈内存由使用的

2017-04-20 22:16:56 15710 1

原创 React Native调用Android相机图库

概述在很多的React Native开发中,我们需要调用原生的api实现调用相机和图库的功能,网上用的最多的开源库如:react-native-image-picker。关于react-native-image-picker的用法大家请看相关的文档。我们今天手动实现一份。调用Android图库相机创建项目执行命令 :react-native init HeadImage 创建一个名为HeadImag

2017-04-19 21:53:48 5283

原创 ReactNative调用Android原生模块

有时候App需要访问平台API,但React Native可能还没有相应的模块包装;或者你需要复用一些Java代码,而不是用Javascript重新实现一遍;又或者你需要实现某些高性能的、多线程的代码,譬如图片处理、数据库、或者各种高级扩展等等。 我们把React Native设计为可以在其基础上编写真正的原生代码,并且可以访问平台所有的能力。要想实现访问Android原生API,总结一下,主要有

2017-04-18 12:31:31 2902

原创 深度神经网络中的对抗样本与学习

概述最近 大半年,人工智能领域成为科技领域提到的最多的名词之一。在kdnuggets此前发布的文章(Deep Learning’s Deep Flaws)’s Deep Flaws中,深度学习大神Yoshua Bengio和他的博士生、Google科学家Ian Goodfellow在评论中与作者就深度学习对抗样本(Adversarial Examples)展开了热烈的讨论,kdnuggets编辑邀请

2017-04-17 10:06:42 8296 1

翻译 实战卷积神经网络

在近些年,深度学习领域的卷积神经网络(CNNs或ConvNets)在各行各业为我们解决了大量的实际问题。但是对于大多数人来说,CNN仿佛戴上了神秘的面纱。CNN能做什么CNN是深度学习算法在图像处理领域的一个应用。主要被用来找寻图片中的模式。这个过程主要有两个步骤,首先要对图片做卷积,然后找寻模式。在神经网络中,前几层是用来寻找边界和角,随着层数的增加,我们就能识别更加复杂的特征。这个性质让CNN非

2017-04-14 20:29:48 7773

原创 React Native之打包

用React Native开发好APP之后,如何将APP发布到市场以供用户使用呢?不管是Android还是ios等原生app走的都是:签名打包—>发布到各store这两大步骤。本文将对Android和ios两大平台打包过程做一个简单的介绍。Android平台打包在Android原生的app开发打包过程中,主要有两种发布方式:一种是借助于命令行操作,另外一种是借助于Android Studio进行发布

2017-04-13 22:23:20 12269 1

原创 React语法基础之JSX

概述React的核心机制之一就是可以在内存中创建虚拟的DOM元素。React利用虚拟DOM来减少对实际DOM的操作从而提升性能。JSX是什么JSX是React的核心组成部分,它使用XML标记的方式去直接声明界面,界面组件之间可以互相嵌套。React发明了JSX,利用HTML语法来创建虚拟DOM。当遇到<,JSX就当HTML解析,遇到{就当JavaScript解析。使用虚拟DOM可以将React的语法

2017-04-12 22:35:03 2538

原创 React 介绍及实践教程

概述React 是近期非常热门的一个前端开发框架,其本身作为 MVC 中的 View 层可以用来构建 UI,也可以以插件的形式应用到 Web 应用非 UI 部分的构建中,轻松实现与其他 JS 框架的整合,比如 AngularJS。同时,React 通过对虚拟 DOM 中的微操作来实对现实际 DOM 的局部更新,提高性能。其组件的模块化开发提高了代码的可维护性。单向数据流的特点,让每个模块根据数据量自

2017-04-12 08:44:53 3086

原创 ios入门之界面基础

学习移动app开发,我们常常从讲解基本的控件开始,如UILabel、UISearchBar、UIButton、UITextField等等。在实现一个简单的ios 应用之前,我们首先来看ios开发中一些基本的概念。视图控制器(View Controllers)视图控制器是MVC(Modl-View-Controller)模式的逻辑部分。按照字面意思,这个控制器能够控制某个视图。UIViewContro

2017-04-10 21:57:12 2554

原创 一篇文章搞懂人工智能、机器学习和深度学习之间的区别

概述2015年11月9日,Google发布人工智能系统TensorFlow并宣布开源。这两年在不管在国内还是在国外,人工智能、机器学习仿佛一夜之前传遍大街小巷。机器学习作为人工智能的一种类型,可以让软件根据大量的数据来对未来的情况进行阐述或预判。如今,领先的科技巨头无不在机器学习下予以极大投入。Facebook、苹果、微软,甚至国内的百度,Google 自然也在其中。去年早些时候 Google De

2017-04-09 21:37:34 55815 7

原创 React Native布局之FlexBox

概述FlexBox(弹性框布局):英文全称the flexible box Module,FlexBox旨在提供了在不同尺寸设备上都能保持一致的布局方式。 其主要思想是:让容器有能力让其子项目能够改变其宽度|高度|顺序,以最佳方式填充可用空间。在布局中,首先得确定主轴方向(flexDirection),主轴组件的对齐方式(justifyContent),侧轴组件的对齐方式(alignItems),

2017-04-08 10:54:54 1256

原创 图算法之bfs、dfs、prim、Dijkstra

# 概述 在图算法中经常要执行遍历每个顶点和每条边的操作,即图搜索。许多图算法都以图搜索为基础,如2-着色问题、连通性计算基于深度优先搜寻(depth-first search, DFS),而无权最短路径则基于广度优先搜索(breadth-first search, BFS)。基于搜索的算法还包括计算最小生成树的Prim算法以及计算最短路径的Dijkstra算法。图实现算法在现实的算法结构中占据重

2017-04-07 18:05:25 4117

原创 深入理解Java之垃圾回收

概述由于JVM中垃圾收集器的存在,使得Java程序员在开发过程中可以不用关心对象创建时的内存分配以及释放过程,当内存不足时,JVM会自动开启垃圾收集线程,进行垃圾对象的回收。 那么垃圾回收线程到底是什么时候触发,并如何实现垃圾回收的呢?本文将对openjdk的源码进行分析,并通过代码分析Java垃圾回收的过程。VMThreadVMThread主要负责调度执行虚拟机内部的VM线程操作,如GC操作等,

2017-04-04 22:36:49 2931

原创 深入理解Android Build系统

概述Android Build 系统是用来编译 Android 系统、Android SDK 以及相关文档的一套框架。在Android系统中,Android 的源码中包含了许许多多的模块。 不同产商的不同设备对于 Android 系统的定制都是不一样的。如何将这些模块统一管理起来,如何能够在不同的操作系统上进行编译,如何在编译时能够支持面向不同的硬件设备,不同的编译类型,且还要提供面向各个产商的定制

2017-04-02 22:41:56 7163

原创 Mac Jenkins搭建 Android/IOS自动打包环境

如何在mac上利用Jenkins搭建 Android/IOS自动打包环境呢?设置静态IP打开”System Preferences…”,设置静态ip。 设置Terminal在”Utilities”中找到Terminal,点击”Terminal”。 右击Terminal图标,选择”Options” -> “Keep in Dock”,使之固定在Dock上。 点击菜单栏中的”Terminal” -

2017-04-01 23:19:52 1934 1

原创 使用Jenkins搭建Android自动打包环境

概述Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:持续的软件版本发布/测试项目;监控外部调用执行的工作。 对于我们开发工程师来说,我们只管写代码,至于怎么打包,测试,我们是不需要过多关注的。而现在比较流行的方案是:使用Jenkins搭建Android自动打包。Jenkins环境搭建软件环境: windows7 64bit; jdk1.8 android

2017-04-01 11:27:15 7221

APMInsigh Android性能监控代码

APMInsight Android性能监控示例代码,本文介绍如何在应用性能监控全链路版控制台接入应用。

2022-09-27

Android离线包前端代码

Android离线包前端代码,在前端打包的过程中同时生成离线包,我的思路是 webpack 插件在 emit 钩子时(生成资源并输出到目录之前),通过 compilation 对象(代表了一次单一的版本构建和生成资源)遍历读取 webpack 打包生成的资源,然后将每个资源(可通过文件类型限定遍历范围)的信息记录在一个资源映射的 json 里

2022-06-03

AndroidDemo.zip

AndroidDemo.zip

2021-12-18

Flutter 跨平台应用开发简单的示例

Flutter 跨平台应用开发简单的示例,常见组件效果,路由混合开发示例

2021-01-13

ModalViewDemo.zip

React Native自定义Modal弹框,文章参考https://xiangzhihong.blog.csdn.net/article/details/110388181

2020-11-30

ArouterDemo.zip

Arouter模块化开发示例,详情可以参考https://xiangzhihong.blog.csdn.net/article/details/94736340

2019-07-05

NotchScreenTool-master.zip

现在,市面上的屏幕尺寸和全面屏方案五花八门,而最常见的就是刘海屏,不过对于右侧较小的刘海,业界一般称为水滴屏或美人尖。

2019-06-09

算法面试题总结.docx

算法笔记

2019-06-06

淘票票前端代码.zip

网上下载的前端淘票票的源码,新书入门,源码链接https://github.com/canfoo/react-taopiaopiao

2019-05-14

android 视频图片预览

Android的图片加视频的预览,视频和图片分开管理,有需要的可以看看

2019-04-28

旅游网站Vue前端

使用Vue编写的前端界面,数据使用的是本地的模拟数据,前端小白可以看看

2019-04-24

民宿小程序和后台

民宿微信小程序,有后台,运行小程序需要先在本地部署后台代码

2019-04-11

ViewPager+Fragment视频切换

Android VideoView 在ViewPager+Fragment中切换视频播放引起的ANR问题

2019-03-29

微信自定义播放组件

仿照微信视频播放的组件,支持视频和图片切换等功能。

2019-03-20

android photoViewy源码

Android图片预览源码,photoViewy支持图片的放大与缩小,是一个Android开发必备库,最新版2.0.0

2019-03-12

Android仿微信图片选择

最近公司有一个选择图库的需求,需要支持图片和视频,网上找了很多,基本是16,17年的代码,大部分也是转载的内容,因为之前做过自定义拍照和相册,以及使用gpuImage实现滤镜、贴纸等效果,所以决定自己动手撸一个。

2019-03-12

iOS骨架屏源码

骨架屏实现,涵盖Android、iOS、前端的骨架屏实现,文章地址:https://blog.csdn.net/xiangzhihong8/article/details/85780629

2019-01-04

RN提示模版

RN提示模版

2018-12-14

微信小程序源码

前段时间用了下快狗打车,感觉贼方便,本部分是微信小程序源码。

2018-11-19

Jest单元测试

单元测试例子,博客地址:https://blog.csdn.net/xiangzhihong8/article/details/83819929

2018-11-09

Antd管理系统

React+Antd后台管理系统,项目源码地址:https://github.com/zhaoyu69/antd-spa

2018-11-01

FlatBuffer

flatbuffer是google的一个跨平台串行化库,开发这个最初是用在游戏项目中,代码是实例

2018-10-25

Javassist代码注入

javassist实现代码注入,详细内容可以参考;https://blog.csdn.net/xiangzhihong8/article/details/83060674

2018-10-15

仿喜马拉雅FM

最近抽空面了几家公司,大部分都是从基础开始慢慢深入项目和原理。面试内容还是以OC为主,但是多数也都会问一下Swift技术情况,也有例外全程问Swift的公司(做区块链项目),感觉现在虽然大多数公司任然以OC做为主开发语言,但是Swift发展很强势,估计明年Swift5以后使用会更加广泛。

2018-09-26

Picker组件及其他组件

资料是使用RN开发的滚轮组件,支持常见的单滚轮、双滚轮和三滚轮,此外还提供了一些其他的自定义组件,需要新建一个项目并将代码拷贝过去

2018-09-04

Android原生集成RN

最近,很多的公司,特别是小公司、小项目,为了解决人力成本的问题,都开发将移动原生开发转到了跨平台开发,或者原生+h5的混合开发,今天要说的是如何在原生项目中集成React Native。

2018-06-06

Flutter跨平台

使用Google跨平台开发框架Flutter开发的APP,Flutter是Google用以帮助开发者在Ios和Android两个平台开发高质量原生应用的全新移动UI框架

2018-06-01

vue手机客户端

在移动应用中很多功能都是必不可少的,使用vue构建移动应用自然也就需要实现这些功能。

2018-05-16

阿里的Atlas组件化框架

Atlas是一个Android客户端容器框架,主要提供了组件化、动态性、解耦化的支持,支持在编码期、Apk运行期以及后续运维修复期的各种问题。Atlas目前支持的主要功能有: - 在工程期,实现工程独立开发,调试功能,工程模块的独立; - 在运行期间,实现完整的组件生命周期映射,类隔离等机制; - 在运维期间,提供快速增量的更新修复功能,快速升级。

2018-05-10

Tinker热修复

使用Tinker热修复,文章介绍可以点击下面的链接:https://mp.csdn.net/mdeditor

2018-05-04

Android模块化

阿里ARouter路由实现模块化开发,Android平台中对页面、服务提供路由功能的中间件。模块化的要解决的问题:模块间页面跳转(路由);模块间事件通信;模块间服务调用;模块的独立运行;模块间页面跳转路由拦截。

2018-04-23

hexo博客打赏源码

关于如何使用Hexo+Hexo主题搭建博客系统,可以参考我之前的博客的介绍:(https://blog.csdn.net/xiangzhihong8/article/details/53727310,查看效果可以查看以下地址:https://blog.csdn.net/xiangzhihong8/article/details/79712140

2018-03-27

阿里聚安全

阿里聚安全,如何防护app被破解,如何保护app和如何破解别人的app

2018-01-03

阿里云精选API

阿里云 API Playbook,精选了100+个API,不仅有阿里云官方提供的API,也包含了大 量阿里云合作伙伴提供的优质API,涵盖了从生活服务、金融征信、气象水利、到企业 服务等十几个应用场景。 通过这本精选手册,您可以快速了解每个API提供的功能及适用的场景,帮助您快速查 找到满足特定功能的API。您也可以通过对多个API进行编排组合,来轻松完成一项应用 创新。

2017-12-27

微信语音聊天

仿微信等即时通讯的语音聊天功能,可以根据实际情况做相应的优化

2017-12-08

美团RN项目

1,请确保你已经安装了React Native所需要的环境(Android sdk环境,前端环境)。 相关资料:http://reactnative.cn/docs/0.46/getting-started.html 2,使用npm工具安装项目依赖的库(在项目目录下):npm install

2017-07-31

RN 城市列表

RN 城市列表选择,实现和原生一样的效果

2017-07-21

安卓聊天页面

如何写出优雅的代码,耦合性低的代码,详细介绍请查看:http://blog.csdn.net/xiangzhihong8/article/details/73381892

2017-06-17

移动实战源码

React Native实战源码

2017-06-09

美团首页搭建

美团首页界面搭建,包括网络请求,由于ios9之后强制使用https协议,所以需要注意下。

2017-06-02

空空如也

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

TA关注的人

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