unclechen / blog_comment_repo Goto Github PK
View Code? Open in Web Editor NEWfor blog commetn
for blog commetn
http://unclechen.github.io/2017/12/24/JS%E5%9F%8B%E7%82%B9%E6%8A%80%E6%9C%AF%E5%88%86%E6%9E%90/
一、背景上一篇博客分析了Android上的埋点SDK技术原理,这次我们看一下这几种方案在Web页面上的实践。在JS里面同样有代码埋点、全埋点、可视化埋点三种方案,如果对这几种方案的概念不了解可以看下上一篇博客。由于mixpanel-js和Sensors Analytics JavaScript SDK都开源了自己的SD
一、背景在Android混合开发中,常常会把界面渲染全部交给html,而后台数据相关的处理交给Native。然而在有些时候html无法完全满足我们在界面处理上的要求,比如像要有一个自己定制的软键盘或者在html里面播放视频,或者想要把html里面的图片替换成Native中统一封装的ImageView等等。这不,跟Web
Android6.0发布距离现在快1年了,虽然它市场占有率仍在龟速上升中,但还是有一些App开发者已经在打包应用时将targetSDKVersion设置到了23,也就是说把App适配到了Android6.0。以前调用Android系统中需要声明权限的API时,只需要在AndroidManifest.xml文件中一次性列
在SpringBoot中,常常会需要把请求中的参数进行反序列化,得到我们需要的实体对象,在进行处理之后,再把实体序列化返回给请求方(这里不提什么DTO、VO、BO的概念,其实很多公司对这些领域模型的区分都不怎么严格,毕竟搬砖的靠技术,大佬们才谈规范和标准,在阿里巴巴的Java开发手册中对这些有比较详细的规约,建议参考)。大部分情况下,开放API的数据协议都是用的JSON(也就是请求的content
一、背景上一篇文章提到使用Play框架编写Web应用,Play框架内置了模板引擎,支持MVC架构,但这本质还是一种Server Rendering。现在越来越多的网站(尤其是不需要seo的一些商业平台系统),都在变成SPA(Single Page Application),使用React、Vue、Angular进行开发。我们先不讨论哪种方式更好,只看看它们到底是怎么做的。
一、背景随着谷歌推出的MaterialDesign不断被各种实践,最近我也碰到这么一个需求,就是要求实现一个图片的转场效果。在第一个界面上,图片被点击后,会渐渐地滑动到第二个界面中去。 其实仔细观察一下Google相册也有用到这种效果,大概的效果图是这样的: 按照我的理解,这种效果要是直接把View拿出来复用就可以。
手机设备有哪几种定位方式GPS基于卫星发射的信号,可以推算出手机到每颗卫星的距离,根据卫星的位置,推测出手机的位置。 这是一张简单的GPS定位原理图,需要一点数学知识,先不讨论这个细节,需要的同学看这里。 现在卫星信号全球都覆盖了,手机一般都有GPS芯片,因此可以实现定位。GPS方式准确度是最高的,走卫星通道,不需要联网就可以要使用。但是它的缺点也非常明显: 1.比较耗电; 2.绝大部分用户
http://unclechen.github.io/2017/12/18/Android%E5%9F%8B%E7%82%B9%E6%8A%80%E6%9C%AF%E5%88%86%E6%9E%90/
一、概念埋点,是对网站、App或者后台等应用程序进行数据采集的一种方法。通过埋点,可以收集用户在应用中的产生行为,进而用于分析和优化产品后续的体验,也可以为产品的运营提供数据支撑,其中常见的指标有PV、UV、页面时长和按钮的点击等。 采集行为数据时,通常需要在Web页面/App里面添加一些代码,当用户的行为达到某种条件时,就会向服务器上报用户的行为。其实添加这些代码的过程就可以叫做“埋点”,在很久
一、背景记录一次周末在家速成的爬虫实现之旅。受人之托,想要把这个页面http://baike.baidu.com/starrank?fr=lemmaxianhua的明星排行榜爬取下来。用chrome打开一看,其实就1000条记录。然后“右键菜单”->“检查”,看下网页的结构,也不是特别复杂。所以我目测只要
一、背景Spark是现在非常流行的一个大数据分析引擎,许多大公司的数据分析都在使用它。简单来讲,Spark主要有以下几个特点: 速度快:得益于其DAG计算模型,更容易在内存中一次性完成操作,使得Spark比MapReduce要快很多。 支持多种语言:支持Java、Scala、Python等编程语言,甚至支持SQL语法,提供了丰富的API用于数据的处理,使用起来非常方便。 支持多种环境部署:Spa
Fiddler是一个非常好用的web前端调试工具,它能记录客户端和服务器的http和https所有请求和响应,允许监视、设置断点,修改输入输出数据。与其他的抓包工具,例如wireshark、firebug等不同,Fiddler可以允许你在调试CGI接口时,修改返回的数据,也就是可以构造请求和模拟响应。
一、背景在Android混合开发中,常常会把界面渲染全部交给html,而后台数据相关的处理交给Native。然而在有些时候html无法完全满足我们在界面处理上的要求,比如像要有一个自己定制的软键盘或者在html里面播放视频,或者想要把html里面的图片替换成Native中统一封装的ImageView等等。这不,跟Web
Spring为事务管理提供了丰富的支持,对于底层不同的事务( 如Java Transaction API (JTA), JDBC, Hibernate, Java Persistence API (JPA), and Java Data Objects (JDO))管理提供了统一的抽象编程模型,而且它的API也非常易于开发者理解和使用。 Spring事务管理分为编程式和声明式的两种。编程式事务指的
http://unclechen.github.io/2017/12/18/Android%E5%9F%8B%E7%82%B9%E6%8A%80%E6%9C%AF%E5%88%86%E6%9E%90/
一、概念埋点,是对网站、App或者后台等应用程序进行数据采集的一种方法。通过埋点,可以收集用户在应用中的产生行为,进而用于分析和优化产品后续的体验,也可以为产品的运营提供数据支撑,其中常见的指标有PV、UV、页面时长和按钮的点击等,通常可以采集到下面这些数据。 行为数据:时间、地点、人物、交互的内容等 质量数据:Ap
一、背景在Android开发中有时候会遇到需要检查一个View是不是对用户可见,比如在消息流中,根据ImageView是否在屏幕中出现了再决定加载它,或者当视频滑入屏幕被用户可见时才播放、滑出屏幕就自动停止播放等等。乍一看好像都是在ListView、RecyclerView、ScrollView这些组件里面比较需要做这
0.介绍基础知识就是内功,修炼内功可到达更高层次。 课程介绍:https://time.geekbang.org/column/intro/82,这里面因为篇幅限制,不可能像写教科书一样面面俱到,更多都是在抛砖引玉,点到为止。涉及关键知识点需要自己再深入地去研究和学习,非常适合参加面试/面试别人的人,也比较适合夯实Java基础的人。 目录:
在之前的文章里总结过《Spring中三大JSON框架的使用》,里面有提到Jackson的一些基本用法。最近遇到一个问题,就是需要把请求中的字符串进行一个trim,下面看一下怎么做。
http://unclechen.github.io/2017/12/24/JS%E5%9F%8B%E7%82%B9SDK%E6%8A%80%E6%9C%AF%E5%88%86%E6%9E%90/
一、背景上一篇博客分析了Android上的埋点SDK技术原理,这次我们看一下这几种方案在Web页面上的实践。在JS里面同样有代码埋点、全埋点、可视化埋点三种方案,如果对这几种方案的概念不了解可以看下上一篇博客。由于mixpanel-js和Sensors Analytics JavaScript SDK都开源了自己的SD
一、Play框架简介Play是一个Full-Stack的Web应用开发框架,使用它可以快速编写自己的Web应用,也可以使用它来编写RESTful API。与现在非常流行的Spring全家桶相比,Play略显小众,但它的设计**天生就是分布式、异步的,也得到许多开发者的认可,在实际生产环境中也有像Linkedin这样的大
一、背景相信看到这篇文章的人应该都用过Chrome插件吧,最近刚好有个这方面的需求,我就把Chrome插件的相关知识学习了一下,发现其实Chrome插件的开发和大前端Web开发的底子是一样的,无非就是runtime只限于Chrome浏览器,并且可以调用Chrome提供的一些chrome.* API来实现一些基于Chro
http://unclechen.github.io/2016/09/25/App%E5%8A%A8%E6%80%81%E9%85%8D%E7%BD%AE%E6%8E%A2%E8%AE%A8/
一、背景App开发中一个比较常见的问题就是动态化,有时我们会需要程序的某一个逻辑可以动态改变而不需要发版本让用户重新安装。例如,App中的某个WebView有一个url白名单,我们希望它可以动态改变。这是个常见的需求,现在无论是技术面上还是产品上大家都在讲一个动态化,所以一波接一波出了各种插件化,甚至是ReactNative、weex、微信小程序等等这些轮子。 但是在实际中需要考虑到很多的业务特点
前一篇博客中介绍了Android6.0运行时权限简介,最近遇到这么一个情况,就是一个App以前都是在SD卡根目录直接新建了一个XXX/image/目录,来保存图片缓存的,但是如果适配到Android6.0,我们就需要弹出对话框给用户,来申请WRITE_EXTERNAL_STORAGE权限,如果仅仅是缓存图片为了提高加载速度,对于一个小白用户来讲,好像并不是什么值得让他授权的理由。。。 下面记录一下
手机设备有哪几种定位方式GPS基于卫星发射的信号,可以推算出手机到每颗卫星的距离,根据卫星的位置,推测出手机的位置。 这是一张简单的GPS定位原理图,需要一点数学知识,先不讨论这个细节,需要的同学看这里。 现在卫星信号全球都覆盖了,手机一般都有GPS芯片,因此可以实现定位。GPS方式准确度是最高的,走卫星通道,不需要
一、Apk反编译工具及其使用方法1.原理学习反编译之前,建议先学习一下Apk打包的过程,明白打包完成后的Apk里面都有什么文件,各种文件都是怎么生成的。 这里有两篇AndroidWeekly中推荐过的好文章: 浅析 Android 打包流程 Android构建过程分析 Apk技术也有非常多的技术可以学习,主要都是围绕着如何减小体积,如何提高打包速度展开,这里先不多说了。下面是一张基本的Ap
最近在工作中遇到写一些API,这些API的请求参数非常多,嵌套也非常复杂,如果参数的校验代码全部都手动去实现,写起来真的非常痛苦。正好Spring轮子里面有一个Validation,这里记录一下怎么使用,以及怎么自定义它的返回结果。
一、背景相信看到这篇文章的人应该都用过Chrome插件吧,最近刚好有个这方面的需求,我就把Chrome插件的相关知识学习了一下,发现其实Chrome插件的开发和大前端Web开发的底子是一样的,无非就是runtime只限于Chrome浏览器,并且可以调用Chrome提供的一些chrome.* API来实现一些基于Chro
http://unclechen.github.io/2015/11/17/%E8%87%AA%E5%AE%9A%E4%B9%89Android%20Gradle%E6%8F%92%E4%BB%B6/
上一篇博客介绍到Gradle实践之自定义打包jar+Log开关自动关闭。可以自己定义打包的jar已经不错了,但是还是不够爽,怎么办?自己写一个Plugin!会用轮子,也要会造轮子是不是,我们经常使用到的com.android.library和com.android.application都是Google给我们提供的Gr
http://unclechen.github.io/2017/12/24/JS%E5%9F%8B%E7%82%B9%E6%8A%80%E6%9C%AF%E5%88%86%E6%9E%90/
一、背景上一篇博客分析了Android上的埋点SDK技术原理,这次我看看Web页面上的埋点。Web页面上的埋点主要通过JS完成,在JS里面同样有代码埋点、全埋点、可视化埋点三种方案,如果对这几种方案的概念不了解可以看下上一篇博客。由于mixpanel-js和Sensors Analytics JavaScript SDK都开源了自己的SDK,就以它们为例进行分析。
一、背景现在的App开发,或多或少都会用到Hybrid模式,到了WebView这边,经常会加载一些js文件(例如和WebView用来Native通信的bridge.js),而这些js文件不会经常发生变化,所以我们希望js在WebView里面加载一次之后,如果js没有发生变化,下次就不用再发起网络请求去加载,从而减少流量
一、概念埋点,是对Web网站、App进行数据采集的一种方法。通过埋点,可以收集用户在应用中的产生行为,进而用于分析和优化产品后续的体验,也可以为产品的运营提供数据支撑,其中常见的指标有PV、UV、页面时长和按钮的点击等。 采集行为数据时,通常需要在Web页面/App里面添加一些代码,当用户的行为达到某种条件时,就会向服务器上报用户的行为。其实添加这些代码的过程就可以叫做“埋点”,在很久以前就已经出
一、需求场景前面我写过一篇博客使用React.js开发Chrome插件,里面介绍了作为一个新手怎么去开发Chrome插件。这次我总结一下在开发Chrome插件中很容易遇到的一些需求,比如在网页中判断是否安装了某个Chrome插件,安装的版本是多少?或者在网页上点击右键菜单里面的某个按钮,然后执行Chrome插件的某个功能。这些需求本质上都实现了网页和Chrome之间的通信。
一、背景相信很多人都接触过“埋点”这个概念,无论是前端还是后端开发,我们都可以使用这门技术来生产出一些运营性质的原始数据(接口耗时、程序安装/启动、用户交互行为等等),然后分析它们得到一些抽象指标(例如留存率、转化率),进而决定产品运营或者代码优化的方向。现在业界有许多比较知名数据平台,比如Google Analytics、Facebook Pixel、Mixpanel、GrowingIO、诸葛I
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.